Commit Graph

98 Commits

Author SHA1 Message Date
Cendio
ab50ea31cf Implement dynamic session resize
This adds support for resizing the RDP session dynamically based on
the window size. Some complicated logic has been added to avoid
sending excessive amounts of resize requests to the RDP server.

When supported, this resize mechanism should use the RDPEDISP way of
signalling the server to initiate a Deactivate/Activate sequence, but
rdesktop will fall back on Disconnect/Reconnect if RDPEDISP is not
supported by the server.

ui_select has been refactored and most functionality has been broken
out into three new functions, simplifying ui_select into a loop.

Signed-off-by: Henrik Andersson <hean01@cendio.com>
Signed-off-by: Karl Mikaelsson <derfian@cendio.se>
Signed-off-by: Thomas Nilefalk <thoni56@cendio.se>
2017-12-07 11:15:03 +01:00
Cendio
2f03f65efe Add Dynamic Virtual Channels and basic RDPEDISP support
Fix issue #192

Signed-off-by: Henrik Andersson <hean01@cendio.com>
Signed-off-by: Karl Mikaelsson <derfian@cendio.se>
2017-11-09 15:39:39 +01:00
René Genz
9e99dd52d6 Fix minor spelling mistakes 2017-11-02 01:01:44 +01:00
joshudson
fe692058a2 Add Windows 10 support: add option to send DPI to server as Windows 1… (#66)
Add support  for choosing DPI of remote session
2017-11-01 06:37:18 +01:00
Karl Mikaelsson
8c162a5563 Enable 32-bit color depths
To enable 32-bit color depths a earlyCapabilityFlag in the CS_CORE
packet is required. When 32-bit color depth is requested, this
RNS_UD_CS_WANT_32BPP_SESSION flag will now be set. We also advertise
support for 32-bit color depths through the RNS_UD_32BPP_SUPPORT flag.
2017-10-18 12:18:50 +02:00
Karl Mikaelsson
27e447555e Rename SEC_TAG_CLI_ constants to match specification 2017-10-17 12:29:41 +02:00
Karl Mikaelsson
3bb69ac4b8 Document sec_out_mcs_connect_initial_pdu
Cross-referenced the PDU with the spec. I found and fixed a few
inconsistencies while also adding comments identifying each data
field.
2017-10-17 12:17:13 +02:00
Karl Mikaelsson
fd0846ccee Rename sec_out_mcs_data to sec_out_mcs_connect_initial_pdu 2017-10-17 12:16:51 +02:00
Henrik Andersson
fd1673392e Fix unused-but-set-variable compiler warnings 2017-10-17 10:50:14 +02:00
Henrik Andersson
995e830665 Use new out_utf16s_padded() string function for fixed string 2017-09-29 16:30:17 +02:00
Karl Mikaelsson
a27c0ac4c8 Silence "sec_process_crypt_info(), failed to parse crypt info" msgs
If sec_parse_crypt_info returns false, it's not always a problem with
parsing the crypt info. It could very well be that Enhanced RDP
Security is used, which would trigger a false return value from the
function.

This commit adds new log messages to sec_parse_crypt_info for cases it
would return false and removes the incorrect catch-all message from
the caller.
2017-09-20 16:18:13 +02:00
Henrik Andersson
c93960b266 Cleanup of TS_SECURITY_HEADER code
Add correct naming of header TS_SECURITY_HEADER and its flags
as per MSRDPBCGR specification.
2017-03-07 15:32:14 +01:00
Henrik Andersson
87d8d123b8 Rework the logging system
This commit will add a logging system to solve the problem that
one actually need to recompile rdesktop from source to enable
different debug logging.

- Same logging api  for all kind of logging and messages to
   end user.

- Adding -v for verbose output when running rdesktop.

- All messages are logged into a subject and with a type, eg:

     logger(Keyboard, Notice, "Autos-electing %s based on locale.", locale);

- Debug logging is enabled trough a environment variable RDEKSTOP_DEBUG,
  which specifies subjects of interest, comma separated. There is a special
  subject named All which includes all subject for debug loggin. There is also
  a simple logic opeartor '!' = NOT which can be used in combination like:

    RDESKTOP_DEBUG=All,!Graphics,!Sound

  Which would give debug log output for All subject except Graphics and Sound.
2017-01-26 14:19:40 +01:00
Henrik Andersson
dbb87244dd Reset license issued state to make redirections work with issued device licenses.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1785 423420c4-83ab-492f-b58f-81f9feb106b5
2014-02-07 08:44:55 +00:00
Henrik Andersson
2503dbb9d9 Cleanup and clarify the implementation of TS_UD_CS_CLUSTER.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1762 423420c4-83ab-492f-b58f-81f9feb106b5
2013-11-28 11:10:35 +00:00
Henrik Andersson
51014c91df Initial implementation of kerberos server autentication with CredSSP,
disabled by default and is enabled using argument --enable-credssp
to configure script.

git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1676 423420c4-83ab-492f-b58f-81f9feb106b5
2012-11-15 11:21:01 +00:00
Henrik Andersson
2664c4f92a Reset licens error status when restting state, fixes issue with
pending resize which would hang for ever.

git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1673 423420c4-83ab-492f-b58f-81f9feb106b5
2012-11-08 12:15:24 +00:00
Peter Åstrand
5cb7910413 Indented with indent-all.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1670 423420c4-83ab-492f-b58f-81f9feb106b5
2012-10-23 11:38:27 +00:00
Henrik Andersson
0f5824d414 Rename of internal ssl_ wrapper functions/defines to
rdssl_ to prevent nameclashing with openssl library now
when we link against ssl library.

git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1665 423420c4-83ab-492f-b58f-81f9feb106b5
2012-07-02 11:36:39 +00:00
Henrik Andersson
c44025aa18 Added support for protocol negotiation, this is a part of
adding Enhanced RDP Security support to rdesktop and brings
support for TLSv1 tunnel functionality.

git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1659 423420c4-83ab-492f-b58f-81f9feb106b5
2012-06-15 05:16:20 +00:00
Henrik Andersson
cdce9aae75 Run indentation script.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1658 423420c4-83ab-492f-b58f-81f9feb106b5
2012-01-16 06:35:13 +00:00
Henrik Andersson
8a52bf3a9b - Change licensestore to XDG directory ~/.local/share/rdesktop/licenses
- Added helper functions for SHA1 hash to hash the hostname used for
  licenses filename to hide information of what host user X connects 
  from in a infrastructure with NFS mounted home directories.



git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1644 423420c4-83ab-492f-b58f-81f9feb106b5
2011-11-21 10:51:08 +00:00
Peter Åstrand
b638882347 Include emails in copyright statements.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1615 423420c4-83ab-492f-b58f-81f9feb106b5
2011-04-13 11:13:04 +00:00
Peter Åstrand
27068f53f8 Updated the copyright notices for the things we have been working on.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1612 423420c4-83ab-492f-b58f-81f9feb106b5
2011-04-13 08:55:42 +00:00
Michael Gernoth
360b4a3faa fix two problems found by clang static analyzer
secure.c:  Dereference of null pointer
xkeymap.c: Pass-by-value argument in function call is undefined

both seem to be noncritical, as sec_recv is never called with a null
pointer and ensure_remote_modifiers only accesses initialized fields


git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1589 423420c4-83ab-492f-b58f-81f9feb106b5
2010-04-07 11:39:29 +00:00
Peter Åstrand
1b4c36a45f Implemented support for "Client Auto-Reconnect". This means that the
client can re-connect using a cookie, instead of going through the
normal authentication. This patch saves those cookies, and uses them
during logon. 

Note that this feature is currently unused. It remains to add support
for, say, detecting when the TCP connection has gone done and restart
a new one. 



git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1539 423420c4-83ab-492f-b58f-81f9feb106b5
2010-01-12 10:34:38 +00:00
Peter Åstrand
281d7c9f06 Changed license to GPLv3
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1534 423420c4-83ab-492f-b58f-81f9feb106b5
2010-01-12 08:31:06 +00:00
Peter Åstrand
440542c535 Elminate code duplication in rdp_reconnect and sec_connect.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/rdesktop/trunk@1528 423420c4-83ab-492f-b58f-81f9feb106b5
2010-01-07 20:01:58 +00:00
Jay Sorg
88855ddcbf update the copyright year
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1474 423420c4-83ab-492f-b58f-81f9feb106b5
2008-07-11 03:51:23 +00:00
Jay Sorg
6e2ac16e15 indent
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1389 423420c4-83ab-492f-b58f-81f9feb106b5
2007-02-10 05:28:54 +00:00
Jay Sorg
d3349e6087 g_ prefix for global vars
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1388 423420c4-83ab-492f-b58f-81f9feb106b5
2007-02-10 05:15:58 +00:00
Jay Sorg
6c626e9e53 call ssl.c set key function, not openssl
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1384 423420c4-83ab-492f-b58f-81f9feb106b5
2007-01-27 20:38:30 +00:00
Jay Sorg
e486d11511 moved all openssl calls to one file
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1373 423420c4-83ab-492f-b58f-81f9feb106b5
2007-01-09 07:24:44 +00:00
Jay Sorg
6091381a81 prefix BOOL with RD_
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1371 423420c4-83ab-492f-b58f-81f9feb106b5
2007-01-08 04:47:06 +00:00
Jay Sorg
797df4fa02 copyright year update
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1364 423420c4-83ab-492f-b58f-81f9feb106b5
2007-01-04 05:39:39 +00:00
Michael Gernoth
c3f49ea246 more smartcard locking fixes
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1327 423420c4-83ab-492f-b58f-81f9feb106b5
2006-11-03 23:51:35 +00:00
Michael Gernoth
8419d91138 make sure to lock the datapath of rdpdr_send_completion to prevent
simultaneous access to shared variables in multiple threads


git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1326 423420c4-83ab-492f-b58f-81f9feb106b5
2006-11-03 19:56:42 +00:00
Michael Gernoth
91d106dd41 warnings on newer openssl-versions
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1314 423420c4-83ab-492f-b58f-81f9feb106b5
2006-11-01 22:12:27 +00:00
Michael Gernoth
f93e31c840 fix warning: 'server_random' may be used uninitialized in this function
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1313 423420c4-83ab-492f-b58f-81f9feb106b5
2006-11-01 21:45:49 +00:00
Michael Gernoth
1ea625c969 fix some warnings
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1239 423420c4-83ab-492f-b58f-81f9feb106b5
2006-07-02 13:03:22 +00:00
Peter Åstrand
6fa3105441 Indent fixes
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1238 423420c4-83ab-492f-b58f-81f9feb106b5
2006-06-21 14:40:02 +00:00
Matt Chapman
69692c7014 Allow server public key to be anywhere from 512 bits to 2048 bits.
(Vista Beta 2 uses a 2048 bit key)


git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1236 423420c4-83ab-492f-b58f-81f9feb106b5
2006-06-14 08:26:00 +00:00
Pierre Ossman
9babc7a978 Fix memory leak spotted by valgrind.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1182 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-22 09:49:21 +00:00
Peter Åstrand
acffcd7e9c Applied patch #1390148 from Ilya Konstantinov: Refactoring of color depth code.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1041 423420c4-83ab-492f-b58f-81f9feb106b5
2006-01-24 12:40:24 +00:00
Peter Åstrand
8a9165589d Applied patch #1367109: prevent strtol overflow
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1034 423420c4-83ab-492f-b58f-81f9feb106b5
2005-12-30 20:32:06 +00:00
Peter Åstrand
75ea7d9148 Applied patch #1247780 (slightly modified) from Brian Chapeau: Session Directory support.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@976 423420c4-83ab-492f-b58f-81f9feb106b5
2005-08-08 19:15:57 +00:00
Peter Åstrand
5a4e3fd055 Added URL to MSDN, about the keyboard type, subtype, functionkeys.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@965 423420c4-83ab-492f-b58f-81f9feb106b5
2005-08-03 11:48:22 +00:00
Peter Åstrand
8882a06591 It is now possible to specify keyboard type, subtype and number of functionskeys. From patch #974509, by Dekaino.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@963 423420c4-83ab-492f-b58f-81f9feb106b5
2005-08-03 11:30:53 +00:00
Michael Gernoth
ec643e4718 bump version to 1.4.0
change year in files
add missing docu for updated commandline-flags
update changelog


git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@827 423420c4-83ab-492f-b58f-81f9feb106b5
2005-03-06 21:11:18 +00:00
Jay Sorg
19f0de9e0b bring the channel packets through rdp_loop so the uiports can enjoy the channel data
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@778 423420c4-83ab-492f-b58f-81f9feb106b5
2004-10-04 03:21:58 +00:00