Commit Graph

2249 Commits

Author SHA1 Message Date
Armin Novak
c24da9e856 Fixed freerdp_settings_new error cleanup. 2020-01-07 10:49:17 +01:00
Norbert Federa
a4988f5469 transport: check if layer was set to closed
There are several code paths and error conditions where
transport->layer is correctly set to TRANSPORT_LAYER_CLOSED but
the required code for checking that state was missing.

E.g. write errors in the rdg code resulted in marking the transport
layer as closed but the transport code would indefinitely continue
to read from the receiving socket.
2019-12-27 12:37:03 +01:00
Armin Novak
6482a638f4 Increased client build number
According to [MS-RDPESC] 1.7 Versioning and Capability Negotiation
the client build is used to determine feature / behaviour.
Announce something more modern than Windows XP SP3.

Signed-off-by: Armin Novak <armin.novak@thincast.com>
2019-12-18 12:22:18 +01:00
Ondrej Holy
0531624826 Tell the server that smartcard is redirected
There were server-side changes on Windows 2012 and newer regarding
smartcards, namely the Smart Card Service start and stop behavior:
https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-r2-and-2012/hh849637(v%3Dws.11)#smart-card-service-start-and-stop-behavior

Some people see "No valid certificates were found on this smart card",
when the Smart Card Service is not running and has to use various
workarounds to start the service manually, e.g.:
http://blogs.danosaab.com/2016/12/using-smart-card-with-remote-desktop-connection-on-mac-osx/
http://www.edugeek.net/forums/windows-server-2012/161255-smart-card-service-issue-windows-server-2012r2-terminal-services-hyperv.html

I've been looking at RDP specifications and found that
REDIRECTED_SMARTCARD should be probably specified in TS_UD_CS_CLUSTER
block flags when the smartcard is redirected, but it is not currently:
https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-rdpbcgr/d68c629f-36a1-4a40-afd0-8b3e56d29aac

This might be the reason, why the Smart Card Service is not
autostarted for some people. Let's try to set this flag and see what
will happens...

https://github.com/FreeRDP/FreeRDP/issues/4743
Signed-off-by: Armin Novak <armin.novak@thincast.com>
2019-12-18 12:22:11 +01:00
Kobi Mizrachi
200f50c1f6 update: add proper stream checks 2019-12-17 12:38:41 +01:00
xie.kunming
e16bef6b4f rdp.c : fix DATA_PDU_TYPE_STRINGS mismatch declaration when WITH_DEBUG_ALL=ON 2019-12-16 12:14:59 +01:00
Kobi Mizrachi
033ee763e9 core: server: update: fix update_send_new_or_existing_notification_icons 2019-12-12 11:10:44 +01:00
Kobi Mizrachi
edeb449185 core: server: add missing NULL check in FreeRDP_WTSVirtualChannelRead 2019-12-12 11:10:44 +01:00
Mati Shabtay
4dacb57f6f rail server: implement channel code for rail server
* Split common functionality from client code
* Clean up client code and use proper defines for constants
* Implements the channel code to read/write server side
  messages.
