Marc-André Moreau
8f2b2be9f2
libfreerdp-core: integrate new RTS pdu functions from denis
2015-02-12 13:14:43 -05:00
Marc-André Moreau
c92e82b3dc
libfreerdp-core: improve TSG virtual connection and channel management
2015-02-12 12:03:15 -05:00
Marc-André Moreau
75cad064f1
libfreerdp-core: refactor tsg virtual connection, in/out channels
2015-02-11 15:26:22 -05:00
Marc-André Moreau
70fab69347
libfreerdp-core: gateway connection refactoring
2015-02-11 14:27:29 -05:00
Marc-André Moreau
5fbcdf5b3d
libfreerdp-core: make tsg rpc connection event-driven, fix race condition on connection
2015-02-04 11:18:27 -05:00
Marc-André Moreau
1bf0e2ee03
libfreerdp-core: add more IN/OUT gateway channel states
2015-02-03 16:33:45 -05:00
Marc-André Moreau
5aea07d401
libfreerdp-core: add better state machine transitions to ts gateway
2015-02-02 18:50:26 -05:00
Marc-André Moreau
e4f99834d0
libfreerdp-core: make tsg threadless
2015-02-02 11:50:56 -05:00
Marc-André Moreau
bfe1c31529
libfreerdp-core: remove receive queue, make tsg connection sequence more event-driven
2015-02-02 08:19:07 -05:00
Marc-André Moreau
4239a1d4f4
libfreerdp-core: remove TS Gateway send queue
2015-02-01 20:47:43 -05:00
Marc-André Moreau
4eeabba933
libfreerdp-core: restructure RPC connection sequence
2015-02-01 18:50:21 -05:00
Marc-André Moreau
9406ac188c
libfreerdp-core: use ringbuffer for TS Gateway receive pipe
2015-02-01 13:09:28 -05:00
Marc-André Moreau
85191391d5
libfreerdp-core: simplify TS Gateway RPC fragment receiving
2015-01-31 16:56:25 -05:00
Marc-André Moreau
701186e461
libfreerdp-core: silence false error on server disconnect
2015-01-15 14:52:35 -05:00
Marc-André Moreau
fc38dcc775
libfreerdp-core: gateway cleanup
2015-01-13 13:50:46 -05:00
Marc-André Moreau
e2f377ae11
libfreerdp-core: fix TSG thread shutdown and input freeze problem
2014-12-15 09:42:04 -05:00
Armin Novak
2f519d7f16
Replaced logging in libfreerdp with wlog defines.
2014-09-15 08:48:46 +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
Marc-André Moreau
8c8a82c31f
libfreerdp-utils: purge old STREAM utils
2013-03-21 16:45:25 -04:00
Marc-André Moreau
92bf3e4ae0
libfreerdp-utils: remove sleep utils in favor of WinPR
2012-12-14 00:58:48 -05:00
Marc-André Moreau
808fc210e3
libfreerdp-utils: remove hexdump utils in favor of WinPR utils
2012-12-13 23:54:54 -05:00
Marc-André Moreau
6450ecd67f
libfreerdp-core: fix windows build
2012-12-12 23:18:20 -05:00
Marc-André Moreau
7ff2be09b2
libfreerdp-core: more TSG memory cleanup
2012-12-12 22:03:40 -05:00
Marc-André Moreau
387a152299
libfreerdp-core: TSG reassembly refactoring
2012-12-12 15:55:42 -05:00
Marc-André Moreau
d3e0537d0d
libfreerdp-core: more TSG memory cleanup
2012-12-12 00:49:15 -05:00
Marc-André Moreau
3aeb9eb197
libfreerdp-core: TSG partial cleanup
2012-12-11 23:34:51 -05:00
Marc-André Moreau
dc978a967c
libfreerdp-core: improve receiving of TSG data
2012-12-11 19:17:57 -05:00
Marc-André Moreau
db91555564
libfreerdp-core: improved TSG asynchronicity
2012-12-10 18:56:53 -05:00
Marc-André Moreau
0f3d80d63f
libfreerdp-core: start implementation of asynchronous RPC fragment receive
2012-12-10 15:43:07 -05:00
Marc-André Moreau
6e07570dda
libwinpr-utils: simplify stream utils
2012-12-10 14:23:27 -05:00
Marc-André Moreau
731e606c15
libfreerdp-core: start handling client call state
2012-12-07 21:09:55 -05:00
Marc-André Moreau
2f6192532f
libfreerdp-core: map DCE error codes
2012-12-07 18:33:52 -05:00
Marc-André Moreau
2215e0a57a
libfreerdp-core: improve comments for TS Gateway
2012-12-07 17:41:12 -05:00
Marc-André Moreau
98c4cb56a1
libfreerdp-core: set TSG non-blocking mode
2012-12-06 16:49:50 -05:00
Marc-André Moreau
875c556d13
libfreerdp-core: change interlocked singly-linked list to synchronized Queue
2012-12-05 16:04:01 -05:00
Marc-André Moreau
4fe3501bc4
libfreerdp-core: refactoring of sequencing of TSG connection
2012-11-29 01:33:19 -05:00
Marc-André Moreau
dde2e60a56
libfreerdp-core: refactor RPC receiving as a synchronized queue
2012-11-28 22:03:18 -05:00
Marc-André Moreau
3634a1bbf1
libfreerdp-core: encapsulate received RPC PDU
2012-11-28 21:25:01 -05:00
Marc-André Moreau
5faebcd77a
libfreerdp-core: start asynchronous receiving
2012-11-28 20:30:03 -05:00
Marc-André Moreau
3936a19914
libfreerdp-core: add asynchronous send queue
2012-11-28 13:38:01 -05:00
Marc-André Moreau
d0792ea4d1
libwinpr-synch: implement pipe-based semaphore
2012-11-28 12:47:04 -05:00
Marc-André Moreau
335add832d
libfreerdp-core: split code from rpc.c to rpc_bind.c and rpc_fault.c
2012-11-28 00:32:12 -05:00
Marc-André Moreau
536d7be180
libfreerdp-core: move RTS pdu signature checking to separate file
2012-11-27 22:27:04 -05:00
Marc-André Moreau
83a9af128f
libfreerdp-core: move TSG code in subdirectory
2012-11-27 18:52:08 -05:00