Marc-André Moreau [Tue, 31 Jan 2012 01:35:33 +0000 (20:35 -0500)]
xfreerdp-server: add better path detection support for finding server keys
Marc-André Moreau [Mon, 30 Jan 2012 22:47:55 +0000 (17:47 -0500)]
libfreerdp-utils: extend file utils to do path detection
Marc-André Moreau [Mon, 30 Jan 2012 15:18:33 +0000 (10:18 -0500)]
libfreerdp-core: defined boolean as int on windows
Otavio Salvador [Mon, 30 Jan 2012 13:44:32 +0000 (05:44 -0800)]
Merge pull request #376 from bmiklautz/w32typedef
Fix for issue #374.
Bernhard Miklautz [Mon, 30 Jan 2012 11:05:50 +0000 (12:05 +0100)]
Fix for issue #374.
Marc-André Moreau [Sun, 29 Jan 2012 20:05:34 +0000 (15:05 -0500)]
libfreerdp-core: fix code style in gcc.c
Marc-André Moreau [Sun, 29 Jan 2012 19:49:54 +0000 (14:49 -0500)]
libfreerdp-core: fix reconnection for non IP-based redirection
Marc-André Moreau [Sun, 29 Jan 2012 16:11:13 +0000 (11:11 -0500)]
wfreerdp: fix mingw64 cross-compilation (Felix Wolfheimer)
Marc-André Moreau [Fri, 27 Jan 2012 02:22:15 +0000 (18:22 -0800)]
Merge pull request #371 from bmiklautz/osxdisableffmpeg
build: make ffmpeg optional on os x
Bernhard Miklautz [Fri, 27 Jan 2012 01:32:06 +0000 (02:32 +0100)]
build: make ffmpeg optional on os x
FFMPEG isn't installed per default on os x so it should be optional
instead of suggested.
Marc-André Moreau [Fri, 27 Jan 2012 01:29:07 +0000 (17:29 -0800)]
Merge pull request #370 from bmiklautz/buildfixes
build: raise an error if pkg is not found
Bernhard Miklautz [Fri, 27 Jan 2012 01:13:08 +0000 (02:13 +0100)]
build: raise an error if pkg is not found
Changed FFmpeg, PCSC and PulseAudio cmake find to raise an error if
an required package was not found.
Marc-André Moreau [Wed, 25 Jan 2012 16:30:16 +0000 (08:30 -0800)]
Merge pull request #368 from pjd/crypto
Server-side Standard RDP Security support.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 16:08:10 +0000 (17:08 +0100)]
Add glue that enables server-side support for Standard RDP Security.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 16:04:19 +0000 (17:04 +0100)]
- Ignore received encryption_method and encryption_level if we don't support encryption.
- Print a warning if we receive unregognized type.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 16:00:40 +0000 (17:00 +0100)]
Add complete implementation of gcc_write_server_security_data() function
that implements server-side Standard RDP Security.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 15:57:23 +0000 (16:57 +0100)]
Add rdp_server_establish_keys() function that is responsible for
establishing encryption keys for server-side Standard RDP Security.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 15:55:03 +0000 (16:55 +0100)]
Add a note why we are skipping 8 bytes.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 15:52:32 +0000 (16:52 +0100)]
Add fields to store RSA key for server-side Standard RDP Security.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 15:45:21 +0000 (16:45 +0100)]
Add API to load RSA key for Standard RDP Security in server mode.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 15:32:56 +0000 (16:32 +0100)]
- 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.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 15:30:54 +0000 (16:30 +0100)]
Add missing decryption.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 15:27:00 +0000 (16:27 +0100)]
White-space fixes.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 15:26:32 +0000 (16:26 +0100)]
Correct style.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 15:25:22 +0000 (16:25 +0100)]
Add a comment explaining why we always encode length in two bytes, eventhough we could use one byte sometimes.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 15:08:14 +0000 (16:08 +0100)]
Add Standard RDP encryption suport for fastpath. Both input and output.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 15:07:15 +0000 (16:07 +0100)]
Add some FASTPATH_INPUT_* enums.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 15:06:31 +0000 (16:06 +0100)]
Add --secure-checksum option that will enable usage of salted checksums
with Standard RDP encryption.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 15:00:16 +0000 (16:00 +0100)]
Simplify code by using per_read_length() instead of reimplementing it.
Pawel Jakub Dawidek [Wed, 25 Jan 2012 10:12:37 +0000 (11:12 +0100)]
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.
Pawel Jakub Dawidek [Tue, 24 Jan 2012 14:58:30 +0000 (15:58 +0100)]
Add support for SEC_SECURE_CHECKSUM and FASTPATH_OUTPUT_SECURE_CHECKSUM flags.
Pawel Jakub Dawidek [Tue, 24 Jan 2012 14:57:06 +0000 (15:57 +0100)]
Use rdp_read_security_header() to read security header.
Pawel Jakub Dawidek [Tue, 24 Jan 2012 14:49:27 +0000 (15:49 +0100)]
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.
Pawel Jakub Dawidek [Mon, 23 Jan 2012 21:29:33 +0000 (22:29 +0100)]
Fix typo: use & instead of | to check for flags. This fixes detection of requested protocols.
Marc-André Moreau [Wed, 25 Jan 2012 16:02:06 +0000 (08:02 -0800)]
Merge pull request #367 from jiten19/nscodec
nscodec final color bug fix
cool [Wed, 25 Jan 2012 08:06:48 +0000 (21:06 -1100)]
nscodec final color bug fix
Marc-André Moreau [Tue, 24 Jan 2012 19:23:02 +0000 (11:23 -0800)]
Merge pull request #365 from pjd/transport
Handle short writes properly in transport_write().
Marc-André Moreau [Tue, 24 Jan 2012 19:22:41 +0000 (11:22 -0800)]
Merge pull request #364 from bmiklautz/enablerfxneon
build: Added option WITH_NEON
Pawel Jakub Dawidek [Tue, 24 Jan 2012 10:42:30 +0000 (11:42 +0100)]
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.
Bernhard Miklautz [Tue, 24 Jan 2012 08:04:02 +0000 (09:04 +0100)]
build: Added option WITH_NEON
Enables neon optimized rfx decoder
Marc-André Moreau [Mon, 23 Jan 2012 18:18:47 +0000 (10:18 -0800)]
Merge pull request #363 from pjd/crypto
rdp_client_establish_keys() simplifications.
Marc-André Moreau [Mon, 23 Jan 2012 18:18:20 +0000 (10:18 -0800)]
Merge pull request #362 from bmiklautz/buildsystemfixes
Build system fixes
Pawel Jakub Dawidek [Mon, 23 Jan 2012 17:20:10 +0000 (18:20 +0100)]
- 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.
Bernhard Miklautz [Mon, 23 Jan 2012 13:19:40 +0000 (14:19 +0100)]
build: use WITH_XXX instead of XXX_FOUND
To check if something should be en- or disabled WITH_XXX
should be used and not XXX_FOUND.
If XXX_FOUND is used and something gets disabled afterwards (by setting
WITH_XXX to OFF) it will be compiled in as long as XXX_FOUND is found in
cmake's cache file. So disabling a feature, or option, without
clearing the CMakeCache.txt might result in builds with unwanted
configuration.
Bernhard Miklautz [Mon, 23 Jan 2012 12:46:42 +0000 (13:46 +0100)]
build: Honor REQUIRE if set in find_package
FIND_PACKAGE_HANDLE_STANDARD_ARGS handles REQUIRE only correct if
called with the same package name as find_package was called with.
The returned xxxx_FOUND is still uppercase.
Bernhard Miklautz [Fri, 20 Jan 2012 11:32:27 +0000 (12:32 +0100)]
Changed cmake find prefix for pulseaudio.
Now option (WITH_PULSEAUDIO) and package prefix (PULSEAUDIO_FOUND) match.
Bernhard Miklautz [Fri, 20 Jan 2012 10:37:55 +0000 (11:37 +0100)]
Fixed optimization flags for release builds.
cmake uses CMAKE_C_FLAGS_RELEASE in addition to CMAKE_C_FLAGS for
make based build systems. Without the fix the optimization level
argument is set twice (-O2 -O3) and -O3 was used instead of -O2.
Marc-André Moreau [Sun, 22 Jan 2012 17:27:29 +0000 (09:27 -0800)]
Merge pull request #361 from floppym/client-server-options
cmake: Add options to enable/disable client/server targets.
Mike Gilbert [Sun, 22 Jan 2012 17:26:30 +0000 (12:26 -0500)]
Change ENABLE_{CLIENT,SERVER} to WITH_{CLIENT,SERVER}.
Mike Gilbert [Sun, 22 Jan 2012 17:14:06 +0000 (12:14 -0500)]
cmake: Add options to enable/disable client/server targets.
Marc-André Moreau [Thu, 19 Jan 2012 04:40:43 +0000 (20:40 -0800)]
Merge pull request #358 from pjd/crypto
Crypto
Pawel Jakub Dawidek [Thu, 19 Jan 2012 04:36:23 +0000 (05:36 +0100)]
Whitespace fixes.
Pawel Jakub Dawidek [Thu, 19 Jan 2012 04:07:30 +0000 (05:07 +0100)]
- Simplify security_mac_signature() API.
- Introduce implementation of security_salted_mac_signature() that would be
used to handle packets with SEC_SECURE_CHECKSUM flag.
Pawel Jakub Dawidek [Thu, 19 Jan 2012 03:42:19 +0000 (04:42 +0100)]
Implement signature verification in Server Security Data packet.
Because this signature doesn't protect against anything, only warn
the user if it is invalid.
Pawel Jakub Dawidek [Thu, 19 Jan 2012 03:40:29 +0000 (04:40 +0100)]
Introduce more complete RSA API that implements:
- crypto_rsa_public_encrypt()
- crypto_rsa_public_decrypt()
- crypto_rsa_private_encrypt()
- crypto_rsa_private_decrypt()
Pawel Jakub Dawidek [Thu, 19 Jan 2012 03:39:31 +0000 (04:39 +0100)]
Add Terminal Services Signing Keys.
Pawel Jakub Dawidek [Thu, 19 Jan 2012 03:34:48 +0000 (04:34 +0100)]
Use CRYPTO_*_DIGEST_LENGTH defines instead of magic values.
Pawel Jakub Dawidek [Thu, 19 Jan 2012 03:33:38 +0000 (04:33 +0100)]
Introduce CRYPTO_SHA1_DIGEST_LENGTH and CRYPTO_MD5_DIGEST_LENGTH that hold
number of bytes needed for a given hash.
Marc-André Moreau [Tue, 17 Jan 2012 20:03:09 +0000 (12:03 -0800)]
Merge pull request #353 from bmiklautz/x11includepathfixes
Changed include path for X11 and extensions.
Marc-André Moreau [Tue, 17 Jan 2012 20:02:57 +0000 (12:02 -0800)]
Merge pull request #350 from pjd/fixes
Fixes
Bernhard Miklautz [Tue, 17 Jan 2012 17:22:10 +0000 (18:22 +0100)]
Changed include path for X11 and extensions.
X11 and X11/extensions should not be part of X11 include path
if X11/xxx.h or X11/extensions/xxx.h is used in source files.
Pawel Jakub Dawidek [Tue, 17 Jan 2012 16:55:31 +0000 (17:55 +0100)]
Introduce SIGNATURE_ALG_RSA and KEY_EXCHANGE_ALG_RSA defines and use them
instead of magic values.
Pawel Jakub Dawidek [Tue, 17 Jan 2012 16:52:12 +0000 (17:52 +0100)]
PROTOCOL_RDP is 0, so don't perform bitwise operations on it.
Marc-André Moreau [Tue, 17 Jan 2012 13:27:16 +0000 (05:27 -0800)]
Merge pull request #349 from pjd/mcs_fixes
MCS fixes
Pawel Jakub Dawidek [Tue, 17 Jan 2012 09:45:10 +0000 (10:45 +0100)]
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.
Marc-André Moreau [Mon, 16 Jan 2012 17:52:14 +0000 (12:52 -0500)]
ChangeLog: added FreeRDP 1.0.0 changes
Marc-André Moreau [Mon, 16 Jan 2012 17:17:50 +0000 (12:17 -0500)]
xfreerdp: updated man page
Marc-André Moreau [Mon, 16 Jan 2012 16:54:08 +0000 (11:54 -0500)]
README: update
Marc-André Moreau [Mon, 16 Jan 2012 16:40:18 +0000 (11:40 -0500)]
wfreerdp: fix warnings and color conversion
Marc-André Moreau [Mon, 16 Jan 2012 15:18:50 +0000 (07:18 -0800)]
Merge pull request #347 from pjd/pullreq
Use of stream_read() / stream_write()
Marc-André Moreau [Mon, 16 Jan 2012 15:13:23 +0000 (10:13 -0500)]
libfreerdp-gdi: fix gdi_Glyph_Free() segfault
Pawel Jakub Dawidek [Mon, 16 Jan 2012 01:50:02 +0000 (02:50 +0100)]
Make use of stream_read().
Pawel Jakub Dawidek [Mon, 16 Jan 2012 01:24:26 +0000 (02:24 +0100)]
Use stream_read() instead of memcpy() + stream_seek().
Pawel Jakub Dawidek [Mon, 16 Jan 2012 01:15:13 +0000 (02:15 +0100)]
Use stream_write() instead of memcpy() + stream_seek().
Pawel Jakub Dawidek [Sun, 15 Jan 2012 19:52:27 +0000 (20:52 +0100)]
If we are server, our encryption key is client's decryption key and vice-versa.
Marc-André Moreau [Mon, 16 Jan 2012 14:20:54 +0000 (09:20 -0500)]
channels/drdynvc/audin: fix typo in header
Marc-André Moreau [Mon, 16 Jan 2012 13:27:07 +0000 (08:27 -0500)]
libfreerdp-core: fix FreeBSD compilation
Marc-André Moreau [Mon, 16 Jan 2012 11:51:15 +0000 (03:51 -0800)]
Merge pull request #344 from atong/master
various glyph cache resource fixes
Anthony Tong [Sun, 15 Jan 2012 20:35:08 +0000 (15:35 -0500)]
glyph-cache: free pixmap, cache entries, cache fragments, and reuse secondary glyph cache buffers
Marc-André Moreau [Sun, 15 Jan 2012 20:20:39 +0000 (15:20 -0500)]
libfreerdp-core: add integer overflow check in GCC
Marc-André Moreau [Sun, 15 Jan 2012 20:16:32 +0000 (15:16 -0500)]
libfreerdp-core: refactor header encoding fix
Marc-André Moreau [Sun, 15 Jan 2012 20:01:16 +0000 (15:01 -0500)]
libfreerdp-core: apply RDP signature verification patch from Pawel Jakub Dawidek
Marc-André Moreau [Sat, 14 Jan 2012 21:35:19 +0000 (13:35 -0800)]
Merge pull request #342 from dorianj/master
Better handling of --version and --help (don't print errors for these)
Dorian Johnson [Sat, 14 Jan 2012 21:30:48 +0000 (15:30 -0600)]
Change freerdp_parse_args to return different values for error vs --help/--version, and change xfreerdp to only report real errors
Marc-André Moreau [Sat, 14 Jan 2012 19:42:36 +0000 (14:42 -0500)]
libfreerdp-core: pad larger portion of rdpSettings
Marc-André Moreau [Sat, 14 Jan 2012 18:33:04 +0000 (13:33 -0500)]
libfreerdp-core: added freerdp_get_version()
Anthony Tong [Sat, 14 Jan 2012 16:43:40 +0000 (10:43 -0600)]
cunit: fix test_read_fast_index_order()
Marc-André Moreau [Sat, 14 Jan 2012 00:11:37 +0000 (16:11 -0800)]
Merge pull request #341 from sunds/master
Fix drawing errors for remote app, issue #229
David Sundstrom [Sat, 14 Jan 2012 00:07:27 +0000 (18:07 -0600)]
Resolve a race condition between a local move update to the RDP server, GDI orders, and RAIL orders. Previously we could receive new GDI orders for the new window position before we received the RAIL order for the new position. The caused drawing errors.
Also correct some errors in managing the GDI damage region.
Marc-André Moreau [Fri, 13 Jan 2012 23:39:09 +0000 (18:39 -0500)]
libfreerdp-core: cleanup warnings in mppc.c
Anthony Tong [Fri, 13 Jan 2012 22:32:14 +0000 (17:32 -0500)]
xfreerdp: fix win_title string handling from #247
Marc-André Moreau [Fri, 13 Jan 2012 22:14:16 +0000 (17:14 -0500)]
cunit: fixed license tests
Marc-André Moreau [Fri, 13 Jan 2012 22:11:34 +0000 (17:11 -0500)]
cunit: fix orders tests
Marc-André Moreau [Fri, 13 Jan 2012 21:38:34 +0000 (16:38 -0500)]
cunit: fix polyline and fast index tests
Marc-André Moreau [Fri, 13 Jan 2012 21:20:36 +0000 (16:20 -0500)]
libfreerdp-core: fix incorrect length in share control header, fix VRDP connectivity
Anthony Tong [Fri, 13 Jan 2012 14:38:39 +0000 (09:38 -0500)]
cunit: fix build broken by jiten19
Marc-André Moreau [Wed, 11 Jan 2012 18:29:12 +0000 (10:29 -0800)]
Merge pull request #340 from atong/master
libfreerdp-core: fix reuse issue with osb's deleteList
Anthony Tong [Wed, 11 Jan 2012 18:24:01 +0000 (13:24 -0500)]
libfreerdp-core: fix reuse issue with osb's deleteList
Marc-André Moreau [Wed, 11 Jan 2012 04:04:10 +0000 (23:04 -0500)]
libfreerdp-core: fix encoding of capability set headers
Marc-André Moreau [Wed, 11 Jan 2012 02:32:08 +0000 (21:32 -0500)]
libfreerdp-core: fix draw nine grid cache capability set encoding bug