Hardening [Wed, 21 May 2014 16:32:59 +0000 (18:32 +0200)]
Fix some corner cases in ringbuffer and make unitary test have no leak
Hardening [Wed, 21 May 2014 16:17:39 +0000 (18:17 +0200)]
Make ringbuffer C89 aware for VC
Hardening [Wed, 21 May 2014 15:32:14 +0000 (17:32 +0200)]
Allow transport_write calls to be non-blocking
This big patch allows to have non-blocking writes. To achieve
this, it slightly changes the way transport is handled. The misc transport
layers are handled with OpenSSL BIOs. In the chain we insert a
bufferedBIO that will bufferize write calls that couldn't be honored.
For an access with Tls security the BIO chain would look like this:
FreeRdp Code ===> SSL bio ===> buffered BIO ===> socket BIO
The buffered BIO will store bytes that couldn't be send because of
blocking write calls.
This patch also rework TSG so that it would look like this in the
case of SSL security with TSG:
(TSG in)
> SSL BIO => buffered BIO ==> socket BIO
/
FreeRdp => SSL BIO => TSG BIO
\
> SSL BIO => buffered BIO ==> socket BIO
(TSG out)
So from the FreeRDP point of view sending something is only BIO_writing
on the frontBio (last BIO on the left).
Hardening [Wed, 21 May 2014 13:54:25 +0000 (15:54 +0200)]
Fix OOM situation
Hardening [Wed, 21 May 2014 08:19:13 +0000 (10:19 +0200)]
Print function name when emiting an error
Hardening [Tue, 20 May 2014 20:39:21 +0000 (22:39 +0200)]
Add a ringbuffer implementation targetting byte sending
This adds a ringbuffer implementation that targets bytes sending.
The ringbuffer can grow when there's not enough room, that's why it's
not thread-safe (locking must be done externally). It will be shrinked
to its initial size as soon as the used bytes are the half of the
initial size.
Marc-André Moreau [Wed, 21 May 2014 15:02:16 +0000 (11:02 -0400)]
Merge pull request #1854 from zhangzl2013/floatbar
wfreerdp-floatbar: fix bug in non-fullscreen mode.
Marc-André Moreau [Wed, 21 May 2014 15:01:53 +0000 (11:01 -0400)]
Merge pull request #1853 from zhangzl2013/async
wfreerdp: add async input, update, transport and channels' events
Marc-André Moreau [Wed, 21 May 2014 15:01:12 +0000 (11:01 -0400)]
Merge pull request #1852 from orosam/auth3fix
Fix misplaced sec_trailer in rpc_auth_3 PDU
Marc-André Moreau [Wed, 21 May 2014 14:57:27 +0000 (10:57 -0400)]
Merge pull request #1845 from SBoyNumber1/DiskDrives
Removed autosharing of all disk drives during redirect of any drive.
Marc-André Moreau [Wed, 21 May 2014 14:56:56 +0000 (10:56 -0400)]
Merge pull request #1844 from caramorsimon/tokenrouting
Test for CRLF (0x0D0A) termination on the routing token
Marc-André Moreau [Wed, 21 May 2014 14:53:47 +0000 (10:53 -0400)]
Merge pull request #1826 from Hobby-Student/master
fix FreeBSD compile errors
Bernhard Miklautz [Wed, 21 May 2014 09:21:02 +0000 (11:21 +0200)]
Merge pull request #1762 from zhangzl2013/wfreerdp
wfreerdp: fix incorrect line color.
Zhang Zhaolong [Wed, 21 May 2014 08:13:55 +0000 (16:13 +0800)]
wfreerdp-floatbar: fix bug in non-fullscreen mode.
Zhang Zhaolong [Wed, 21 May 2014 06:52:57 +0000 (14:52 +0800)]
wfreerdp: add async input, update, transport and channels' events handling.
Hardening [Tue, 20 May 2014 20:10:17 +0000 (22:10 +0200)]
Merge pull request #1629 from bmiklautz/update_pull_1609
Android jpeg build enhancement
Sandor Oroszi [Tue, 20 May 2014 15:15:26 +0000 (17:15 +0200)]
libfreerdp-core: fix misplaced sec_trailer in rpc_auth_3 PDU
Hardening [Tue, 20 May 2014 13:14:22 +0000 (15:14 +0200)]
Merge pull request #1430 from sukhodolin/Fixes
Fix debug output on Win32
Hardening [Tue, 20 May 2014 09:17:47 +0000 (11:17 +0200)]
Merge pull request #1839 from hardening/base64
Changes for base64
Bernhard Miklautz [Mon, 19 May 2014 14:23:06 +0000 (16:23 +0200)]
Merge pull request #1840 from hardening/valgrind
Adds some support for valgrind helpers
caramorsimon [Sun, 18 May 2014 20:32:26 +0000 (21:32 +0100)]
Test for RoutingTokenLength before checking against termination chars
SBoyNumber1 [Sat, 17 May 2014 20:05:21 +0000 (23:05 +0300)]
Removed autosharing of all disk drives during redirect of any drive.
caramorsimon [Fri, 16 May 2014 15:19:22 +0000 (16:19 +0100)]
Test for CRLF (0x0D0A) termination on the routing token before trying to add it again
Hardening [Mon, 12 May 2014 16:01:29 +0000 (18:01 +0200)]
Adds some support for valgrind helpers
This patch adds an option to compile freerdp in a valgrind compliant way.
The purpose is to ease memchecking when connecting with TLS. We mark bytes
retrieved from SSL_read() as plainly defined to prevent the undefined contamination.
With the patch and the option activated you get a single warning at connection
during the handshake, and nothing after.
Hardening [Sun, 11 May 2014 20:42:01 +0000 (22:42 +0200)]
Changes for base64
This patch changes the prototype for decode_base64 so that the encode / decode
method are consistant (encode(BYTE *) => char* and decode(char*) => BYTE*).
It also does some improvements with unrolling loops so that end conditions are
tested only at the end.
The patch also adds some unitary tests.
Before the patch base64_decode() made valgrind complain about uninitialized
bits, after valgrind is happy and very quiet.
Marc-André Moreau [Sat, 10 May 2014 14:59:38 +0000 (10:59 -0400)]
Merge pull request #1837 from hardening/const_cert_fix
Const cert fix
Hardening [Fri, 9 May 2014 20:37:47 +0000 (22:37 +0200)]
Treat OOM in GCC certificates
This patch treats OOM cases and do a trivial cleanup
Hardening [Fri, 9 May 2014 20:36:50 +0000 (22:36 +0200)]
Add some const modifiers
This allows these functions to be used with const buffers.
Marc-André Moreau [Thu, 8 May 2014 22:28:59 +0000 (18:28 -0400)]
Merge pull request #1836 from awakecoding/master
LBInfo, SmartCard, XCrush, Cleanup
Marc-André Moreau [Thu, 8 May 2014 22:02:02 +0000 (18:02 -0400)]
freerdp: fix several type related warnings
Marc-André Moreau [Thu, 8 May 2014 21:22:39 +0000 (17:22 -0400)]
libfreerdp-core: properly reset internal RDP state on reconnect
Marc-André Moreau [Thu, 8 May 2014 21:17:39 +0000 (17:17 -0400)]
libwinpr-pipe: fix circular dependency
Marc-André Moreau [Thu, 8 May 2014 20:38:21 +0000 (16:38 -0400)]
Merge branch 'awakecoding' of github.com:vworkspace/FreeRDP
Conflicts:
winpr/libwinpr/pipe/pipe.c
Marc-André Moreau [Thu, 8 May 2014 20:11:55 +0000 (16:11 -0400)]
Merge branch 'xcrush' of github.com:awakecoding/FreeRDP
Marc-André Moreau [Thu, 8 May 2014 20:11:42 +0000 (16:11 -0400)]
Merge branch 'master' of github.com:FreeRDP/FreeRDP
Marc-André Moreau [Thu, 8 May 2014 20:09:18 +0000 (16:09 -0400)]
Merge pull request #1825 from hardening/compil_warnings
Fix some compilation warnings
Marc-André Moreau [Thu, 8 May 2014 20:08:42 +0000 (16:08 -0400)]
Merge pull request #1835 from SBoyNumber1/rfx-issue1738
Fixed issue rfx problem: no rects #1738.
Marc-André Moreau [Thu, 8 May 2014 20:00:52 +0000 (16:00 -0400)]
Merge pull request #1822 from hardening/sound_hardening
Fixes in the server-side sound channel
Marc-André Moreau [Thu, 8 May 2014 19:59:17 +0000 (15:59 -0400)]
Merge pull request #1834 from bmiklautz/fix/misc
Misc small fixes
Marc-André Moreau [Thu, 8 May 2014 19:58:50 +0000 (15:58 -0400)]
Merge pull request #1833 from bmiklautz/fix/makecert
makecert: install header file
Marc-André Moreau [Thu, 8 May 2014 19:58:29 +0000 (15:58 -0400)]
Merge pull request #1832 from bmiklautz/feat/channel_funcs
wtsvc: add extended channel handling functions
Marc-André Moreau [Thu, 8 May 2014 19:57:46 +0000 (15:57 -0400)]
Merge pull request #1831 from itsmikeeng/patch-1
Fixed padding in settings.h
Marc-André Moreau [Thu, 8 May 2014 19:56:19 +0000 (15:56 -0400)]
Merge pull request #1829 from bmiklautz/fix/cxxflags
Detect and set CXX flags separately
Marc-André Moreau [Thu, 8 May 2014 19:24:33 +0000 (15:24 -0400)]
channels/smartcard: cleanup
SBoyNumber1 [Thu, 8 May 2014 16:20:28 +0000 (19:20 +0300)]
Fixed issue rfx problem: no rects #1738.
Added clipping of whole session in case when server sends zero rects.
Marc-André Moreau [Thu, 8 May 2014 01:16:05 +0000 (21:16 -0400)]
channels/smartcard: better selection of async vs sync processing of IRPs
Marc-André Moreau [Wed, 7 May 2014 21:50:09 +0000 (17:50 -0400)]
channels/rdpdr: remove sequenceId usage
Marc-André Moreau [Wed, 7 May 2014 21:41:53 +0000 (17:41 -0400)]
channels/smartcard: add improve completed IRP management
Bernhard Miklautz [Wed, 7 May 2014 19:23:54 +0000 (21:23 +0200)]
winpr-file: harden GetNamePipeFileDescriptor
Ensure that GetNamePipeFileDescriptor returns an error
if the supplied handle isn't a named pipe.
Bernhard Miklautz [Wed, 7 May 2014 19:09:34 +0000 (21:09 +0200)]
makecert: install header file
install the makecert header file for the exported static libary to
winpr/tools/makecert.h
Bernhard Miklautz [Wed, 7 May 2014 18:56:49 +0000 (20:56 +0200)]
sample channel: fix build
sample channel is static and not dynamic therefore dynamic
should be set to FALSE in add_channel_client_library
Bernhard Miklautz [Wed, 7 May 2014 18:36:22 +0000 (20:36 +0200)]
wtsvc: use _strnicmp instead of strncasecmp
_strnicmp is available for platforms
Bernhard Miklautz [Wed, 7 May 2014 18:20:02 +0000 (20:20 +0200)]
wtsvc: add extended channel handling functions
itsmikeeng [Wed, 7 May 2014 17:50:14 +0000 (10:50 -0700)]
Fixed padding
Bernhard Miklautz [Wed, 7 May 2014 14:28:58 +0000 (16:28 +0200)]
Merge pull request #1830 from hardening/certificate_fix
Fix null certificate that is not an error
Hardening [Wed, 7 May 2014 14:12:38 +0000 (16:12 +0200)]
Fix null certificate that is not an error
Marc-André Moreau [Tue, 6 May 2014 22:19:54 +0000 (18:19 -0400)]
channels/smartcard: add sequence id to IRPs for easier cancellation
Marc-André Moreau [Tue, 6 May 2014 21:42:10 +0000 (17:42 -0400)]
channels/smartcard: add rgSCardContextList
Marc-André Moreau [Tue, 6 May 2014 18:25:19 +0000 (11:25 -0700)]
channels/smartcard: avoid crash on SCardStatusA failure
Marc-André Moreau [Tue, 6 May 2014 17:00:44 +0000 (10:00 -0700)]
channels/smartcard: improve debug output, fix GetStatusChange SCARD_E_CANCELLED, fix SCardGetAttrib current protocol type
Marc-André Moreau [Tue, 6 May 2014 00:47:30 +0000 (20:47 -0400)]
libfreerdp-codec: start working on xcrush compressor
Marc-André Moreau [Mon, 5 May 2014 22:04:20 +0000 (18:04 -0400)]
libwinpr-utils: flush file after each write in wlog
Marc-André Moreau [Mon, 5 May 2014 21:27:29 +0000 (17:27 -0400)]
libwinpr-smartcard: fix SCardGetAttrib for friendly name (unicode)
Marc-André Moreau [Mon, 5 May 2014 20:26:31 +0000 (16:26 -0400)]
libfreerdp-codec: initial RDP6.1 XCrush bulk data decompression support
Marc-André Moreau [Mon, 5 May 2014 01:50:17 +0000 (21:50 -0400)]
libfreerdp-codec: start working on XCrush decompressor
Marc-André Moreau [Sun, 4 May 2014 23:46:40 +0000 (19:46 -0400)]
libfreerdp-codec: stub XCrush data compression
Marc-André Moreau [Sat, 3 May 2014 23:02:17 +0000 (19:02 -0400)]
libwinpr-smartcard: start handling SCardControl control code conversions
Marc-André Moreau [Sat, 3 May 2014 21:07:30 +0000 (17:07 -0400)]
libwinpr-smartcard: improve SCardGetAttrib, fix null SCARDCONTEXT usage in SCardListReaders
Marc-André Moreau [Sat, 3 May 2014 18:20:17 +0000 (14:20 -0400)]
libwinpr-smartcard: fix pcsc-lite SCARD_IO_REQUEST incompatibility
Marc-André Moreau [Sat, 3 May 2014 17:49:50 +0000 (13:49 -0400)]
libwinpr-smartcard: fix PCSC incompatible type definitions
Hardening [Fri, 2 May 2014 20:45:38 +0000 (22:45 +0200)]
Fixed bad check
Hardening [Fri, 2 May 2014 19:53:52 +0000 (21:53 +0200)]
Fix ChannelEvent
Hobby-Student [Fri, 2 May 2014 16:27:03 +0000 (18:27 +0200)]
FreeBSD compile errors - fix timezone
Hobby-Student [Thu, 1 May 2014 19:25:33 +0000 (21:25 +0200)]
FreeBSD compile errors - fix typecast
Hobby-Student [Thu, 1 May 2014 17:47:58 +0000 (19:47 +0200)]
FreeBSD compile errors - fix typo #3
Hobby-Student [Thu, 1 May 2014 13:24:11 +0000 (15:24 +0200)]
FreeBSD compile errors - add comments
Hobby-Student [Thu, 1 May 2014 13:19:09 +0000 (15:19 +0200)]
FreeBSD compile errors - fix typo #2
Hobby-Student [Thu, 1 May 2014 13:17:54 +0000 (15:17 +0200)]
FreeBSD compile errors - fix typo
Hobby-Student [Thu, 1 May 2014 13:09:35 +0000 (15:09 +0200)]
FreeBSD compile errors
Marc-André Moreau [Wed, 30 Apr 2014 21:47:37 +0000 (17:47 -0400)]
libfreerdp-core: avoid reusing LoadBalanceInfo on reconnection
Bernhard Miklautz [Wed, 30 Apr 2014 10:11:28 +0000 (12:11 +0200)]
build: define -D__FILE__ only for Release builds
Bernhard Miklautz [Wed, 30 Apr 2014 10:05:51 +0000 (12:05 +0200)]
build: check c++ compliler flags seperately
Flags for C and C++ compiler need to be checked seperately since
the c and c++ compiler might not support the same flags (even if
they are the same version).
Vic Lee [Tue, 29 Apr 2014 15:05:30 +0000 (23:05 +0800)]
tls: WSAGetLastError should be used on Windows to check system socket error.
Hardening [Tue, 29 Apr 2014 14:02:31 +0000 (16:02 +0200)]
Fix some compilation warnings
Vic Lee [Tue, 29 Apr 2014 13:48:11 +0000 (21:48 +0800)]
tls: do not kill the connection for non-fatal openssl error codes.
Hardening [Tue, 29 Apr 2014 08:39:07 +0000 (10:39 +0200)]
Remove a warning
Hardening [Tue, 29 Apr 2014 08:32:16 +0000 (10:32 +0200)]
More fixes in DSP
Vic Lee [Tue, 29 Apr 2014 06:21:37 +0000 (14:21 +0800)]
drdynvc: fix an incorrect length indicator.
Vic Lee [Tue, 29 Apr 2014 06:20:58 +0000 (14:20 +0800)]
audin: remove unused variable.
Hardening [Mon, 28 Apr 2014 22:59:41 +0000 (00:59 +0200)]
Fixes in the server-side sound channel
This patch:
* treats OOM situations
* adds checks when reading audio channel messages
Marc-André Moreau [Mon, 28 Apr 2014 20:44:52 +0000 (16:44 -0400)]
libfreerdp-core: fix potential crash on session redirection failure
Marc-André Moreau [Mon, 28 Apr 2014 16:40:44 +0000 (12:40 -0400)]
Merge pull request #1821 from bmiklautz/fix/fdsapi_load
wtsapi: library loading consolidation and fallback
Bernhard Miklautz [Mon, 28 Apr 2014 14:54:58 +0000 (16:54 +0200)]
wtsapi: add fallback to load freerds lib
Try to load libfreerds-fdsapi.so directly if the freerds ini file
isn't found. This adds a fallback that uses the systems library
loading mechanisms (e.g LD_LIBRARY_PATH).
Might also be required for older version of FreeRDS.
Bernhard Miklautz [Mon, 28 Apr 2014 14:48:24 +0000 (16:48 +0200)]
wtsapi: replaced printf with fprintf
Bernhard Miklautz [Mon, 28 Apr 2014 14:46:07 +0000 (16:46 +0200)]
wtsapi: consolidate lib initialization and load
Move duplicated code to LoadAndInitialize.
Marc-André Moreau [Mon, 28 Apr 2014 02:45:52 +0000 (22:45 -0400)]
Merge pull request #1820 from awakecoding/master
SmartCard Fixes, Ini File Parser, Message-Only Windows, WTSAPI Improvements
Marc-André Moreau [Mon, 28 Apr 2014 02:35:04 +0000 (22:35 -0400)]
winpr: fix type redefinition
Marc-André Moreau [Mon, 28 Apr 2014 02:23:42 +0000 (22:23 -0400)]
libwinpr-smartcard: fix failing unit test
Marc-André Moreau [Mon, 28 Apr 2014 02:05:31 +0000 (22:05 -0400)]
winpr: check for __LP64__ for DWORD and LONG definitions
Marc-André Moreau [Mon, 28 Apr 2014 01:54:21 +0000 (21:54 -0400)]
libwinpr-wtsapi: fix failing tests