2019-12-12 11:10:44 +01:00
Mati Shabtay
8298728663 channels.c: Send the CHANNEL_OPTION_SHOW_PROTOCOL option only in client mode
According to MS-RDPBCGR section 2.2.1.3.4.1, this option should only be
sent as a client. If set by a server, mstsc will crash.
2019-12-12 11:10:44 +01:00
Mati Shabtay
9045f1b343 info.c: Set hidef Remote App flag on info packet read 2019-12-12 11:10:44 +01:00
Mati Shabtay
8e4a88d955 update.c: Implement rail server altsec window orders 2019-12-12 11:10:44 +01:00
Martin Fleisz
71feb974ac
Merge pull request #5739 from akallabeth/improve_function_hiding
Improve function hiding
2019-12-02 11:31:35 +01:00
Armin Novak
7c243da6e1 Remove symbols exported by accident. 2019-12-02 10:57:31 +01:00
David Fort
22f954970a primitives: use host pointers for openCL
Using host pointers may skip the need for copying buffers.
2019-11-29 11:59:09 +01:00
David Fort
6123920a2e opencl: inline the openCL program in the source code 2019-11-22 13:21:39 +01:00
David Fort
7b743b3199 rails: shorten logs 2019-11-22 13:21:39 +01:00
Martin Fleisz
b97c6d87c3
Merge pull request #5706 from akallabeth/tcp_keepalive
Configurable Tcp keepalive
2019-11-19 10:03:00 +01:00
Armin Novak
8665ac7e81 Fixed broken strnlen checks 2019-11-11 12:12:51 +01:00
Armin Novak
9e7c24668b Fixed broken length calculation in rdp_write_extended_info_packet 2019-11-11 09:30:16 +01:00
Armin Novak
639174e7d3 Added configurable TcpKeepAliveDelay setting. 2019-11-07 16:07:18 +01:00
Armin Novak
09dd01a78f Implemented configurable tcp keepalive and timeout detection 2019-11-07 13:03:33 +01:00
Armin Novak
7f21f4ef3d Added additional tcp keep alive settings. 2019-11-07 12:45:05 +01:00
Armin Novak
7db4f69cb6 Added TcpKeepalive setting, use settings getter const arguments. 2019-11-07 12:39:22 +01:00
Armin Novak
fc4bb71205 Added cast and checks for info packet. 2019-11-07 10:55:27 +01:00
Armin Novak
72ca88f49c Reformatted to new style 2019-11-07 10:53:54 +01:00
Armin Novak
75ed12f1f0 Fixed userdata pointer and CHANNEL_EVENT_WRITE_CANCELLED message. 2019-11-06 13:01:43 +01:00
Armin Novak
1bcb799560 Listen to CHANNEL_EVENT_WRITE_CANCELLED and emit if queue is cleared. 2019-11-06 13:01:43 +01:00
Armin Novak
1b78b59926 Fixed #4809: Properly process CHANNEL_EVENT_WRITE_COMPLETE 2019-11-06 13:01:43 +01:00
Martin Fleisz
5b6663fe3a
Merge pull request #5689 from akallabeth/cleanups
Cleanups
2019-11-05 15:28:02 +01:00
Armin Novak
d7877186d6 Fixed strnlen issues. 2019-11-05 14:55:33 +01:00
David Fort
824d09169e rdp: fix byte and packet counters
Best to count bytes directly at the transport level.
2019-11-04 07:39:35 +01:00
Armin Novak
f01e042211 Code cleanups (strlen, casts, size_t, ...) 2019-10-29 11:58:43 +01:00
Armin Novak
47bea1bc80 wts_read_drdynvc_close_response quit message queue. 2019-10-25 13:25:12 +02:00
David Fort
bd5a88e95a rdp: count in/out bytes and packets 2019-10-23 09:16:35 +02:00
asapelkin
82eadad4a4 Fix some static analizer warnings 2019-10-22 15:39:54 +02:00
Martin Fleisz
5ead938271
Merge pull request #5657 from akallabeth/warning_fixes2
Warning fixes2
2019-10-17 17:00:57 +02:00
Armin Novak
59b4988f56 Fixed compilation warnings. 2019-10-16 14:54:05 +02:00
Armin Novak
cda41b8d07 Fixed missing initializer 2019-10-16 14:53:42 +02:00
Armin Novak
441fb4d0ca Allow freerdp clients to function with WITH_OPENH264_LOADING
If no library can be loaded at runtime ignore H264 capabilities.
This allows a build with only OpenH264 support and dynamic loading
enabled to function when no openh264 library was detected.
2019-10-07 09:31:20 +02:00
Armin Novak
8d088387da Added function to get an error category for better error handling. 2019-10-03 11:19:03 +02:00
Armin Novak
1d4cdd2924 Added missing error codes. 2019-10-02 16:00:37 +02:00
Armin Novak
6100273089 Reset fastpath on disconnect, fixes #5629 2019-10-02 10:21:48 +02:00
Armin Novak
f78c5f5c44 Map gateway errors in freerdp_get_last_error_name 2019-10-01 09:47:26 +02:00
Martin Fleisz
6b8b5bbb0e
Merge pull request #5614 from akallabeth/better_gateway_error
Better gateway error reporting
2019-09-24 16:28:17 +02:00
Armin Novak
733cc36462 Setting freerdp_last_error in gateway error response. 2019-09-24 09:42:13 +02:00
Armin Novak
6f9cb89c5d Better log message for resetting last error state. 2019-09-23 11:22:45 +02:00
akallabeth
4679bb6b53 Fix ##5593: duplicated typedef. 2019-09-22 16:42:31 +02:00
Armin Novak
f25488a7ab Reset last error state after a hostname was resolved successfully. 2019-09-11 10:43:17 +02:00
Armin Novak
306c557512 Getter for state to string 2019-09-04 15:46:47 +02:00