Skip to content
Snippets Groups Projects
Commit 483c86de authored by Rob Swindell's avatar Rob Swindell :speech_balloon:
Browse files

ZMODEM Window Management support

The default is still full-streaming mode. The default can be changed by
setting [ZMODEM] MaxWindowSize in sexyz.ini to a maximum window size to
use by default (e.g. "100K"). Additionally, a [ZMODDEM] TargetWindowSize
can be set to a duration (e.g. 60s) to dynamically adjust the maximum
window size to match the through-put rate while keeping the outstanding data
in-flight to an estimated "duration". When TargetWindowSize is used, the
MaxWindowSize only specifies the *initial* maximum window size.

The new '-w' command-line option can be used to control Window Management
support (e.g. over-riding the .ini set default) - by using '-w' or '-w0',
Window Management won't be used or by using '-w<max-size>', a maximum window
size will be imposed (subject to the TargetWindowSize setting mentioned
above). <max-size> can be specified in bytes or multiples (e.g. "-w100K").
Ths option is similar to the [l]sz '-w' option except no space is expected
between '-w' and the (optional) max-size value.

Also new, when receiving [ZMODEM] FullDuplex can be set to FALSE to disable
streaming mode: if the RecvBufSize is not set (0), the sender should use the
subpacket data length (block size, e.g. 1K) as the segment size. Otherwise,
setting FullDuplex=FALSE should produce the same behavior as setting the
RecvBufSize would before (the result being the use of "segmented ZMODEM"
instead of "streaming ZMODEM").

All sexyz command-line options are case-sensitive now (not just the 'cmds').
A lot of code clean-up in zmodem.c.

Incremented zmodem.c rev to 2.0.
Incremented sexyz version to 3.0.
parent c3619942
Branches
Tags
1 merge request!463MRC mods by Codefenix (2024-10-20)
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment