Commit Graph

25 Commits

Author SHA1 Message Date
Frank Rolsted Jensen 6bfdd85cfb fix compiler warnings(errors) 2018-07-25 09:03:42 +02:00
Frank Rolsted Jensen 7f4d2f3a51 support for line disciplines (TTY, PPP)
ttynvt now uses pseudoterminal (pty) to be able to get use of
the tty line disciplines.
Currently only the line discipline: TTY and PPP are supported.
2018-07-24 13:57:05 +02:00
Kim Woelders 3cae838cf0 Use kernel termios struct (?!?) 2018-07-18 11:43:44 +02:00
Kim Woelders 16825bd70e Add some more modem line control ioctl debug 2018-07-17 15:55:27 +02:00
Kim Woelders 5520722723 Add TIOCGETD/TIOCSETD in ioctl name decoder 2018-07-17 15:47:50 +02:00
Kim Woelders a68edc5e57 Add exclusive mode ioctls 2018-07-17 15:42:56 +02:00
Kim Woelders 2c3441dda5 Refactor ioctl input/output buffer size handling 2018-07-17 15:37:11 +02:00
Kim Woelders 45e73de4b9 Debug: Show ioctl names 2018-07-17 14:34:54 +02:00
Kim Woelders 778242986f Debug tweaks
- Add gcc printf format check to _log()
- Show thread ids
- Enable setting debug level
2018-07-17 14:08:01 +02:00
Kim Woelders 137418ad1e When running in daemon mode, delay parent exit until device is created
Doing this is somewhat elaborate because cuse_lowlevel_main() when
daemonizing, the parent (the calling thread) calls _exit(0) instead of
returning.
2018-07-17 13:53:23 +02:00
Kim Woelders 9057376656 Fix -D option, add DBG() for debug 2018-07-05 09:26:19 +02:00
Kim Woelders cbbb0cd225 Tweak options
- Change -s to -S to avoid clash with fuses singlethread option
  (mostly for testing).
- Merge port option with server option (server = host:port)
  (simpler).
2018-07-05 09:26:12 +02:00
Kim Woelders 2fb5ad2599 Drop ttynvt prefix from "local" functions
Only keep it on ones that are direct cuse_lowlevel_ops.

Makes it easier to understand things, IMO.
2018-07-05 08:38:36 +02:00
Kim Woelders 4988368662 Cosmetics of various sorts
Also in srv_connect() (renamed from ttynvt_connect()), close newly
crated socket in a couple of error paths.
2018-07-05 08:38:36 +02:00
Kim Woelders 0f879c8b61 Fix zero size reads
In certain cases we may get zero size reads (e.g. if the server sends an
rfc2217 notification without any other data).
In this situation we must not propagate the zero size read to user space
as it may be interpreted as end of input.

I haven't found a way to tell fuse that it should just ignore this read
but passing EINTR seems to work.
2018-07-02 12:40:27 +02:00
Kim Woelders 5ca23ce107 Correct write size
ttynvt_write() must on succesful writes return the number of bytes
written.

telnet_tx() always returns 0 (implicitly assuming srv_write() always
succeeds).
2018-07-02 12:39:56 +02:00
Kim Woelders b3f6d61edf Use syslog instead of logfile 2018-06-28 13:41:57 +02:00
Kim Woelders 7a424bc10d Make ttynvt_param global struct and avoid secondary variables 2018-06-28 13:38:27 +02:00
Kim Woelders 8956f3f851 Cleanups
- Consequently use "unsigned int", not "unsigned"
- Indent
- Sort headers
2018-06-28 13:37:25 +02:00
Kim Woelders ac76071e0e Autotoolify 2018-06-28 11:58:03 +02:00
Frank Rolsted Jensen 6337ac09eb support for blocking devices.
- and better handling of broken network connections.
2018-06-21 16:20:28 +02:00
Frank Rolsted Jensen fd4313745f logging connection error messages 2018-06-20 10:10:42 +02:00
Frank Rolsted Jensen a7d760d719 compiler warnings/errors fixed 2018-06-20 08:49:16 +02:00
Frank Rolsted Jensen cf678db1fd version information added to log file 2018-06-19 16:05:45 +02:00
Frank Rolsted Jensen 6556a2ec50 initial 2018-06-19 15:38:46 +02:00