Armin Novak
a97bf21109
Fixed broken DEBUG_RDP log message.
2018-11-21 09:55:38 +01:00
Armin Novak
445a5a42c5
Fixed CVE-2018-8786
...
Thanks to Eyal Itkin from Check Point Software Technologies.
2018-11-20 11:08:31 +01:00
Bernhard Miklautz
ef0c7e81a7
Merge pull request #4953 from akallabeth/region_signed
...
signed gdi regions to adjust negative coordinates
2018-11-20 10:07:30 +00:00
Armin Novak
666ef4ab34
Fix #4864 : Register pointer cache after PostConnect is called
...
With #4950 client side pointer implementation was made optional.
This addresses an issue that each client had to call
pointer_cache_register_callbacks on its own.
2018-11-20 09:49:39 +01:00
akallabeth
b6eca4fc54
signed gdi regions to adjust negative coordinates
2018-11-19 12:52:43 +01:00
Bernhard Miklautz
b7354ce438
Merge pull request #4940 from akallabeth/check_window_order_support
...
Added checks for order type window support.
2018-11-19 09:15:14 +00:00
Armin Novak
7839091f8b
Skip redirection resolve test if we're connecting via gateway.
2018-11-16 15:48:10 +01:00
Armin Novak
870b7025b7
Improved error mapping and tightened checks in rdg_process_packet
2018-11-16 15:41:19 +01:00
Bernhard Miklautz
fe1a79759e
Merge pull request #5018 from hardening/windowpos
...
cmdline: add window-position argument to set initial window position
2018-11-15 16:46:57 +00:00
Bernhard Miklautz
b8cf70b13a
Merge pull request #4964 from akallabeth/rdg_fixes
...
Rdg/RPC and gateway fixes
2018-11-15 13:48:22 +00:00
David Fort
e118d14f6a
cmdline: add window-position argument to set initial window position
...
This is useful if you want the window to be at a given position. The patch also mutualizes
the parsing of <xpos>x<ypos> or <width>x<height> arguments.
2018-11-15 14:40:03 +01:00
Armin Novak
4d7bece6ea
Fixed order mask
2018-11-15 09:52:54 +01:00
Armin Novak
dd80a09781
Allow window orders with AllowUnanouncedOrdersFromServer
2018-11-15 09:52:54 +01:00
Armin Novak
c0b13cf43f
Added checks for order type window support.
2018-11-15 09:52:50 +01:00
Bernhard Miklautz
d915491717
Merge pull request #5012 from akallabeth/rail_app_icons
...
Rail app icons
2018-11-15 08:50:56 +00:00
Armin Novak
a2cd934184
Fixed windows build warnings.
2018-11-15 09:01:53 +01:00
akallabeth
268a2c0cf8
Merge pull request #4979 from hardening/CAL
...
license: support CAL license
2018-11-14 13:45:31 +01:00
Armin Novak
98a537d05d
Better description and formatting for update_read_icon_info
2018-11-14 11:57:57 +01:00
Armin Novak
7e12955c55
Made all internal functions static.
2018-11-14 11:57:57 +01:00
ilammy
7a2b6e1301
libfreerdp-core: fix reading TS_ICON_INFO
...
The spec says that CbColorTable field is present when Bpp is 1, 4, 8.
Actually, bpp == 2 is not supported by TS_ICON_INFO according to the
spec (though, DIB definitely supports 16-color images).
MS-RDPERP 2.2.1.2.3 Icon Info (TS_ICON_INFO)
CbColorTable (2 bytes):
This field is ONLY present if the bits per pixel (Bpp)
value is 1, 4, or 8.
Omitting 8-bit value breaks 256-color icons which are incorrectly
read with color and alpha data mixed up.
2018-11-14 10:53:45 +01:00
Armin Novak
138eb13fea
Updated RDP_VERSION definitions.
2018-11-14 10:14:48 +01:00
Armin Novak
ecac998340
Fixed rdg bio cleanup.
...
When attaching the RDG BIO to the TLS BIO also transfer ownership.
2018-11-13 12:22:09 +01:00
Armin Novak
3c35a098f5
Fixed direct rdg front bio access.
2018-11-13 11:24:04 +01:00
Armin Novak
e070bbea8d
Fixed leaks in rdg_send_channel_create
2018-11-13 11:22:37 +01:00
Armin Novak
342ff8cf0b
Fixed broken server name packet size
2018-11-13 11:22:37 +01:00
Armin Novak
15a41586a8
Don't read content length in VIRTUAL_CONNECTION_STATE_OUT_CHANNEL_WAIT
2018-11-13 11:22:37 +01:00
Armin Novak
90d2e42600
Fixed ntlm_authenticate, split return from continue flag.
2018-11-13 11:22:37 +01:00
Armin Novak
4e0b4d7096
Fixed static INT_MAX checks, replaced with assert.
2018-11-13 11:22:37 +01:00
Armin Novak
398a33af63
Fixed all warnings in rdg module
...
Fix all missing range checks and warnings.
2018-11-13 11:22:37 +01:00
Armin Novak
9078b0deb9
Fixed extern declaration of rpc_bind p_uuid_t variables.
2018-11-13 11:22:37 +01:00
Armin Novak
b4fc0c75ce
Made rdpRdp opaque
2018-11-13 11:22:37 +01:00
David Fort
b6e6575bf6
license: support CAL license
...
This patch simplifies the licensing code mutualizing encryption / decryption
routines. It also adds the support for client_info packet that allows to send a
previously saved CAL file.
2018-11-13 09:42:19 +01:00
Martin Fleisz
097ac0ee13
Merge pull request #4997 from akallabeth/use_bio_free_all
...
Replaced BIO_free with BIO_free_all
2018-11-12 13:55:36 +01:00
Martin Fleisz
9400bdccdb
Merge pull request #4996 from bmiklautz/tls_security_level
...
new [crypto/tls]: add support to set tls security level
2018-11-08 15:33:40 +01:00
Armin Novak
5f4843191b
Replaced BIO_free with BIO_free_all
...
There is no point in using BIO_free with a custom recursion
to free up stacked BIOs if there is already BIO_free_all.
Using it consistently avoids memory leaks due to stacked BIOs
not being recursively freed.
2018-11-08 12:09:49 +01:00
Bernhard Miklautz
1222e7060b
new [crypto/tls]: add support to set tls security level
...
The newly introduced option /tls-seclevel can be used to set the tls
security level on systems with openssl >= 1.1.0 or libressl.
As default level 1 is used as higher levels might prohibit connections
to older systems.
2018-11-08 11:13:15 +01:00
Armin Novak
5eca5ebde8
Fixed #4993 : Allow uninitialized bio socket in transport_bio_simple_uninit
...
When the TLS connection is aborted early (certificate issues, ...)
the bio simple socket might not have been initialized.
Do not access the NULL pointer on cleanup.
2018-11-07 17:02:07 +01:00
Pascal J. Bourguignon
6f2caef778
Fix Issue #4983 : Increased size of buffer to encrypt hash with kerberos.
2018-11-06 11:20:02 +01:00
Bernhard Miklautz
aecc77cd77
Merge pull request #4969 from akallabeth/covscan_fix
...
Covscan fixes
2018-11-05 10:44:01 +00:00
David Fort
1a50a48332
fix uninitialised variable
...
Otherwise we can run in troubles when sending logon_info_v2 packets
2018-11-01 11:07:36 +01:00
David Fort
548025bcc3
nego: add new flags
...
Reading the new spec there's some new flags
2018-10-31 10:43:59 +01:00
Martin Fleisz
7b0f4f5dc4
Merge pull request #4907 from akallabeth/transport_write_leak_fix
...
Transport write leak fix
2018-10-29 14:54:55 +01:00
Armin Novak
423d54d752
Fixed signedness casts.
2018-10-25 14:08:20 +02:00
Armin Novak
6339c43c80
Fixed sockfd/socketBio resource leak.
2018-10-25 13:41:47 +02:00
Armin Novak
42014e80d0
Fixed sockfd/socketBio resource leak.
2018-10-25 13:38:31 +02:00
Armin Novak
f269a0ce5b
Fixed sockfd/socketBio resource leak.
2018-10-25 13:19:45 +02:00
Armin Novak
847ee233f4
Fixed resource leak in rpc_ntlm_http_request
2018-10-25 12:49:42 +02:00
Armin Novak
987ca5ec6a
Fixed another bunch of warnings.
2018-10-24 14:36:12 +02:00
Armin Novak
6ccaafe2d9
Fixed default return value for fastpath_send_multiple_input_pdu
2018-10-23 12:33:13 +02:00
akallabeth
d3c1db1746
Merge pull request #4947 from akallabeth/http_gw_fix
...
Fixed http gateway body length read.
2018-10-23 12:03:03 +02:00
Armin Novak
900abb61f7
Fixed memory leak in update_recv_surfcmd_surface_bits
2018-10-22 14:41:59 +02:00
Armin Novak
b9933e7af4
Read byte by byte, the alignment may otherwise be broken.
2018-10-19 12:52:14 +02:00
Armin Novak
5a747b118d
Read http request in 4byte chunks until '\r\n\r\n' is found
...
Avoid reading too much data in a single call to BIO_read as some
implementations may return a lot more data than is part of the response.
2018-10-19 12:16:04 +02:00
Emmanuel Ledoux
33c7f6590a
fixed partial reads
2018-10-19 11:56:56 +02:00
Armin Novak
d05684a50a
Properly parse ContentType to find length.
2018-10-19 11:47:11 +02:00
Armin Novak
7e397d0f1c
Fixed http gateway body length read.
2018-10-19 09:31:55 +02:00
akallabeth
6f14018a22
Merge pull request #4945 from mmattes/fix/transferEncoding
...
transferEncoding can be NULL, correct if happens in line 348
2018-10-18 15:37:24 +02:00
Norbert Federa
850d2dbda9
Merge pull request #4942 from akallabeth/rail_fixes_2.0
...
Fix ORDER_TYPE_WINDOW reading
2018-10-18 14:11:18 +02:00
Norbert Federa
5ef243f91f
Merge pull request #4941 from nfedera/nf-remove-stale-valgrind-macro
...
gateway/rpc: remove stale valgrind macro
2018-10-18 14:08:23 +02:00
Markus Mattes
6d5b88cda6
transferEncoding can be NULL, verification happens in line 348
2018-10-18 13:59:49 +02:00
Armin Novak
5b70142ec4
Fixed read_altsec_order ORDER_TYPE_WINDOW
2018-10-18 12:34:10 +02:00
Armin Novak
8bdb5d771a
Fixed order to string format string.
2018-10-18 12:33:06 +02:00
Norbert Federa
d201deede8
gateway/rpc: remove stale valgrind macro
2018-10-18 11:45:18 +02:00
Armin Novak
2e3832af94
Fixed TSG stream alignment (4 or 8)
2018-10-18 10:41:03 +02:00
Armin Novak
dc197d4dd1
Fixed tsg abort condition.
2018-10-18 10:15:51 +02:00
Armin Novak
88d310ff2c
Fixed compiler warnings (casts, ...)
2018-10-18 09:09:30 +02:00
Martin Fleisz
e46d1d95ff
Merge pull request #4926 from akallabeth/primary_order_checks
...
Order data validation and correction
2018-10-17 16:02:28 +02:00
Armin Novak
991f051a63
Fixed stream release for transport_write
2018-10-17 14:55:55 +02:00
Armin Novak
aefb7728f6
Removed debug log entries, simplified order support check.
2018-10-17 14:16:16 +02:00
Armin Novak
f91590ecbf
Fixed bugs detected during scanbuild run
2018-10-17 13:19:33 +02:00
akallabeth
8fe3ac5d26
Merge pull request #4902 from akallabeth/gw_refactor_3
...
Gateway refactoring
2018-10-17 12:23:10 +02:00
Armin Novak
7b860ce96a
Add command line option /relax-order-checks
2018-10-17 12:16:58 +02:00
Armin Novak
4d124cf5d1
Fixed order requirements.
2018-10-17 10:09:27 +02:00
Armin Novak
cab2e28576
Fixed missing value check
2018-10-16 17:09:29 +02:00
Armin Novak
c51ca89d9b
Fixed glyph cache
2018-10-16 16:10:17 +02:00
Armin Novak
5ea4a7d3b0
Proper order checks.
2018-10-16 15:56:17 +02:00
Armin Novak
16d553a75f
Check if incoming secondary alternate orders have been activated.
2018-10-16 13:59:37 +02:00
Armin Novak
711da861e8
Check if incoming secondary orders have been activated.
2018-10-16 13:48:43 +02:00
Armin Novak
88bd262134
Send brush support level from settings.
2018-10-16 13:48:29 +02:00
Armin Novak
c99434691e
For every order check if it is activated in settings before processing.
2018-10-16 13:13:01 +02:00
Armin Novak
fb87f6d0bd
Added a warning that the server sent an unsupported order
2018-10-16 12:46:44 +02:00
Armin Novak
e4b24aa31e
Fixed arguments to *adust
2018-10-16 12:36:08 +02:00
Armin Novak
14321a2d52
Adjust rectangles where appropriate.
2018-10-15 16:34:44 +02:00
Armin Novak
e5d60370b4
Fixed MultiOpaqueRect
...
Sanitize rectangle boundaries, the coordinates of old servers are often out of bound.
2018-10-15 15:27:17 +02:00
Armin Novak
479233cedc
Fix bounding rectangle of OpaqueRect
...
This order has often negative coordinates, sanitize before passing on.
2018-10-15 15:23:04 +02:00
Armin Novak
ca3fb26230
Deactivated unimplemented orders.
2018-10-15 15:22:50 +02:00
Armin Novak
63823f54ee
Removed checks for LineTo, that is handled by the drawing routines
2018-10-15 14:36:03 +02:00
Armin Novak
f88ed950d3
Fixed various issues with primary orders.
2018-10-15 14:30:58 +02:00
Armin Novak
83fba667c1
Fixed logging.
2018-10-15 13:56:19 +02:00
Armin Novak
8cfffcc027
Use dynamic logging and fix compiler warnings.
2018-10-15 13:20:47 +02:00
Armin Novak
ed02832a81
Added altsec return value checks.
2018-10-15 13:15:57 +02:00
Armin Novak
09bef3bab2
Unified logging.
2018-10-15 13:10:48 +02:00
Armin Novak
aecda5280a
Added plausibility checks for order input coordinates.
2018-10-15 10:34:47 +02:00
Armin Novak
766a66a7c2
Fixed stream get position.
2018-10-09 14:24:58 +02:00
Armin Novak
166bdf018c
Fixed return value of rpc_channel_tls_connect
2018-10-09 14:24:39 +02:00
Armin Novak
65bfb67f7c
Fixed rpc_client_write_call resource cleanup.
2018-10-09 14:19:05 +02:00
Armin Novak
8c92f3436d
Fixed argument name for ntlm_client_encrypt
2018-10-09 14:16:27 +02:00
byteboon
1d99d2d5fa
Regression: added back kerberos signature fix that was lost in a recent refactor #4801
2018-10-05 09:43:00 -07:00
David Fort
2e1bf90bd9
Merge pull request #4885 from akallabeth/autoreconnect_handle_window_events
...
Fixed #3423 : Process xevents when in reconnect mode.
2018-10-03 09:42:16 +02:00
Armin Novak
3b7f522eb7
Release stream in transport_write in all error cases.
2018-10-02 10:31:23 +02:00
Armin Novak
fc9ff6d2fc
Made gateway NTLM self contained.
2018-09-28 12:29:29 +02:00
Armin Novak
99eb9f7ec9
Refactored and simplified RPC signature functions.
2018-09-28 12:08:27 +02:00
Armin Novak
9516c251c7
Made TSG struct opaque
2018-09-28 12:00:45 +02:00
Armin Novak
7ab1251a67
Refactored rpc_client and resolve gateway only once.
2018-09-27 16:42:27 +02:00
Armin Novak
f5f155b057
Refactored RpcClient functions
2018-09-27 16:26:46 +02:00
Armin Novak
47ba37fbcb
Unified dns resolving of host
2018-09-27 16:08:28 +02:00
Armin Novak
8a677d6cf2
Refactored rdg channel structs.
2018-09-27 16:05:14 +02:00
Armin Novak
d748adbf14
Refactored gateway ncacn HTTP to be self contained.
2018-09-27 15:19:41 +02:00
Armin Novak
a5fdf9e006
Refactored gateway HTTP to be self contained.
2018-09-27 15:04:41 +02:00
Martin Fleisz
5339efd6e4
Merge pull request #4882 from akallabeth/no_proxy_cidr
...
Fixed #4878 : Added cidr support for proxy exception check.
2018-09-26 09:20:54 +02:00
akallabeth
0b8a66188c
Merge pull request #4865 from mmattes/feature/floatbar
...
Feature/floatbar for X11
2018-09-25 16:34:20 +02:00
Armin Novak
941213f504
Fixed domain and regex match.
2018-09-24 12:24:15 +02:00
Armin Novak
3a2bfa183f
Fixed #4878 : Added cidr support for proxy exception check.
2018-09-24 11:51:40 +02:00
David Fort
040d14b673
Merge pull request #4869 from akallabeth/clear_fix
...
Fix #4868 : Separate codec reset from initial setup
2018-09-24 09:46:33 +02:00
Martin Fleisz
2096c1108e
Merge pull request #4872 from akallabeth/sw_gdi_default
...
Fix #4851 : Software GDI is now default
2018-09-21 13:02:39 +02:00
akallabeth
30601608e4
Merge pull request #4855 from r-barnett/fix-logoff-exit-code
...
Map a particular disconnect situation triggered by a user logging off…
2018-09-20 12:07:36 +02:00
Armin Novak
dfb1049653
Fix #4851 : Software GDI is now default
2018-09-20 10:44:03 +02:00
rbarnett
5d3e76bd80
Replace cryptic names; move the disconnect ultimatum reasons enum into public API and rename; remove setter
2018-09-19 09:36:39 -05:00
Tobias
a4df4f7bbf
Do not prompt if blank password was provided
2018-09-19 15:36:24 +02:00
Armin Novak
13e59b5d6a
Fix #4868 : Allow empty bands data.
2018-09-19 14:18:29 +02:00
rbarnett
8458266183
Store the disconnect provider ulimatum reason in a new field in struct rdp_context and move the test for a logoff reason to xf_client.c
2018-09-18 15:31:10 -05:00
Markus Mattes
21e4804a7f
implemented floatbar for x11
2018-09-18 21:25:51 +02:00
Martin Fleisz
0b7b9c0dc4
Merge pull request #4842 from akallabeth/smartcard_rdp_logon
...
Added /smartcard-logon option to set flag. (Stripped version of #4837…
2018-09-17 09:08:47 +02:00
rbarnett
5db0b57fcd
Map a particular disconnect situation triggered by a user logging off to a user logoff code.
2018-09-14 09:54:35 -05:00
Armin Novak
cf319001f9
Fixed out of bound access.
2018-09-05 16:34:49 +02:00
Armin Novak
0de43c8b85
Added /smartcard-logon option to set flag. (Stripped version of #4837 by @informatimago)
2018-09-04 15:50:03 +02:00
Armin Novak
54f3a388da
Fixed #4835 : BeginPaint callback now optional.
2018-09-04 10:40:17 +02:00
Armin Novak
fad20be6e6
Fixed missing includes.
2018-08-27 14:34:42 +02:00
Armin Novak
62c1696d4c
Removed use of unchecked sprintf
2018-08-27 14:34:42 +02:00
Armin Novak
114abad767
Removed use of strcpy.
2018-08-27 14:34:09 +02:00
Armin Novak
33be80cb41
Removed unused variables.
2018-08-24 13:40:36 +02:00
Armin Novak
a3819f65e8
Fixed unused variable warnings.
2018-08-24 13:40:36 +02:00
Martin Fleisz
0fb19d04be
Merge pull request #4810 from akallabeth/no_proxy_support
...
No proxy support
2018-08-24 11:41:58 +02:00
Martin Fleisz
f9e52c1850
Merge pull request #4815 from akallabeth/async_transport_remove
...
Removed +async-transport options
2018-08-24 09:48:51 +02:00
Armin Novak
b5df39756d
Added option to ignore proxy env.
2018-08-23 17:02:43 +02:00
Armin Novak
4bea9934cf
Added patch from #4697
2018-08-23 17:02:43 +02:00
Martin Fleisz
3381ca46e6
Merge pull request #4787 from akallabeth/redirect_fqdn_fix
...
Redirect fqdn fix
2018-08-23 16:07:48 +02:00
Ondrej Holy
47595a857f
core/transport: Fix leak found by covscan
...
0 is valid return value from socket().
leaked_handle: Handle variable "sockfd" going out of scope leaks the handle.
2018-08-22 14:34:02 +02:00
Ondrej Holy
1a413b5b4e
core/tcp: Prevent buffer overflow found by covscan
...
buffer_size_warning: Calling strncpy with a maximum size argument of 108 bytes on destination array "addr.sun_path" of size 108 bytes might leave the destination string unterminated.
2018-08-22 14:34:02 +02:00
Ondrej Holy
26bc52f79c
core/tcp: Format code by astyle
...
Run ./scripts/format_code.sh before the following changes.
2018-08-22 14:34:02 +02:00
Ondrej Holy
7e4fa67026
core/proxy: Fix leak found by covscan
...
leaked_storage: Variable "s" going out of scope leaks the storage it points to.
2018-08-22 14:34:02 +02:00
Ondrej Holy
2417a6a16c
core/nla: Fix leak found by covscan
...
leaked_storage: Variable "s" going out of scope leaks the storage it points to.
2018-08-22 14:34:02 +02:00
Ondrej Holy
6e0f05cbdb
core/nego: Fix leak found by covscan
...
leaked_storage: Variable "wszPCB" going out of scope leaks the storage it points to.
2018-08-22 14:34:02 +02:00
Ondrej Holy
8f8d91e361
core/listener: Prevent buffer overflow found by covscan
...
buffer_size_warning: Calling strncpy with a maximum size argument of 108 bytes on destination array "addr.sun_path" of size 108 bytes might leave the destination string unterminated.
2018-08-22 14:34:02 +02:00
Ondrej Holy
23c3c188c9
core/info: Silence false positive warnings from covscan
...
Change the code a bit to silence false positive warnings from covscan.
pass_freed_arg: Passing freed pointer "wString" as an argument to "Stream_Write".
pass_freed_arg: Passing freed pointer "wString" as an argument to "Stream_Write".
2018-08-22 14:34:02 +02:00
Ondrej Holy
4a7bb18428
core/info: Fix leak found by covscan
...
leaked_storage: Variable "wString" going out of scope leaks the storage it points to.
2018-08-22 14:34:02 +02:00
Ondrej Holy
83e966d9e2
core/gateway/rpc: Fix leak found by covscan
...
0 is valid return value from socket().
leaked_storage: Variable "auth_3_pdu" going out of scope leaks the storage it points to.
leaked_storage: Variable "response" going out of scope leaks the storage it points to.
leaked_handle: Handle variable "sockfd" going out of scope leaks the handle.
2018-08-22 14:34:02 +02:00
Ondrej Holy
6de583e137
core/gateway/rpc: Format code by astyle
...
Run ./scripts/format_code.sh before the following changes.
2018-08-22 14:34:02 +02:00
Ondrej Holy
409e192334
core/gateway/rdg: Fix leak found by covscan
...
leaked_storage: Variable "request" going out of scope leaks the storage it points to.
leaked_handle: Handle variable "sockfd" going out of scope leaks the handle.
leaked_handle: Handle variable "sockfd" going out of scope leaks the handle.
2018-08-22 14:34:02 +02:00
Armin Novak
c3a26b0d6a
Removed +async-transport options
...
The async transport option is broken by design.
If used the main loop is called from the transport thread and the
main thread of the application.
Unless the transport layer is refactored to just work on queues
(input and output) this option will never work, therefore remove it.
2018-08-22 13:56:37 +02:00