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
8a81208059
libfreerdp-core: move server-side virtual channels back into core
2014-02-15 17:42:59 -05:00
Marc-André Moreau
1fab70504f
libfreerdp-core: properly attach tcp event handle for peers
2013-07-20 22:34:05 -04:00
Marc-André Moreau
208c9f844a
freerdp: fix core API bugs
2013-06-13 21:34:46 -04:00
Vic Lee
104ff8169d
include: add missing extern C decls.
2013-01-22 22:48:52 +08:00
Marc-André Moreau
709e66a596
libfreerdp: header cleanup
2012-12-14 00:25:48 -05:00
Corey C
0905ae6f1f
wfreerdp-server: merged upstream
2012-10-11 17:14:55 -04:00
Marc-André Moreau
9d064171a7
freerdp: get rid of old types
2012-10-09 03:26:39 -04:00
Marc-André Moreau
1bf8a45519
freerdp: change uint8, sint8, uint16, sint16 to BYTE, INT8, UINT16, INT16
2012-10-09 03:01:37 -04:00
Marc-André Moreau
1ed644786c
freerdp: change boolean type to BOOL type
2012-10-09 02:38:39 -04:00
Marc-André Moreau
e60a092d81
freerdp: fix headers
2012-10-08 23:02:04 -04:00
Corey C
715a172fe8
wfreerdp-server: improved tracking of peers by id
2012-10-06 16:57:58 -04:00
Marc-André Moreau
a11615aebd
wfreerdp-server: add PeerLogon callback for server logon
2012-09-16 15:30:11 -04:00
Vic Lee
eaaedbe785
libfreerdp-core/peer: add activated flag.
2012-06-24 22:20:45 +08:00
Vic Lee
ada9936a66
libfreerdp-core/server: add local flag for unix connection.
2012-05-22 23:10:52 +08:00
Vic Lee
4050944f6e
server: implement frame acknowledge PDU.
2012-05-11 16:35:11 +08:00
Vic Lee
3a407c24b8
server: implement user-initiated disconnection sequence on server.
2012-04-13 15:58:28 +08:00
Marc-André Moreau
0ed4709167
libfreerdp-core: add server-side capabilities callback
2011-12-14 15:08: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
4b6dd6f14d
server: follow context_size change.
2011-10-30 13:43:04 +08:00
Vic Lee
296d5ea753
server: use rdpContext for server-side components.
2011-10-18 15:10:12 +08:00
Marc-André Moreau
5c25717eae
xfreerdp-server: encode a single tile from X11 at a hardcoded position
2011-09-13 19:03:06 -04:00
Vic Lee
d3f9a2a9ab
server: add Activate callback to correctly handle reactivation.
2011-09-06 18:48:17 +08:00
Vic Lee
57ac9a59eb
server: add input callbacks.
2011-08-23 11:52:35 +08:00
Vic Lee
ab7a53ea51
server: add PostConnect callback.
2011-08-23 11:52:34 +08:00
Vic Lee
9ea3f1e5bd
server: rename pc prefix to ps.
2011-08-19 01:13:37 +08:00
Vic Lee
5fc87c25cf
server: create initial server API.
2011-08-18 16:06:32 +08:00