Norbert Federa
de4adeff0e
fix logon info processing
...
since there have been reports that certain windows versions send
zero values in the cbDomain field of the Logon Info Version 2
(TS_LOGON_INFO_VERSION_2) struct we allow zero values for cbUserName
and cbDomain in rdp_recv_logon_info_v1 and rdp_recv_logon_info_v2.
2016-03-04 00:45:26 +01:00
Norbert Federa
ef4b29e5b3
ConvertFromUnicode fixes and misc hardening
...
- Added missing ConvertFromUnicode checks
- If ConvertToUnicode allocates memory, guarantee the null termination
similar to ConvertFromUnicode's implementation
- Fixed some TestUnicodeConversion.c CTest return values
- Added some CTests for ConvertFromUnicode and ConvertToUnicode
- Misc code and protocol hardening fixes in the surrounding code regions
that have been touched
2016-03-03 16:56:19 +01:00
David FORT
f5ce5e72dd
Fix parsing of saveSessionInfo PDU
...
This should fix the case when no username is sent (issue #3186 ).
2016-03-03 11:45:12 +01:00
Armin Novak
7dcba9a663
Removed additional '\0' from TUNNEL_AUTH message.
2016-03-03 09:11:28 +01:00
Armin Novak
2e110c7f35
Fixed codec reset, now resetting resolution too.
...
H264 and others require the surface resolution to work properly.
This initializes the codecs and the resolution on reset.
2016-03-02 14:46:33 +01:00
Bernhard Miklautz
e02af8287e
Merge pull request #3160 from akallabeth/stream_fixes
...
Stream fixes
2016-03-01 16:44:19 +01:00
Armin Novak
e7814d5855
Fixed stream API for Stream_Copy.
2016-03-01 12:57:48 +01:00
Bernhard Miklautz
014f31db35
Merge pull request #3171 from akallabeth/crypto_simplification
...
Crypto simplification
2016-02-29 17:10:53 +01:00
Armin Novak
46fa7ec481
Fixed invalid stream copy length.
2016-02-29 12:51:54 +01:00
Armin Novak
b429d230cb
Refactored crypto *_New functions.
2016-02-29 09:00:02 +01:00
Armin Novak
92c15783dc
Updated RC4 API, fixed crashing bug.
2016-02-28 11:19:29 +01:00
Armin Novak
238ff3b315
Unified encryption functions.
2016-02-27 23:28:49 +01:00
Armin Novak
5805ba8e52
Removed crypto_nonce.
2016-02-27 22:40:43 +01:00
Armin Novak
1036f1e296
Fixed default visibility.
...
When nothing is declared, only export symbols defined
with WINPR_API or FREERDP_API defined.
Override this setting if BUILD_TESTING to allow tests
access to internal functions usually not exposed.
2016-02-26 19:44:14 +01:00
Martin Fleisz
4f22682ed2
Merge pull request #3151 from akallabeth/timezone_refactor
...
Timezone refactor
2016-02-26 09:57:35 +01:00
Hardening
4217262680
Merge pull request #3156 from akallabeth/ssl_wrapper_merge
...
Ssl wrapper merge
2016-02-26 09:52:43 +01:00
Armin Novak
7a253bae42
Replaced magic numbers with defines.
2016-02-26 09:27:53 +01:00
Armin Novak
e79eee2bb1
Fixed Stream API misuse.
2016-02-25 20:01:12 +01:00
Armin Novak
b61ab5ecb7
Fixed stream copy in update_message_SurfaceCommand
2016-02-25 19:37:20 +01:00
Bernhard Miklautz
8bdad1eb93
Merge pull request #3140 from hardening/printer_work
...
Misc changes
2016-02-25 16:57:34 +01:00
Armin Novak
fd415cd10a
Fixed missing semicolon.
2016-02-25 09:02:46 +01:00
Armin Novak
f997421098
Unified hmac functions.
2016-02-24 21:50:08 +01:00
Armin Novak
4ca6b9bf10
Unified random functions and remaining MD5.
2016-02-24 20:41:01 +01:00
Armin Novak
95058c64d1
Fixed argument checks and return values.
2016-02-24 20:16:33 +01:00
Armin Novak
ada2b16c50
Unified RC4 functions.
2016-02-24 17:04:03 +01:00
Armin Novak
06da644007
Unified md5 functions.
2016-02-24 16:46:25 +01:00
Armin Novak
0e4ea3943a
Unified sha1 functions.
2016-02-24 16:36:15 +01:00
Armin Novak
447ac23aee
Refactored timezone functions.
2016-02-24 09:28:30 +01:00
akallabeth
7c5fcc9ee2
Merge pull request #3149 from bmiklautz/feb22
...
Misc fixes
2016-02-23 20:23:52 +01:00
Bernhard Miklautz
738f55a6a8
Merge pull request #3119 from akallabeth/abort_event_reset
...
Resetting abortEvent only on connect and reconnect.
2016-02-23 17:14:08 +01:00
Armin Novak
d28cb6ac6a
Removed function call with invalid arguments.
2016-02-23 16:32:47 +01:00
Armin Novak
24c93e4de7
Resetting abortEvent only on connect and reconnect.
2016-02-23 16:32:47 +01:00
Bernhard Miklautz
be02849ece
tcp: set the timeout to 9s
...
Set the TCP_USER_TIMEOUT to 9s as suggested by @giox069.
See #3015 for details
2016-02-23 15:40:20 +01:00
volth
8b9c40248a
Increase TCP_USER_TIMEOUT to avoid disconnections.
...
TCP_USER_TIMEOUT value is too small, it is only 4 seconds.
That causes random disconnections reported in the bug report https://github.com/FreeRDP/FreeRDP/issues/2802
This patch should fix the bug report https://github.com/FreeRDP/FreeRDP/issues/2802
2016-02-23 15:40:20 +01:00
Bernhard Miklautz
e6f013eac7
fix spelling
...
replace occured with occurred
Fixes #3142
2016-02-22 17:01:43 +01:00
David FORT
1b2b1c4ac1
Add support for saveSessionInfo PDU
...
This patch adds some callbacks so that the client can have access to the informations
stored in this packet. Server-side implementation is also there, so that a server
can send these informations to the client.
2016-02-18 14:19:36 +01:00
David FORT
a53cb8190b
Added missing checks
2016-02-16 22:24:51 +01:00
Martin Fleisz
56a0c4c336
Merge pull request #3097 from akallabeth/android_api_upgrade_v4
...
Android api upgrade and restructuring
2016-02-04 16:20:59 +01:00
Armin Novak
1b3ac98582
rdp_print_errinfo now uses INFO log level.
2016-02-04 11:41:54 +01:00
Armin Novak
cdadb58f93
Function freerdp_set_error_info fix
...
The public function did not wrap rdp_set_error_info.
2016-02-04 11:40:42 +01:00
Armin Novak
ad36a5c10f
Disconnect log message now uses debug level.
2016-02-04 11:39:57 +01:00
Armin Novak
22f704c0a8
Fixed _socket error check.
2016-02-03 11:45:22 +01:00
Vic Lee
73f895fd55
gcc: assigned string must not be freed.
2016-02-03 13:34:58 +08:00
Armin Novak
cd05ea7452
Fixed error checks for command line parser.
2016-02-01 15:18:34 +01:00
Bernhard Miklautz
8ec39039e5
Merge pull request #3076 from akallabeth/remove_fixed_size_heap_strings
...
Removed fixed size strings.
2016-02-01 13:02:38 +01:00
MartinHaimberger
e83f97b64a
Merge pull request #3093 from hardening/last_write_checks
...
Check more Stream_EnsureCapacity results when writing capabilities
2016-01-28 15:26:04 +01:00
MartinHaimberger
83b706c4be
Merge pull request #3092 from akallabeth/get_build_config
...
Added get_build_config functions.
2016-01-28 15:23:24 +01:00
David FORT
b6dd7bbb88
Check more Stream_EnsureCapacity results when writing capabilities
2016-01-28 15:12:26 +01:00
Hardening
a2aa56ee28
Merge pull request #3067 from akallabeth/reset_abort_event
...
Resetting abort event on freerdp_connect.
2016-01-28 14:28:51 +01:00
Armin Novak
035f127081
Added get_build_config functions.
2016-01-28 14:26:50 +01:00
Hardening
d458bc2e06
Merge pull request #3073 from davewheel/cert_key_in_memory
...
Allow to specify the raw content of crypto materials
2016-01-27 10:50:38 +01:00
Hardening
7af1ec85f0
Merge pull request #3083 from akallabeth/capability_set_fix
...
Fix #3081 , set client string encoding.
2016-01-27 10:45:54 +01:00
Armin Novak
974d2ef433
Fix #3081 , client string encoding.
2016-01-27 10:34:01 +01:00
Martin Fleisz
a9e4ba0118
Merge pull request #3069 from davewheel/4upstream-1
...
Improve monitor support
2016-01-27 10:18:30 +01:00
David FORT
708d0cb3c0
Check server and client capabilities
...
Most of the capabilities are sent by both the client and the server. But for some
the specs specify that they are only supposed to be only send by the server or the client.
This patch ensures this. Without this patch a malicious client can change server settings
and a malicious server can modify client settings.
2016-01-26 16:14:48 +01:00
Armin Novak
106479d6f2
Fixed clientNameLen initialization.
2016-01-26 09:34:22 +01:00
David FORT
137825ed9f
Stream_EnsureCapacity return value aren't checked in capabilities_write
2016-01-25 19:11:35 +01:00
Giovanni Panozzo
c5a4ce7893
Improve error logging after calling some BIO_ functions
2016-01-23 11:39:38 +01:00
Armin Novak
73ec3d6aca
Removed fixed size strings.
2016-01-21 15:45:21 +01:00
davewheel
d5b8585a39
Allow to specify the raw content of crypto materials
...
Sometime it's possible that your server application doesn't have access to files
(when running in a very restricted environment for example). This patch allows
to ship the private key and certificate as a string.
Sponsored by: Wheel Systems (http://www.wheelsystems.com )
2016-01-21 11:27:06 +01:00
davewheel
121a234866
Add better handling of monitors
...
This patch makes FreeRDP announce the support for monitor layout PDU. It also
adds support for servers to announce the monitors layout.
2016-01-20 16:56:04 +01:00
davewheel
ca9e908f3c
Fix a security issue in monitors packet handling
...
The number of announced monitors was not checked, so if a client was announcing
a big number, it could override other fields in settings and more...
2016-01-20 16:56:04 +01:00
Armin Novak
5542fef75d
Resetting abort event on freerdp_connect.
2016-01-18 10:08:12 +01:00
Roland Kaufmann
600d3c5ccb
Add option to disable pointer button mapping
...
In case the old behaviour of not reverse-mapping the mouse buttons is
desirable, a command-line option is added to disable the mapping. This
option is made experimental for the time being.
The default is to do the reverse mapping, as this is the intuitive
behaviour (the mouse then works as it would on the console).
2015-12-15 17:42:57 +01:00
Binyamin Sagal
23fea1615f
Fix horizontal scrolling direction and capability detection
2015-12-14 21:48:31 +02:00
Armin Novak
a5db7117c8
Implemented horizontal wheel support.
...
Horizontal mouse wheel input capabilities are now checked
and if available mouse buttons 6 and 7 are mapped to the
horizontal wheel for the X11 client.
2015-12-14 18:29:23 +01:00
Hardening
57fe581b16
Merge pull request #2824 from bjcollins/nla_auth_exit_code
...
Return FREERDP_ERROR_AUTHENTICATION_FAILED on an authentication failure
2015-12-08 22:46:29 +01:00
Nito Martinez
2d5c78849e
Fix formatting: else if in its own line and no brackets for single statements
2015-11-26 09:50:03 +01:00
Nito Martinez
89d8a68f4a
Disable setting socket options for preexisting socket like: keepalive and tcp_nodelay, these should be set extenally if needed. Do not close the socket if the clientaddress could not be set
2015-11-25 08:36:49 +01:00
Nito Martinez
428cbd802d
Fixes #2982 . The idea is to be able to create the socket externally and pass that socket FD to FreeRDP so that it can be used there.
...
The idea suggested is to use the following interface:
settings->ServerHostname = "|"
settings->ServerPort = SocketFD
2015-11-20 02:44:35 +01:00
Bernhard Miklautz
d73c4898c1
Add build-config.h
...
build-config.h should contain configure/compile time settings that are
relevant for projects that use FreeRDP.
For example the compiled in plugin search paths.
2015-11-09 15:54:22 +01:00
LookBehind
95fe9ecfab
Fix rdp_recv_logon_error_info
...
As https://msdn.microsoft.com/en-us/library/cc240641.aspx says - first is going errorNotificationType then errorNotificationData.
2015-10-20 18:05:09 +04:00
Marc-André Moreau
4ab373aced
xfreerdp: fix multiple egfx context support in X11 GFX
2015-10-13 14:49:30 -04:00
Marc-André Moreau
863939fd58
Merge pull request #2919 from realjiangms/fix_allow_empty_password
...
Sec/NLA: Support passwordless (blank password) login with NLA.
2015-10-13 10:40:28 -04:00
zihao.jiang
a7f4685c09
Sec/NLA: Support passwordless (blank password) login with NLA.
...
It was supported in freerdp 1.0.2 but not supported in lastest master.
We should take empty password if it is explicitly specified with /v option.
If a password is not specified, we could first try SAM file. If the user entry does not exist, prompt for password.
2015-10-10 01:48:41 +08:00
Sriram Raghunathan
1c1e215ed9
Remove warning: HANDLE event variable unused
2015-10-05 22:42:59 +05:30
Samuel Sieb
812e14af04
Don't fail the redirect if padding wasn't sent before disconnecting
2015-09-24 10:37:21 -07:00
Hardening
62da9d28c6
Merge pull request #2899 from awakecoding/master
...
Standard RDP security server redirection fix
2015-09-21 23:42:32 +02:00
Marc-André Moreau
a91506161d
libfreerdp-core: fix redirection with standard RDP security
2015-09-21 15:36:19 -04:00
Marc-André Moreau
d1cb3410de
Merge pull request #2896 from awakecoding/master
...
Win32 Gateway Fix, iOS TCP connection infinite loop fix
2015-09-18 11:57:01 -04:00
Marc-André Moreau
9c35b73fb6
libfreerdp-core: fix gateway connectivity on Windows
2015-09-17 14:32:40 -04:00
Martin Fleisz
affe82cae8
Merge pull request #2890 from realjiangms/shadow_fix_memory_leak
...
server: Fix several memory leak found while running valgrind on freerdp-shadow
2015-09-17 10:33:43 +02:00
zihao.jiang
f21749ac07
server: Fix several memory leak while running valgrind on freerdp-shadow
2015-09-17 01:02:22 +08:00
Marc-André Moreau
48c7a8dc1d
Merge pull request #2889 from dvincent-devolutions/gateway
...
Fix RDP8 gateway disconnections
2015-09-16 10:41:07 -04:00
Denis Vincent
3ea0fe0c01
Small corrections to BIO implementation.
2015-09-16 09:54:03 -04:00
bjcollins
ee3b39d70f
Remove unnecessary variable to keep track of nlaFailure, instead just set the NLA authentication error in the callback
...
where it is detected.
2015-09-15 14:17:13 -05:00
bjcollins
be47c6f782
Remove unused functions from initial code to handle NLA authentication failures.
2015-09-15 14:07:14 -05:00
bjcollins
7fbc7e45a7
Clean up NLA authentication failure handling code
...
1. Make use of freerdp_set_last_error to set authentication failure without the helper functions
2. Rename ssl callback function
3. Break out AuthenticationOnly exit handling from bad connect handling
2015-09-15 14:07:14 -05:00
bjcollins
32a1406dc4
Return FREERDP_ERROR_AUTHENTICATION_FAILED on an authentication failure
...
when using NLA with xfreerdp.
2015-09-15 14:07:14 -05:00
Marc-André Moreau
3f2915eb78
libfreerdp-core: alternative RDG BIO fix
2015-09-15 13:03:11 -04:00
Marc-André Moreau
12ce635b34
libfreerdp-core: fix code style
2015-09-15 10:37:57 -04:00
MartinHaimberger
2b2af6c9ea
Merge pull request #2886 from clangm/master
...
Fix Network Characteristics Autodetect [RDPBCGR 2.2.14]
2015-09-15 15:16:37 +02:00
Denis Vincent
6d55635ed0
libfreerdp-core: Gateway RDP8 BIO correction. Fixes connection losses.
2015-09-15 09:03:39 -04:00
MartinHaimberger
db2ce49a98
Merge pull request #2763 from akallabeth/nla_null_auth
...
Fixed server and client NLA state machine for NULL identity.
2015-09-15 14:53:55 +02:00
clangm
ac089f8a3f
Removed if statement that was causing network characteristics autodetect to not work
2015-09-11 15:01:31 -06:00
MartinHaimberger
d971116457
Merge pull request #2765 from akallabeth/connect_abort
...
Connect abort and unified TCP connect
2015-09-07 10:05:24 +02:00
Armin Novak
4d77f2a4c8
Fixed CreateProcess argument initialisation.
2015-09-05 18:55:08 +02:00
Armin Novak
91d318ba7b
Enable RFX for test connection, now required by sample server.
2015-09-05 17:00:27 +02:00
Armin Novak
f7a11a0ed8
Resetting abortEvent on disconnect to avoid race during connect.
2015-09-05 16:26:46 +02:00
Armin Novak
01496f474f
Fixed error handling for rdp_client_connect fail.
2015-09-05 16:26:29 +02:00