Marc-André Moreau
012825e3b6
libfreerdp-core: fix code style in gcc.c
2012-01-29 15:05:34 -05:00
Marc-André Moreau
bde353b635
libfreerdp-core: fix reconnection for non IP-based redirection
2012-01-29 14:49:54 -05:00
Marc-André Moreau
005ffa0bb0
wfreerdp: fix mingw64 cross-compilation (Felix Wolfheimer)
2012-01-29 11:11:13 -05:00
Pawel Jakub Dawidek
31529071fd
Add glue that enables server-side support for Standard RDP Security.
2012-01-25 17:16:44 +01:00
Pawel Jakub Dawidek
7207e945c3
- Ignore received encryption_method and encryption_level if we don't support encryption.
...
- Print a warning if we receive unregognized type.
2012-01-25 17:16:44 +01:00
Pawel Jakub Dawidek
daf565dbd3
Add complete implementation of gcc_write_server_security_data() function
...
that implements server-side Standard RDP Security.
2012-01-25 17:16:44 +01:00
Pawel Jakub Dawidek
0a97242b3c
Add rdp_server_establish_keys() function that is responsible for
...
establishing encryption keys for server-side Standard RDP Security.
2012-01-25 17:16:44 +01:00
Pawel Jakub Dawidek
76f36461ff
Add a note why we are skipping 8 bytes.
2012-01-25 17:16:44 +01:00
Pawel Jakub Dawidek
ee9739f490
Add API to load RSA key for Standard RDP Security in server mode.
2012-01-25 17:16:44 +01:00
Pawel Jakub Dawidek
f5033b1a7c
- Don't fill client_random with 0x5e, we are going to fill it up with
...
random data in the next line.
- Use less magic numbers.
2012-01-25 17:16:44 +01:00
Pawel Jakub Dawidek
86910c8401
Add missing decryption.
2012-01-25 17:16:44 +01:00
Pawel Jakub Dawidek
d37cff01ed
White-space fixes.
2012-01-25 17:15:44 +01:00
Pawel Jakub Dawidek
ac87b066fb
Correct style.
2012-01-25 17:15:35 +01:00
Pawel Jakub Dawidek
31b6968263
Add a comment explaining why we always encode length in two bytes, eventhough we could use one byte sometimes.
2012-01-25 17:15:25 +01:00
Pawel Jakub Dawidek
61aa1dfb79
Add Standard RDP encryption suport for fastpath. Both input and output.
2012-01-25 17:15:17 +01:00
Pawel Jakub Dawidek
9c8a6bd8e9
Add some FASTPATH_INPUT_* enums.
2012-01-25 17:15:09 +01:00
Pawel Jakub Dawidek
68b9f65e87
Add --secure-checksum option that will enable usage of salted checksums
...
with Standard RDP encryption.
2012-01-25 17:14:58 +01:00
Pawel Jakub Dawidek
cea62dd9f6
Simplify code by using per_read_length() instead of reimplementing it.
2012-01-25 17:14:51 +01:00
Pawel Jakub Dawidek
af87360135
MCS data header might be 7 or 8 bytes long, depending on the length.
...
To reduce confusion a bit rename MCS_SEND_DATA_HEADER_LENGTH to
MCS_SEND_DATA_HEADER_MAX_LENGTH and also rename other defines that use
MCS_SEND_DATA_HEADER_MAX_LENGTH.
2012-01-25 17:14:44 +01:00
Pawel Jakub Dawidek
e2be360ec4
Add support for SEC_SECURE_CHECKSUM and FASTPATH_OUTPUT_SECURE_CHECKSUM flags.
2012-01-25 17:14:31 +01:00
Pawel Jakub Dawidek
4df52d7a42
Use rdp_read_security_header() to read security header.
2012-01-25 17:14:19 +01:00
Pawel Jakub Dawidek
b3a4be0298
We calculate checksum on plain text, so we must have already decrypt it, which means decrypt_use_count is off by one. Account for this.
2012-01-25 17:14:11 +01:00
Pawel Jakub Dawidek
207cb9b818
Fix typo: use & instead of | to check for flags. This fixes detection of requested protocols.
2012-01-25 17:13:53 +01:00
Pawel Jakub Dawidek
609d177412
Handle short writes properly in transport_write().
...
Before this change if short write (send) occured, we were trying to
resend without updating length variable, so we were trying to send
too much and the following undefined data were causing the other
side to terminate connection.
2012-01-24 11:46:35 +01:00
Pawel Jakub Dawidek
8e91faf139
- Rename rdp_establish_keys() to rdp_client_establish_keys() as it is only
...
responsible for establishing keys on the client side.
- Simplify rdp_client_establish_keys() by using rdp_write_header() and
rdp_write_security_header() function instead of reimplementing them
and by using existing defines instead of magic values.
2012-01-23 18:23:52 +01:00
Pawel Jakub Dawidek
164c8a0a67
Whitespace fixes.
2012-01-19 05:36:52 +01:00
Pawel Jakub Dawidek
8238f2369d
- Simplify security_mac_signature() API.
...
- Introduce implementation of security_salted_mac_signature() that would be
used to handle packets with SEC_SECURE_CHECKSUM flag.
2012-01-19 05:10:06 +01:00
Pawel Jakub Dawidek
ab4beb787f
Implement signature verification in Server Security Data packet.
...
Because this signature doesn't protect against anything, only warn
the user if it is invalid.
2012-01-19 04:49:03 +01:00
Pawel Jakub Dawidek
44663ab332
Introduce more complete RSA API that implements:
...
- crypto_rsa_public_encrypt()
- crypto_rsa_public_decrypt()
- crypto_rsa_private_encrypt()
- crypto_rsa_private_decrypt()
2012-01-19 04:48:52 +01:00
Pawel Jakub Dawidek
a118afa879
Add Terminal Services Signing Keys.
2012-01-19 04:48:43 +01:00
Pawel Jakub Dawidek
3bbd2f28c7
Use CRYPTO_*_DIGEST_LENGTH defines instead of magic values.
2012-01-19 04:48:32 +01:00
Pawel Jakub Dawidek
af5501cdc5
Introduce CRYPTO_SHA1_DIGEST_LENGTH and CRYPTO_MD5_DIGEST_LENGTH that hold
...
number of bytes needed for a given hash.
2012-01-19 04:48:23 +01:00
Pawel Jakub Dawidek
9b07d525fb
Introduce SIGNATURE_ALG_RSA and KEY_EXCHANGE_ALG_RSA defines and use them
...
instead of magic values.
2012-01-17 17:55:31 +01:00
Pawel Jakub Dawidek
6f418cb20b
PROTOCOL_RDP is 0, so don't perform bitwise operations on it.
2012-01-17 17:52:12 +01:00
Pawel Jakub Dawidek
1dd33b49d5
The ber_write_length() function can store variable number of bytes (one or
...
three). We can't tell until we write other data and know the length, so don't
assume how much space will by consumed to store length. Bug was observed with
the mcs_write_connect_response() function, where the function assumed that
application tag will take three bytes, but it was taking five.
2012-01-17 14:17:04 +01:00
Marc-André Moreau
949bce4d54
wfreerdp: fix warnings and color conversion
2012-01-16 11:40:18 -05:00
Marc-André Moreau
757e41a0d5
Merge pull request #347 from pjd/pullreq
...
Use of stream_read() / stream_write()
2012-01-16 07:18:50 -08:00
Pawel Jakub Dawidek
7056f5f5ef
Make use of stream_read().
2012-01-16 15:56:47 +01:00
Pawel Jakub Dawidek
4815924d0e
Use stream_read() instead of memcpy() + stream_seek().
2012-01-16 15:56:39 +01:00
Pawel Jakub Dawidek
74860814fc
Use stream_write() instead of memcpy() + stream_seek().
2012-01-16 15:56:31 +01:00
Pawel Jakub Dawidek
6a7fe3e520
If we are server, our encryption key is client's decryption key and vice-versa.
2012-01-16 15:55:06 +01:00
Marc-André Moreau
42dfd2627b
libfreerdp-core: fix FreeBSD compilation
2012-01-16 08:27:07 -05:00
Marc-André Moreau
f42b5f6a42
Merge pull request #344 from atong/master
...
various glyph cache resource fixes
2012-01-16 03:51:15 -08:00
Anthony Tong
2c30b11be2
glyph-cache: free pixmap, cache entries, cache fragments, and reuse secondary glyph cache buffers
2012-01-15 15:35:08 -05:00
Marc-André Moreau
8ed44b4f17
libfreerdp-core: add integer overflow check in GCC
2012-01-15 15:20:39 -05:00
Marc-André Moreau
277cbc3ccc
libfreerdp-core: refactor header encoding fix
2012-01-15 15:16:32 -05:00
Marc-André Moreau
ccfb88b049
libfreerdp-core: apply RDP signature verification patch from Pawel Jakub Dawidek
2012-01-15 15:01:16 -05:00
Marc-André Moreau
0c9db6a40a
libfreerdp-core: pad larger portion of rdpSettings
2012-01-14 14:42:36 -05:00
Marc-André Moreau
3f91e24a4d
libfreerdp-core: added freerdp_get_version()
2012-01-14 13:33:04 -05:00
Marc-André Moreau
c1291c3601
libfreerdp-core: cleanup warnings in mppc.c
2012-01-13 18:39:09 -05:00
Marc-André Moreau
5f7902dee4
libfreerdp-core: fix incorrect length in share control header, fix VRDP connectivity
2012-01-13 16:20:36 -05:00
Anthony Tong
7e8709ebbd
libfreerdp-core: fix reuse issue with osb's deleteList
2012-01-11 13:24:01 -05:00
Marc-André Moreau
c3f1c325e5
libfreerdp-core: fix encoding of capability set headers
2012-01-10 23:04:10 -05:00
Marc-André Moreau
79ae6d7a0b
libfreerdp-core: fix draw nine grid cache capability set encoding bug
2012-01-10 21:32:08 -05:00
Marc-André Moreau
dd39ed99c7
libfreerdp-core: fix fastpath parsing of synchronize pdu
2012-01-10 17:03:31 -05:00
Marc-André Moreau
3f345ce983
Merge pull request #337 from jiten19/mainstream
...
INFO_COMPR flags according to CompressionTypeMask
2012-01-10 07:21:24 -08:00
cool
83b39eea32
..
2012-01-09 21:52:09 -11:00
cool
73a2ab9eaa
INFO_COMPR flags according to CompressionTypeMask
2012-01-09 16:38:07 -11:00
Marc-André Moreau
7eff021771
libfreerdp-core: fix parsing bugs with synchronize, font map and session logon info PDUs
2012-01-08 16:02:59 -05:00
Marc-André Moreau
2cdf1aa24a
libfreerdp-core: fix issue #281 for slow-path pointer PDUs
2012-01-08 15:22:52 -05:00
Marc-André Moreau
78a517f171
libfreerdp-core: fix padding with pointer color update
2012-01-08 15:02:02 -05:00
Marc-André Moreau
f1c12c4eba
libfreerdp-core: remove unused crypto_cert_verify function to avoid confusion
2012-01-06 20:51:20 -05:00
Marc-André Moreau
a3df68a3a3
libfreerdp-core: apply glyph cache v2 patch from Pawel Jakub Dawidek
2012-01-04 20:20:58 -05:00
Marc-André Moreau
5f28591d3a
libfreerdp-cache: apply bitmap cache v1 patch from Pawel Jakub Dawidek
2012-01-04 20:17:11 -05:00
Marc-André Moreau
9dff0cd7f5
libfreerdp-core: clarification of bitmap decompression
2012-01-03 18:22:42 -05:00
Marc-André Moreau
3a3db9f20c
libfreerdp-core: improve handling of create offscreen bitmap delete list indices
2011-12-31 15:36:04 -05:00
Marc-André Moreau
e95dcc4c5e
libfreerdp-core: fix decompression of color brushes
2011-12-30 14:23:47 -05:00
Vic Lee
0975b4555c
libfreerdp-core: move os type settings to the client.
...
Moving the osMajorType and osMinorType settings to the client so that the
client can set a real os type constant. This will give a more useful hint
to the server.
2011-12-24 15:48:33 +08:00
David Sundstrom
50dcc1138a
Fix SEGV for X servers without XKB extension.
2011-12-21 16:58:56 -06:00
Anthony Tong
a65e562411
libfreerdp-core: fix server redirection when using rdp security
2011-12-21 14:59:31 -05:00
Marc-André Moreau
77bbd18d5c
libfreerdp-core: fix input callback registration for slow-path input
2011-12-20 14:51:44 -05:00
Marc-André Moreau
216947a330
libfreerdp-core: disable fastpath output if server does not support it
2011-12-20 14:42:22 -05:00
Marc-André Moreau
39e4d1a092
libfreerdp-core: cleanup of fastpath input flags processing
2011-12-20 12:09:53 -05:00
Marc-André Moreau
3fb8e8fb58
libfreerdp-core: set code page
2011-12-19 20:52:22 -05:00
Marc-André Moreau
15a2567e87
libfreerdp-core: handle omission of bitmap compression header
2011-12-19 20:31:37 -05:00
Marc-André Moreau
0914eb071e
libfreerdp-core: fix sending large pointer caps twice
2011-12-18 17:11:24 -05:00
Marc-André Moreau
135503612d
libfreerdp-core: fix race condition in connection finalization
2011-12-18 15:15:48 -05:00
Marc-André Moreau
b913b1d1b8
Merge branch 'master' of github.com:FreeRDP/FreeRDP
2011-12-18 12:11:05 -05:00
Vic Lee
3b3660898d
server: fix pdu processing during reactivation.
2011-12-19 01:15:27 +08:00
Marc-André Moreau
30e8b63ab6
libfreerdp-core: fix sending of extended data blocks when supported only
2011-12-18 12:10:56 -05:00
David Sundstrom
49303c8969
Fix compile error on Solaris
...
Fix few small issues with local move race conditions
Add missing --gdi option to command-line help
2011-12-16 15:10:07 -06:00
Marc-André Moreau
5d1df8a342
libfreerdp-core: add connection type settings
2011-12-16 12:14:16 -05:00
Marc-André Moreau
338359eb36
libfreerdp-core: added more fine-tuned performance flag options
2011-12-16 12:04:09 -05:00
Vic Lee
5502cfe25a
server: add frame marker update.
2011-12-16 07:26:32 +08:00
Vic Lee
f788581586
server: server must store the pointer cache size from client.
2011-12-16 07:08:40 +08:00
Marc-André Moreau
2edfcb50fb
libfreerdp-core: fix glyph cache, enable it by default
2011-12-14 17:08:22 -05:00
Marc-André Moreau
0ed4709167
libfreerdp-core: add server-side capabilities callback
2011-12-14 15:08:09 -05:00
Marc-André Moreau
949fc88989
libfreerdp-core: fix performance flags for RemoteFX and smooth fonts
2011-12-14 14:35:37 -05:00
Bernhard Miklautz
a0fad066dc
libfreerdp-utils/core: use "dylib" as plugin extension on OSX
2011-12-14 02:28:12 +01:00
Bernhard Miklautz
e902508e70
libfreerdp-core: fixed compilation issue on OSX
2011-12-14 01:42:10 +01:00
Marc-André Moreau
64f5ccaca2
libfreerdp-core: fix connection type if composition is enabled
2011-12-13 17:54:50 -05:00
Marc-André Moreau
fec031ebe5
libfreerdp-core: fix sending of font capabilities, fix encoding of bitmap cache cell info
2011-12-13 15:56:06 -05:00
Marc-André Moreau
d454037298
libfreerdp-kbd: fix keyboard layout detection based on locale
2011-12-12 21:29:18 -05:00
Marc-André Moreau
f2172bff70
libfreerdp-core: tweak capabilities to be closer to 0.9
2011-12-12 19:57:24 -05:00
Marc-André Moreau
243090323d
libfreerdp-core: fix offscreen cache capabilities, add --composition option
2011-12-12 19:20:52 -05:00
Marc-André Moreau
654600dc91
Merge pull request #270 from llyzs/wtsvc
...
Server virtual channel API
2011-12-12 07:05:33 -08:00
Marc-André Moreau
9d1f13e82e
libfreerdp-core: set SO_KEEPALIVE socket option
2011-12-11 19:51:58 -05:00
Marc-André Moreau
aec2b492e4
libfreerdp-core: set TCP_NODELAY socket option
2011-12-11 18:59:35 -05:00
Marc-André Moreau
fcd03260d6
xfreerdp: added select() timeout
2011-12-11 18:05:32 -05:00
Marc-André Moreau
2ef315820f
libfreerdp-core: apply NTLMv2 authentication patch by Dmitrij Jasnov
2011-12-11 16:53:24 -05:00
Marc-André Moreau
25a3a6e68f
libfreerdp-core: provide more descriptive warning message for certificate check failure
2011-12-10 11:23:48 -05:00
Marc-André Moreau
9e6a5d6821
libfreerdp-core: fix autologon for non-NLA authentication
2011-12-10 10:54:09 -05:00
Vic Lee
703e253e9f
libfreerdp-core: add channel data sending/receiving for server.
2011-12-10 16:41:29 +08:00
Vic Lee
2ee03f035a
libfreerdp-core: change channel_send argument in order to be shared with server code.
2011-12-10 16:23:27 +08:00
Marc-André Moreau
904a9a7c6a
xfreerdp: add -X option for reparenting window
2011-12-09 13:53:19 -05:00
Marc-André Moreau
a50ef84c21
wfreerdp: fix compilation and warnings
2011-12-03 17:24:18 -05:00
Vic Lee
28d1abdd62
fastpath: refactor fastpath updates and merge fragmented codes.
2011-12-03 14:55:17 +08:00
Vic Lee
667afaa8d3
server: add pointer updates.
2011-12-03 08:54:02 +08:00
Mike Gilbert
bc3f8dfa53
libfreerdp-core: Finish cleanup of constant string arrays.
2011-11-30 17:40:36 -05:00
Mike Gilbert
c676bd0ac8
ber: Add const to ber_write_octet_string input parameter.
2011-11-30 17:36:27 -05:00
Mike Gilbert
5b7fc71b37
security: Add const to table declarations.
2011-11-30 17:33:13 -05:00
Mike Gilbert
c8934ef028
crypto: Add const modifiers to input parameters.
2011-11-30 17:29:40 -05:00
Mike Gilbert
88be3c2184
ntlmssp: Remove accidental ifdef.
2011-11-29 21:26:05 -05:00
Mike Gilbert
4048ddce6d
libfreerdp-core: More strings cleanup.
...
- Comment out unused lookup tables.
- ifdef tables where appropriate.
- Change declarations to produce read-only sections.
See also:
http://blog.flameeyes.eu/2007/12/19/array-of-pointers-and-array-of-arrays
2011-11-29 21:08:07 -05:00
Mike Gilbert
3993f54474
ntlmssp: Optimize storage of constant strings.
...
Based on information in flameeyes blog.
http://blog.flameeyes.eu/2007/12/19/array-of-pointers-and-array-of-arrays
2011-11-29 21:08:07 -05:00
Mike Gilbert
f176059921
errinfo.c: Cleanup global variables and strings.
...
This moves constant data into a read-only section and cuts around 7k out
of the resulting object code.
2011-11-29 20:34:25 -05:00
Marc-André Moreau
ac9d584de5
ntlmssp: added more debug output for AV_PAIRS
2011-11-29 19:23:08 -05:00
Marc-André Moreau
37a4ed3859
ntlmssp: add better AV_PAIRS debug output
2011-11-29 18:36:22 -05:00
Marc-André Moreau
28cc3c6f11
ntlmssp: add command-line option to enabled WIP enhanced NTLMv2 security
2011-11-29 18:12:42 -05:00
Matthew Mosesohn
fca9ca8908
Try FDQN for redirect before trying netbios name
2011-11-29 16:32:22 -05:00
Marc-André Moreau
b2515f0729
ntlmssp: got NTLM authentication working with proper definitions
2011-11-29 15:29:59 -05:00
Marc-André Moreau
76f09de778
ntlmssp: refactor NEGOTIATE debug output
2011-11-29 15:16:42 -05:00
Marc-André Moreau
22ca2e06fd
ntlmssp: added ALTERNATE_NTLMSSP
2011-11-29 14:41:04 -05:00
Marc-André Moreau
af6e914cf3
update: modify surface frame marker callback
2011-11-25 11:30:15 -05:00
Marc-André Moreau
7f9f2ea7a7
Merge pull request #226 from nfedera/dumpcaconlyfix
...
core: request RemoteFX-only data if --dump-rfx is specified
2011-11-25 07:08:56 -08:00
Marc-André Moreau
afd2569be0
Merge pull request #225 from nfedera/framemarkerupdate
...
core: add update callback for the surface frame marker command
2011-11-25 07:08:37 -08:00
Norbert Federa
c918cfb7af
codec: support for specifying the RemoteFX mode (image or video)
2011-11-25 13:09:16 +01:00
Norbert Federa
6540b77534
core: request RemoteFX-only data if --dump-rfx is specified
...
The variable captureFlags was already correctly set if --dump-rfx
was specified but simply not used.
2011-11-25 12:23:44 +01:00
Norbert Federa
c2514dbcae
core: add update callback for the surface frame marker command
...
- clients will need this to present the offscreen to the display
in the correct state in order to avoid flickering and artefacts
and to do frame acknowledgement.
- added empty callback to xfreerdp.
2011-11-25 11:48:51 +01:00
Jay Sorg
b32ea1b77e
got fast index and fast glyph working
2011-11-24 15:32:49 -08:00
Vic Lee
0d17fbe785
server: add scrblt.
2011-11-25 00:48:53 +08:00
Alexis Moinet
4777d8f021
fix a double free in redirection.c/settings.c and a memory leak in connection.c
2011-11-24 16:45:34 +01:00
Jay Sorg
a5f878b536
got GLYPH_INDEX working
2011-11-23 13:11:28 -08:00
Jay Sorg
873b1fbf62
fix for read negative signed int
2011-11-23 12:48:49 -08:00
Marc-André Moreau
0e234de3ae
update: aligning data structures to 4 byte
2011-11-21 22:11:31 -05:00
Marc-André Moreau
4ba59d8fcd
update: move alternate secondary window drawing orders to sub-interface
2011-11-21 21:07:03 -05:00
Marc-André Moreau
0a9278bd32
update: move alternate secondary orders to sub-interface
2011-11-21 19:53:38 -05:00
Marc-André Moreau
587cc8eaaf
update: move secondary drawing orders to sub-interface
2011-11-21 19:41:49 -05:00
Marc-André Moreau
f17a25e08d
update: move primary orders into sub-interface
2011-11-21 18:11:43 -05:00
Marc-André Moreau
7899915c78
freerdp: separate pointer updates into sub-interface
2011-11-21 17:48:03 -05:00
Marc-André Moreau
a63a196f53
types: refactoring to make use of standard data types when available
2011-11-19 12:19:16 -05:00
Marc-André Moreau
666fbb0405
freerdp: pad multiple interfaces for improved ABI stability
2011-11-19 02:33:49 -05:00
Vic Lee
eb66ede91d
libfreerdp-core/extension: fix segfaults.
2011-11-17 10:41:42 +08:00
Marc-André Moreau
150ff56f5f
wfreerdp: fix compilation warnings and errors
2011-11-12 00:51:41 -05:00
Marc-André Moreau
0e95675da3
libfreerdp-core: add support for Refresh Rect and Suppress Output PDUs
2011-11-11 14:02:59 -05:00
Marc-André Moreau
809dbf7744
libfreerdp-core: fix capability set parsing for Windows XP
2011-11-11 01:24:55 -05:00
Marc-André Moreau
4221065c88
libfreerdp-core: port extension plugin interface (untested)
2011-11-09 15:59:03 -05:00
Marc-André Moreau
0043b16472
libfreerdp-core: started porting extension plugin interface
2011-11-09 15:33:58 -05:00
Marc-André Moreau
a1b8dfd79f
libfreerdp-cache: got glyph drawing partially working
2011-11-09 12:16:09 -05:00
Marc-André Moreau
155446d11e
libfreerdp-cache: moving glyph to a graphical object
2011-11-09 00:43:56 -05:00