jcs
/subtext
/amendments
Amendments on July 4, 2022
jcs made amendment
181
about 1 year ago
zmodem: Add BSD-licensed ZMODEM implementation from TeraTerm
Lots of internal restructuring by me to keep all state within a
zmodem_session object with callbacks to network/modem functions to
actually do the data sending and receiving.
Amendments on July 7, 2022
crc: Fix UpdateCRC32 macro, move tables into C file
The UpdateCRC32 macro needed explicit casting to fix hash generation
during ZMODEM.
jcs made amendment
184
about 1 year ago
jcs made amendment
185
about 1 year ago
Amendments on July 11, 2022
zmodem: Improve debug logging, do 32-bit CRC, disable overlapping I/O
Since our output and input functions will bypass the telnet code that
escapes or unescapes IACs, add an option to do it here before
interfacing with the send/recv routines.
Interoperability testing with SyncTERM showed that it was too eager
to timeout when we didn't respond fast enough in acceping uploaded
data and writing it, so disable overlapping I/O. This way it won't
send more data to us until we've acked it.
jcs made amendment
187
about 1 year ago
telnet: When doing file transfers, fast-path to TCP buffer
We're doing IAC escaping in the zmodem code, so just move data
directly into node buffer. Also, avoid memmoving on each read since
the buffer will often have more than one byte in it, just use an
offset into ibuf and only memmove when it's over half full.
zmodem: Bug fixes, remove send/recv abstraction
This doesn't really need to be portable, just call session functions
directly.
Reduce state timeouts to 10 seconds, but leave at 30 for the initial
Init state when receiving to give the user time to choose a file to
send us.
Fix IAC escaping on the way out.
Amendments on July 12, 2022
jcs made amendment
190
about 1 year ago
session: A few fixes and improvements
Make session_menu a bit more helpful and hide options with a null key
set, don't repeat "Invalid option" more than once
Add session_get_char for file transfers
jcs made amendment
192
about 1 year ago
jcs made amendment
193
about 1 year ago
jcs made amendment
194
about 1 year ago
jcs made amendment
195
about 1 year ago
jcs made amendment
196
about 1 year ago
jcs made amendment
197
about 1 year ago
jcs made amendment
198
about 1 year ago
jcs made amendment
199
about 1 year ago
jcs made amendment
200
about 1 year ago