Commit Graph

6344 Commits

Author SHA1 Message Date
Hardening
de1c08736f Fix ringbuffer_write() to use const BYTE * instead of const void * 2014-05-21 19:12:51 +02:00
Hardening
d8eb1f284f Updated license headers 2014-05-21 18:44:49 +02:00
Hardening
a04843bc9e Fix some corner cases in ringbuffer and make unitary test have no leak 2014-05-21 18:32:59 +02:00
Hardening
5234e05843 Make ringbuffer C89 aware for VC 2014-05-21 18:17:39 +02:00
Hardening
dd6d829550 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).
2014-05-21 17:42:31 +02:00
Hardening
0376dcd065 Fix OOM situation 2014-05-21 17:27:36 +02:00
Hardening
9c18ae5bee Print function name when emiting an error 2014-05-21 17:27:36 +02:00
Hardening
0ea1dc43ec 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.
2014-05-21 17:27:36 +02:00
Marc-André Moreau
94a836078f Merge pull request #1854 from zhangzl2013/floatbar
wfreerdp-floatbar: fix bug in non-fullscreen mode.
2014-05-21 11:02:16 -04:00
Marc-André Moreau
422a279682 Merge pull request #1853 from zhangzl2013/async
wfreerdp: add async input, update, transport and channels' events
2014-05-21 11:01:53 -04:00
Marc-André Moreau
7113cf2858 Merge pull request #1852 from orosam/auth3fix
Fix misplaced sec_trailer in rpc_auth_3 PDU
2014-05-21 11:01:12 -04:00
Marc-André Moreau
04dc037666 Merge pull request #1845 from SBoyNumber1/DiskDrives
Removed autosharing of all disk drives during redirect of any drive.
2014-05-21 10:57:27 -04:00
Marc-André Moreau
6f8fda247b Merge pull request #1844 from caramorsimon/tokenrouting
Test for CRLF (0x0D0A) termination on the routing token
2014-05-21 10:56:56 -04:00
Marc-André Moreau
472c231876 Merge pull request #1826 from Hobby-Student/master
fix FreeBSD compile errors
2014-05-21 10:53:47 -04:00
Bernhard Miklautz
92f74d15e8 Merge pull request #1762 from zhangzl2013/wfreerdp
wfreerdp: fix incorrect line color.
2014-05-21 11:21:02 +02:00
Zhang Zhaolong
5415577bde wfreerdp-floatbar: fix bug in non-fullscreen mode. 2014-05-21 16:13:55 +08:00
Zhang Zhaolong
4fc7a3c9ad wfreerdp: add async input, update, transport and channels' events handling. 2014-05-21 14:52:57 +08:00
Hardening
86489f1c9a Merge pull request #1629 from bmiklautz/update_pull_1609
Android jpeg build enhancement
2014-05-20 22:10:17 +02:00
Sandor Oroszi
d447f122c3 libfreerdp-core: fix misplaced sec_trailer in rpc_auth_3 PDU 2014-05-20 17:15:26 +02:00
Hardening
5aa5dd4609 Merge pull request #1430 from sukhodolin/Fixes
Fix debug output on Win32
2014-05-20 15:14:22 +02:00
Hardening
c0087832ad Merge pull request #1839 from hardening/base64
Changes for base64
2014-05-20 11:17:47 +02:00
Bernhard Miklautz
29710ae74a Merge pull request #1840 from hardening/valgrind
Adds some support for valgrind helpers
2014-05-19 16:23:06 +02:00
caramorsimon
8e77192ed8 Test for RoutingTokenLength before checking against termination chars 2014-05-18 21:32:26 +01:00
SBoyNumber1
4865cbd589 Removed autosharing of all disk drives during redirect of any drive. 2014-05-17 23:05:21 +03:00
caramorsimon
a561e246e8 Test for CRLF (0x0D0A) termination on the routing token before trying to add it again 2014-05-16 16:19:22 +01:00
Hardening
729c24cedb 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.
2014-05-12 18:01:29 +02:00
Hardening
9f1d0201ec 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.
2014-05-11 22:49:10 +02:00
Marc-André Moreau
8abc0edd3f Merge pull request #1837 from hardening/const_cert_fix
Const cert fix
2014-05-10 10:59:38 -04:00
Hardening
e79c6b7d68 Treat OOM in GCC certificates
This patch treats OOM cases and do a trivial cleanup
2014-05-09 22:37:47 +02:00
Hardening
50f1f0df6f Add some const modifiers
This allows these functions to be used with const buffers.
2014-05-09 22:36:50 +02:00
Marc-André Moreau
3b47715a78 Merge pull request #1836 from awakecoding/master
LBInfo, SmartCard, XCrush, Cleanup
2014-05-08 18:28:59 -04:00
Marc-André Moreau
a202fe4057 freerdp: fix several type related warnings 2014-05-08 18:02:02 -04:00
Marc-André Moreau
49975d7da5 libfreerdp-core: properly reset internal RDP state on reconnect 2014-05-08 17:22:39 -04:00
Marc-André Moreau
06d36c7084 libwinpr-pipe: fix circular dependency 2014-05-08 17:17:39 -04:00
Marc-André Moreau
4dc6ffdaaa Merge branch 'awakecoding' of github.com:vworkspace/FreeRDP
Conflicts:
	winpr/libwinpr/pipe/pipe.c
