Commit Graph

87 Commits

Author SHA1 Message Date
Emmanuel Ledoux
f454a5c0c8 winpr-handle: CloseHandle(), added ability to register some callback functions
winpr-comm: implemented CommCloseHandle()
2014-06-19 19:07:45 +02:00
Emmanuel Ledoux
e6c82f99d5 serial: ability to setup the server serial driver thanks to a third parameter on the command line 2014-06-18 18:20:21 +02:00
Emmanuel Ledoux
ff9babed4e serial: cleaned up serial_main and removed other files which have been replaced by winpr-comm 2014-06-17 17:18:42 +02:00
Emmanuel Ledoux
9fc0e6eccc winpr-comm: CommReadFile and CommWriteFile are now protected by a mutex
winpr-comm: implemented IOCTL_SERIAL_IMMEDIATE_CHAR
2014-06-17 16:34:20 +02:00
Emmanuel Ledoux
0db3d9dbb0 winpr-comm: cleaning up code, focused on indentation and whitespaces 2014-06-16 19:18:45 +02:00
Emmanuel Ledoux
50efce67f5 winpr-comm: completed support of Read*Timeout 2014-05-28 22:11:19 +02:00
Emmanuel Ledoux
cdbba47eee winpr-comm: CommWriteFile, completed support of WriteTotalTimeout 2014-05-28 17:18:33 +02:00
Emmanuel Ledoux
1aeca8fbc7 - serial: terminates IRP threads more gracefully and avoiding warning messages. 2014-05-27 16:17:47 +02:00
Emmanuel Ledoux
b889ad7125 winpr-comm: reviewed the synchronization around counters, WaitMask and PendingEvents variables. Got rid of the semaphore PendingEventsSem. 2014-05-27 12:29:24 +02:00
Emmanuel Ledoux
9796224936 - winpr-comm: got a finalized version of IOCTL_SERIAL_WAIT_ON_MASK
- serial: cleaning up the code
2014-05-27 11:33:10 +02:00
Emmanuel Ledoux
5dc21b5604 winpr-comm: renamed waitMask WaitEventMask
winpr-comm: removed ReadIrpQueue
2014-05-23 15:55:44 +02:00
Emmanuel Ledoux
ee268a92ee serial: got a thread per IRP
winpr-comm: got IOCTL_SERIAL_GET_COMMSTATUS, IOCTL_SERIAL_SET_BREAK_ON and IOCTL_SERIAL_SET_BREAK_OFF
winpr-comm: tcdrain called by CommWriteFile() :(
2014-05-23 12:27:09 +02:00
Emmanuel Ledoux
9639da0067 serial: first steps to get a thread per IRP as a proof of concept. A bit of synchronization is still required. 2014-05-21 10:36:55 +02:00
Emmanuel Ledoux
baf4896a38 serial: got rid of most the warning message with MAKE_BUILD_TYPE=Release
winpr-comm: consolidated _set_handflow()/_get_handflow()
winpr-comm: introduced a permissive mode
winpr-comm: implementation of IOCTL_SERIAL_WAIT_ON_MASK still in progress
2014-05-19 16:53:57 +02:00
Emmanuel Ledoux
8179affea9 winpr-comm: got IOCTL_SERIAL_PURGE 2014-05-14 21:21:31 +02:00
Emmanuel Ledoux
6cc44ff112 winpr-comm: got IOCTL_SERIAL_SET_QUEUE_SIZE 2014-05-14 17:30:29 +02:00
Emmanuel Ledoux
4243928c2e winpr-comm: fixed _set_lines() / _clear_lines()
winpr-comm: got IOCTL_SERIAL_SET_WAIT_MASK / IOCTL_SERIAL_GET_WAIT_MASK and a non-blocking version of IOCTL_SERIAL_WAIT_ON_MASK
2014-05-14 16:29:10 +02:00
Emmanuel Ledoux
116995f865 wimpr-comm: got IOCTL_SERIAL_GET_MODEMSTATUS 2014-05-13 17:27:51 +02:00
Emmanuel Ledoux
7ec15d9683 serial: removed the Write thread (kept the read and main threads)
serial: better closing
2014-05-13 15:12:14 +02:00
Emmanuel Ledoux
7e36374a89 serial: attempt to use two additional threads for read and write requests
winpr-comm: fixed CommWriteFile
2014-05-13 14:55:30 +02:00
Emmanuel Ledoux
7f9545f12e serial: removed the extra byte sent with an empty OutputBuffer. At least Windows 2008R2 SP1 works better without it. Need to figure out why... 2014-05-12 19:21:06 +02:00
Emmanuel Ledoux
4c743de69c winpr-comm: got IOCTL_SERIAL_SET_TIMEOUTS / IOCTL_SERIAL_GET_TIMEOUTS
serial redirection: use of winpr-comm's functions and not serial_tty.* anymore
2014-05-12 17:33:56 +02:00
Emmanuel Ledoux
c2b024512a winpr-comm: got IOCTL_SERIAL_SET_HANDFLOW / IOCTL_SERIAL_GET_HANDFLOW 2014-05-06 16:08:58 +02:00
Emmanuel Ledoux
ee2339addc winpr-comm: implemented IOCTL_SERIAL_SET_CHARS and IOCTL_SERIAL_GET_CHARS 2014-04-29 04:04:09 +02:00
Emmanuel Ledoux
69eeeebe67 winpr-comm: got IOCTL_SERIAL_GET_BAUD_RATE and IOCTL_SERIAL_GET_PROPERTIES (partial)
winpr-comm: cleant up unit tests
2014-04-28 19:57:17 +02:00
Emmanuel Ledoux
e7f0185e69 - firt use of winpr-comm by the serial channel (not tested and not finalized) 2014-04-27 19:41:25 +02:00
Emmanuel Ledoux
6fcc1b4478 winpr-comm: first import of comm_ioctl.h and the REMOTE_SERIAL_DRIVER type. 2014-04-25 00:20:48 +02:00
Marc-André Moreau
8083350aaa channels/serial: remove debug output 2014-04-01 16:49:09 -04:00
Marc-André Moreau
021776e84b channels/serial: partial EPSON TM-T88III fix 2014-03-26 17:54:36 -04:00
Marc-André Moreau
8e2baab504 channels/serial: code cleanup 2014-03-26 17:11:15 -04:00
Marc-André Moreau
2ff5200f81 channels/serial: remove old async irp code, cleanup to make use of newer utils 2014-03-26 15:21:44 -04:00
Marc-André Moreau
00e6463e1e channels/rdpdr: robustness improvements 2014-03-26 11:05:12 -04:00
Marc-André Moreau
37450da55d cmake: fix exporting of targets on pre-2.8.11 2013-10-29 14:47:40 -04:00
Marc-André Moreau
55565e056c freerdp: export targets 2013-10-28 23:06:39 -04:00
Marc-André Moreau
05d9fbfe2a channels/rdpdr: remove dependency on svc_plugin 2013-10-17 15:42:51 -04:00
Armin Novak
8442c79e10 Added assertions and ExitThread calls. 2013-09-05 14:27:34 +02:00
Armin Novak
6f9183c7aa Using a monitor thread for tty input now to work around a WaitForMultipleObjects
limitation of winpr.
Using infinite timeout now in threads to reduce CPU usage to nearly zero.
2013-08-16 15:51:44 +02:00
Armin Novak
60d38daf0a Reset file descriptor set only, if necessary now. 2013-08-16 12:40:06 +02:00
Armin Novak
1a96bdc7a5 Fixed initialization of serial device, now aborting pending
read / write operations.
2013-08-16 10:34:54 +02:00
Armin Novak
e40d921da3 Removed EAGAIN handling, again passing on the error to the server. 2013-08-14 17:33:46 +02:00
Armin Novak
bb0e5f2660 Fixed invalid access to tty in thread, which was already removed by
serial_process_irp_close
Retry read now, if non blocking IO returns EAGAIN.
2013-08-14 15:14:40 +02:00
Armin Novak
d4945f7a81 Fixed high CPU usage. 2013-08-14 13:23:55 +02:00
Armin Novak
1d2adcbe26 Fixed resource leaks. 2013-08-14 13:23:54 +02:00
Armin Novak
7d27062edd Using WaitForMultipleObjects now to reduce CPU load. 2013-08-13 14:04:17 +02:00
Norbert Federa
db6c0083d0 channels/serial: bring it back to life
- Fixes #1166
- Fixed a possible segfault caused by invalid command line parameters
- Removed serial->in_event which had no effect at all on the program logic
2013-07-03 14:09:04 +02:00
Marc-André Moreau
fdf3ddcf9e freerdp: purge deprecated stream utils 2013-05-08 17:48:30 -04:00
Marc-André Moreau
fd230443c5 freerdp: purge old stream utils 2013-05-08 16:27:21 -04:00
Marc-André Moreau
5b92413843 freerdp: purge deprecated stream utils 2013-05-08 16:09:16 -04:00
Marc-André Moreau
b4cac74136 xfreerdp-server: fix RemoteFX encoding 2013-05-01 18:15:55 -04:00
Marc-André Moreau
51715636a5 freerdp: remove some deprecated stream utils 2013-04-29 22:35:15 -04:00