Martin Ling
537942c9ed
Windows: clear errors after port open.
2013-12-17 17:19:55 +00:00
Martin Ling
950faaa94a
Remove obsolete comment.
2013-12-08 14:41:53 +00:00
Martin Ling
9af8cff38f
Remove stray periods from debug messages.
2013-12-07 20:18:27 +00:00
Martin Ling
64d996216e
Windows nonblocking write: Dont't return if async I/O finishes immediately.
2013-12-07 20:16:38 +00:00
Martin Ling
1622ef60b0
Check return value of GetOverlappedResult().
2013-12-07 17:09:06 +00:00
Martin Ling
7c1eff54fd
Make RETURN_VALUE macro side effect safe.
2013-12-07 16:29:18 +00:00
Martin Ling
33fd8804b8
Fix building for Android.
2013-12-05 20:33:06 +00:00
Martin Ling
397d89de3a
Make libudev optional.
2013-12-05 20:21:39 +00:00
Uwe Hermann
6c8716e9da
TIOCINQ/TIOCOUTQ is not available everywhere.
...
E.g. on NetBSD TIOCINQ is not available, but FIONREAD seems to
do pretty much the same thing.
2013-12-01 18:04:24 +01:00
Martin Ling
2c827b2188
Handle EINTR from tcdrain() in sp_drain().
2013-11-27 14:35:36 +00:00
Martin Ling
b87deb7c70
Clarify documentation regarding signals and EINTR.
2013-11-27 14:12:12 +00:00
Martin Ling
859874648e
Fix error in documentation.
2013-11-27 14:12:04 +00:00
Martin Ling
2007ce5e14
Document EINTR handling.
2013-11-27 13:18:29 +00:00
Martin Ling
63a17c64ae
Handle EINTR by repeating the call.
2013-11-27 12:43:12 +00:00
Martin Ling
1b34204261
Fix conversion of timeout to struct timeval.
2013-11-27 11:11:55 +00:00
Martin Ling
3353c22f32
Add sp_input_waiting() and sp_output_waiting() functions.
2013-11-27 02:55:18 +00:00
Martin Ling
e3dcf9068e
New API and implementation for blocking and non-blocking I/O.
2013-11-27 01:45:48 +00:00
Martin Ling
8fbf876dfd
Set VMIN = 1, not zero which forces non-blocking reads.
2013-11-27 01:37:35 +00:00
Martin Ling
afb518f04a
Return SP_ERR_SUPP on attempt to set mark/space parity without CMSPAR.
2013-11-26 15:26:18 +00:00
Uwe Hermann
00d8c56d91
Minor cosmetics.
2013-11-26 16:12:20 +01:00
Uwe Hermann
dd7742fb15
Use "sp: " as prefix for debug logs (nicer/shorter).
2013-11-26 16:00:53 +01:00
Uwe Hermann
c3e0509275
Fix the build on NetBSD/OpenBSD/FreeBSD, possibly others.
...
Various termios flags used in sp_open() are Linux-specific (or even
specific to certain architectures / drivers) and not available on all
OSes (and/or versions or kernels thereof).
Thus, #ifdef out flags that we know might not be available everywhere.
2013-11-26 16:00:53 +01:00
Martin Ling
bccc7c9fa0
Set some sane defaults in sp_open() on Windows too.
2013-11-25 18:30:34 +00:00
Martin Ling
3f5c06d067
Apply termios setting changes immediately.
2013-11-25 18:21:49 +00:00
Martin Ling
e432ce6006
Support mark/space parity settings.
2013-11-25 18:05:58 +00:00
Martin Ling
b251be4b26
Turn off all the fancy termios features.
2013-11-25 17:55:37 +00:00
Martin Ling
0765af5644
Windows nonblocking write: 1 byte at a time to know when buffer fills.
2013-11-25 15:23:05 +00:00
Martin Ling
a3cb91f5e1
Implement non-blocking I/O on Windows.
2013-11-25 12:01:13 +00:00
Martin Ling
aac4d7f292
Fix SET_FAIL macro.
2013-11-25 11:34:42 +00:00
Martin Ling
33d5ff47b5
Handle -EAGAIN in non-blocking reads on Unix, and return 0 from sp_read().
2013-11-25 10:23:13 +00:00
Martin Ling
0ba3e49b45
Fix bug in debug message generation in sp_flush().
2013-11-23 21:21:18 +00:00
Martin Ling
59131d6028
Initialise structure in sp_new_config().
2013-11-23 20:55:18 +00:00
Martin Ling
35ff018b49
Add generator program for configuration accessor headers.
2013-11-23 20:45:09 +00:00
Martin Ling
9b1502efce
Make configuration structure opaque.
2013-11-23 20:43:13 +00:00
Martin Ling
0151b15710
Clarify documentation.
2013-11-23 18:23:45 +00:00
Martin Ling
3c126654b3
Add sp_get_port_handle() function.
2013-11-23 17:50:45 +00:00
Martin Ling
1c5aae9dc5
Make port structure opaque.
2013-11-23 17:11:19 +00:00
Martin Ling
70cd37def2
Add back previously deleted sp_get_config function.
2013-11-23 12:04:21 +00:00
Martin Ling
a6cda1e8c7
Fix swapped DCD & RI signals on Windows.
2013-11-23 11:59:42 +00:00
Martin Ling
6b93ede419
Return SP_ERR_SUPP from sp_list_ports() on unsupported platforms.
2013-11-23 11:57:17 +00:00
Martin Ling
64690702cb
Generate debug output when returning using TRY() macro.
2013-11-23 11:49:35 +00:00
Martin Ling
dec10e31d0
Additional argument checking.
2013-11-23 11:39:59 +00:00
Martin Ling
ea667be751
Add additional debug messages.
2013-11-23 01:08:57 +00:00
Martin Ling
c33efc482e
Add debug output for all entry and exit points.
2013-11-23 00:26:44 +00:00
Martin Ling
92f756f8c1
Add debug macros.
2013-11-23 00:19:38 +00:00
Martin Ling
863b35e69c
Add API for and default handler for debug messages.
2013-11-22 22:41:03 +00:00
Uwe Hermann
71c8a9b906
serialport.c: Add missing linux_termios.h #include.
...
This is safe to include (at the moment) on all non-win32 OSes, since it
doesn't contain anything OS-specific.
2013-11-22 22:41:23 +01:00
Martin Ling
f36c639545
Remove dupliate/redundant return value documentation.
2013-11-22 21:58:51 +01:00
Martin Ling
6aabf62a90
Use new SP_ERR_SUPP error to indicate unsupported operations.
2013-11-22 21:46:26 +01:00
Uwe Hermann
6a1d6318e5
Makefile.am: Add missing linux_termios.h.
...
If the file is not listed in SOURCES, it won't end up in the tarball.
Thanks to Dan Horák for the report.
2013-11-22 20:28:20 +01:00