2014-05-08 16:38:21 -04:00
Marc-André Moreau
1c081c965f Merge branch 'xcrush' of github.com:awakecoding/FreeRDP 2014-05-08 16:11:55 -04:00
Marc-André Moreau
b0a9d7d690 Merge branch 'master' of github.com:FreeRDP/FreeRDP 2014-05-08 16:11:42 -04:00
Marc-André Moreau
c2bdd5d413 Merge pull request #1825 from hardening/compil_warnings
Fix some compilation warnings
2014-05-08 16:09:18 -04:00
Marc-André Moreau
fab699badb Merge pull request #1835 from SBoyNumber1/rfx-issue1738
Fixed issue rfx problem: no rects #1738.
2014-05-08 16:08:42 -04:00
Marc-André Moreau
0cef8635ff Merge pull request #1822 from hardening/sound_hardening
Fixes in the server-side sound channel
2014-05-08 16:00:52 -04:00
Marc-André Moreau
a4df5d8abb Merge pull request #1834 from bmiklautz/fix/misc
Misc small fixes
2014-05-08 15:59:17 -04:00
Marc-André Moreau
0a7fa7ae41 Merge pull request #1833 from bmiklautz/fix/makecert
makecert: install header file
2014-05-08 15:58:50 -04:00
Marc-André Moreau
8b4b506afd Merge pull request #1832 from bmiklautz/feat/channel_funcs
wtsvc: add extended channel handling functions
2014-05-08 15:58:29 -04:00
Marc-André Moreau
b5f3905c7c Merge pull request #1831 from itsmikeeng/patch-1
Fixed padding in settings.h
2014-05-08 15:57:46 -04:00
Marc-André Moreau
c3418f543f Merge pull request #1829 from bmiklautz/fix/cxxflags
Detect and set CXX flags separately
2014-05-08 15:56:19 -04:00
Marc-André Moreau
894ec8c4aa channels/smartcard: cleanup 2014-05-08 15:24:33 -04:00
SBoyNumber1
f8c9f7a486 Fixed issue rfx problem: no rects #1738.
Added clipping of whole session in case when server sends zero rects.
2014-05-08 19:20:28 +03:00
Marc-André Moreau
81be8b2473 channels/smartcard: better selection of async vs sync processing of IRPs 2014-05-07 21:16:05 -04:00
Marc-André Moreau
e7408089bd channels/rdpdr: remove sequenceId usage 2014-05-07 17:50:09 -04:00
Marc-André Moreau
67f691f90a channels/smartcard: add improve completed IRP management 2014-05-07 17:41:53 -04:00