1 1998-12-29 Uwe Ohse <uwe@ohse.de>
3 * src/lrz.c: removed stpcpy call.
4 got rid of warnings on solaris (isXXXXX treating
5 arguments as signed, size_t is not of "long" size).
7 * src/lsz.c: removed stpcpy calls.
8 got rid of warnings on solaris (isXXXXX treating
9 arguments as signed, size_t is not of "long" size).
10 (wcs): has another argument "filename on remote
12 (wcsend): if no timezone variable was found the printf was
13 called with to few arguments for the format.
14 (send_pseudo): removed major/minor security problem (major,
15 though nobody used that code, so it in fact was minor),
17 damned, i thought i had done that _long_ ago?
19 * src/lsyslog.c (lsyslog): special code for varargs.
21 * src/zm.c: threw out prototype for zsendline_s().
23 * src/rbsb.c: moved getspeed() and speeds table
26 * systype.in: realname can be given on the command line.
28 * configure.in: use LOG_USER in case LOG_UUCP is undefined.
29 check for libnsl (slowlaris).
33 * Makefile.am: support for fastcheck, fastcheck-beos,
36 * beos-runpiped.c: new file.
38 1998-12-28 Uwe Ohse <uwe@ohse.de>
40 * src/canit.c: new file.
42 * src/zglobal.h: canit() prototype.
43 declare "struct termios;" before including termios.h
44 on svr3, to get rid of warnings.
46 * src/lsz.c (canit): deleted.
47 (everythere): replaced invocation of canit() with
50 * src/lrz.c (canit): deleted.
51 (everythere): replaced invocation of canit() with
54 * src/Makefile.am: added -DLOCALEDIR=... to DEFS
56 * acconfig.h: threw out LOCALEDIR. Gives redefinition
57 warnings in intl directory.
59 * configure.in: --enable-syslog=LOG_UUCP is now
62 * src/tcp.c (tcp_connect): get rid of "signed/unsigned"
63 warning and "array subscript is of type char" warning
66 1998-12-27 Uwe Ohse <uwe@ohse.de>
68 * Makefile.am: distribute systype.in
70 * acinclude.m4: new macro lrzsz_HEADER_SYS_SELECT
71 (can sys/time.h and sys/select.h both be used)
73 * acconfig.h: define SYS_TIME_WITHOUT_SYS_SELECT
75 * check.lrzsz: check for emacs sources slightly
78 * configure.in: create "systype" script, use
79 lrzsz_HEADER_SYS_SELECT
81 * lib/Makefile.am: use ansi2knr.
84 * src/ansi2knr.c: updated to automake-1.3 version,
85 implemented workaround for automake stupidity.
87 * src/lrz.c (do_crc_check): changed formatting.
89 * src/zglobal.h: use SYS_TIME_WITHOUT_SYS_SELECT.
91 * zperr.c: provide K&R style function definitions.
93 1998-12-23 Uwe Ohse <uwe@ohse.de>
95 * src/rbsb.c (rdchk): the read() version3
96 was buggy, didn't return 0 on EWOULDBLOCK.
97 That's a really long-standing problem ...
99 * src/tcp.c: include arpa/inet.h only if it exists.
101 * src/zglobal.h: include <socket.h> on BeOS to get
104 1998-12-22 Uwe Ohse <uwe@ohse.de>
106 * src/lsz.c (main): got rid of CPU and OS.
107 (usage): got rid of CPU and OS.
109 * src/lrz.c (main): got rid of CPU and OS.
110 (usage): got rid of CPU and OS.
112 * acconfig.h: got rid of CPU and OS.
114 * configure.in: don't call AC_CANONICAL_HOST
117 1998-12-21 Uwe Ohse <uwe@ohse.de>
119 * configure.in: PUBDIR was handled incorrectly.
120 Thanks to Stanislav Brabec <utx@k332.feld.cvut.cz>.
122 * buildrpm, Specfile.in, rpmrc: new files.
124 * Makefile.am: support rpm stuff.
126 * src/lsz.c (main): start_blklen by default is not
127 longer then framlength (except if luser personally
128 decides to use both -4/-8 and -l).
129 (getzrxinit): minor cleanup.
130 (getzrxinit): test for S_ISCHR was reversed.
131 Thanks to Nick Rossi <voyager@eskimo.com>.
133 * src/lrz.c (main): use umask().
135 1998-10-22 Uwe Ohse <uwe@ohse.de>
137 * src/lrz.c (procheader): removed warnings about unused
138 variable e (used only if #ifdef ENABLE_SYSLOG).
140 * src/lsyslog.c (lsyslog): removed warnings about unused
141 arguments if not defined ENABLE_SYSLOG.
143 1998-08-18 Uwe Ohse <uwe@ohse.de>
145 * src/lsz.c (wcputsec): don't say "Ymodem" if running as
148 * changed version number to 0.12.20.
150 * src/lsz.c (getzrxinit): throw out purgeline() again.
151 This causes selftest to break, and also other zmodems.
152 Slightly modified the logic to resend a zrqinit.
153 (getnak): Slightly modified the logic to resend a zrqinit.
154 Maybe the real solution is to throw out the resending
155 of ZRQINITs ... as omen doesn't do it, too, although
156 it's documented in the protocol.
158 1998-07-25 Uwe Ohse <uwe@ohse.de>
160 * src/lsz.c (getzrxinit): calling purgeline() at start
161 solves Stefan Glasers problems (internal connect zmodem,
162 slow startup with other zmodems). Also: don't send a
163 second ZRQINIT directly after the first one.
164 (getnak): don't send a second ZRQINIT directly after
167 1998-07-08 Uwe Ohse <uwe@ohse.de>
169 * README.isdn4linux: new file.
171 1998-03-13 Uwe Ohse <uwe@ohse.de>
173 * src/tcp.c: #define INADDR_NONE if it is undefined
175 1998-01-18 Uwe Ohse <uwe@ohse.de>
177 * src/lrz.c (show_version): new function.
178 (main) call parse_long_options() with only 4 arguments.
179 didn't wrap all mmap-specifics in #ifdef HAVE_MMAP.
181 * src/lsz.c (show_version): new function.
182 (main) call parse_long_options() with only 4 arguments.
183 didn't wrap all mmap-specifics in #ifdef HAVE_MMAP.
185 * configure.in: vasprintf should not only be checked for
186 but replaced of needed.
190 new versions with only 4 arguments.
192 1998-01-03 Philippe De Muyter <phdm@macqel.be>
194 * src/lsz.c (zfilbuf): Look ahead for one char, to set eof_seen early
195 and to avoid yielding 0 at the end of file.
197 1997-12-14 Uwe Ohse <uwe@ohse.de>
199 * src/lrz.c (do_crc_check): removed warnings.
200 (procheader): removed warnings.
201 (procheader): stupic bug: "&~1024" should have been "&~1023" to
202 get block start aligned to whole kilobytes.
203 global: moved DO_SYSLOG definition, renamed it to DO_SYSLOG_FNAME,
204 replaced some lsyslog-Calls with new macro DO_SYSLOG.
206 * src/lsz.c (struct long_option): --immediate-command should have
207 used shortopt `i', but used `c'.
209 applied patch from Philippe De Muyter <phdm@macqel.be>, original date
211 * aclocal.m4 (LRZSZ_TYPE_SPEED_T): Really look for speed_t, not $1.
212 * acconfig.h (speed_t): New define slot; replaces LRZSZ_TYPE_SPEED_T.
214 1997-12-13 Uwe Ohse <uwe@ohse.de>
216 * src/lsz.c: new option --check-crc (implement ZMCRC option),
217 use ZMCRC if --resume is given twice.
218 (getzrxinit) Oops. Canseek was set incorrectly if S_ISREG
220 (zsendfile): ZCRC-Code needed debugging. munmap added.
222 * src/lrz.c: new option --check-crc (implement ZMCRC option),
223 use ZMCRC if --resume is given twice.
224 (procheader) implement ZMCRC.
225 (do_crc_check) new function.
227 1997-12-09 Uwe Ohse <uwe@ohse.de>
229 * src/lrz.c (procheader): implement --newer and --newer-or-longer
230 option, which Chuck Forsberg must have forgotten to implement in
231 rz (sz did know about them).
232 implement a --junk-path option - junks the paths of the files,
233 removing directory part of a file name.
234 (main): implement command line switches for the options.
236 1997-12-08 Uwe Ohse <uwe@ohse.de>
238 * src/lrz.c (main): oops. --rename included Zctlesc ...
240 (global): new variable skip_if_not_found.
241 (procheader): use "r+" fopen()-mode if "skip_if_not_found" is set.
242 if fopen() fails tell that to syslog.
243 (tryz): set skip_of_not_found if ZF1_ZMSKNOLOC is received (this
244 fixes the "--overwrite-or-skip" option)
245 don't use "Zctlesc = TESCCTL & Rxhdr[ZF0];", use "|=" instead.
247 * src/lsz.c (main): catch SIGPIPE,SIGHUP.
248 (global): new variable/option "--no-unixmode". This is needed to
249 check the "keep-uppercase" option.
250 (getzrxinit): call "zsendline_init" to reinitialize escape table
251 if receiver told us to escape control chars (fixes "rz --escape").
253 1997-12-07 Uwe Ohse <uwe@ohse.de>
255 * src/zm.c (zsda32): crashed if sending packet with 0 bytes data.
257 1997-11-07 Uwe Ohse <uwe@ohse.de>
259 * configure.in: changed version number to 0.12.18.
261 * src/zm.c: remove #include <syslog.h>
262 (zgethdr): removed warnings.
263 (noxrd7,tgeth1, zgethex): reordered to help
266 * src/lsz.c (main): removed unused variable `s'.
268 * src/zglobal.h: remove define for syslog().
270 * src/zm.c (printout_blocksizes):
271 * src/lrz.c (wcreceive): (DO_SYSLOG): (rzfile):
272 * src/lsz.c (DO_SYSLOG): (wcs):
273 use lsyslog instead of syslog.
275 * src/Makefile.am (lsz_SOURCES and lrz_SOURCES): include lsyslog.c.
277 * configure.in (AC_CHECK_FUNCS): check for vasprintf.c
278 (elsewhere): changed tirka.gun.de hacks to tirka.ohse.de.
280 * lib/Makefile.am (EXTRA_DIST): include vasprintf.c
282 * src/lsyslog.c (lsyslog): new file.
284 Sun Sep 14 08:07:52 MET DST 1997
286 * Makefile.am: add lrzszbug to DISTCLEAN_FILES
288 * src/zreadline.c (readline):
289 optimize for calling from READLINE_PF.
290 get rid of some vprintf.
291 rename to readline_internal (should only be called
294 * src/zglobal.h: rename readline to readline_internal.
296 * src/zm.c (noxrd7): use READLINE_PF, not readline.
300 * src/lrz.c (wcrxpn): use READLINE_PF, not readline.
301 (wcgetsec): likewise.
303 (global) (main): implement --tcp-server and --tcp-client addr:port.
305 * src/lsz.c (getnak): use READLINE_PF, not readline.
307 (wcputsec): likewise.
308 (zsendfile): likewise.
309 (zsendfdata): likewise.
310 (global) (main): implement --tcp-server and --tcp-client addr:port.
312 * src/tcp.c: fix some byteorder problems.
313 (tcp_connect): accept hostnames.
316 Sat Sep 13 20:04:56 MET DST 1997
318 * src/zmodem.h: #ifdef out some declarations already found in
321 * acinclude.m4: new macro LRZSZ_ERRNO_DECL, checks for declaration
322 of errno, taken from taylor uucp.
324 * configure.in: use LRZSZ_ERRNO_DECL
326 * src/lrz.c: remove lots of egcs -Wparanoia warnings.
327 zrdata needs new parameter. Rxcount isn't global anymore.
328 many int or long -> signed or size_t changes.
330 * src/zm.c: zrdata get's new argument, pointer to size_t to
331 store number of bytes read into.
332 Remove Not8bit, wasn't used.
333 remove lots of egcs -Wparanoia warnings.
334 zgethdr gets a new argument, pointer to size_t.
335 Remove global variable Rxpos.
338 remove lots of egcs -Wparanoia warnings.
339 sendbrk sends break now in posix termios mode, too.
341 * src/lsz.c: remove lots of egcs -Wparanoia warnings.
342 many int or long -> signed or size_t changes.
343 Rxcount and Rxpos removed.
345 * src/zreadline.c: remove egcs -Wparanoia warnings.
347 Mon Sep 1 00:02:27 MET DST 1997
349 * src/lrzszbug.in: new script.
351 * src/Makefile.am: distribute lrzszbug.in
353 * configure.in: generate lrzszbug.
355 Sun Aug 31 18:00:00 MET DST 1997
359 Sat Aug 23 22:54:12 MET DST 1997
361 * src/lrz.c (closeit): use S_ISREG instead of (mode&S_IFMT)==...
362 if possible. (closeit) removed unused variable
364 * src/rbsb.c (Fromcu): deal with major(), minor() and makedev ...
365 dev_t might not be a simple type of the system (or, worse, the
368 * src/tcp.c (tcp_server): change len to size_t.
369 (tcp_server): remove unused variable namelen.
370 (tcp_accept): change namelen to size_t.
371 (global): include "error.h", <ctype.h>, <stdlib.h>, <stdio.h>.
372 (tcp_accept): remove unused variable newsock.
373 (tcp_connect): rename variable sin to s_in.
375 * src/lsz.c (wcs): use S_ISxxx instead of (mode & S_IFxxx)==...)
376 if possible. (getzrxinit) same. (countem) also.
378 * src/Makefile.am: don't uses LOCALEDIR, OS, CPU anymore
380 * configure.in: AC_DEFINEs_UNQUOTED LOCALEDIR, OS, CPU.
381 Bugfix: PUBDIR should be AC_DEFINEd_UNQUOTED, not AC_DEFINEd.
383 * src/zm.c (zsendline_s): last_esc was not initialized.
385 Sun Jun 1 09:52:45 MET DST 1997 Uwe Ohse <uwe@ohse.de>
389 * man/Makefile.am: added manual pages to EXTRA_DIST as automake
390 doesn't automagically distribute them anymore.
392 * src/zglobal.h: new macro vchar() (put a char onto stderr),
393 new macro vstring() (put a string onto ...).
394 prototype for vstringf().
395 remove prototype for cucheck().
397 * src/zperr.c: new function vstringf() (vfile without "Verbose > 2"
400 * src/lrz.c: use vchar/vstring/vstringf instead of writing
402 implement tcp mode code.
403 don't restrict setgid anymore, too many people had problems
406 * src/zreadline.c: use vchar/vstring/vstringf instead of writing
409 * src/zm.c: use vchar/vstring/vstringf instead of writing
410 to stderr. made zsendline_s receive a _const_ char *.
412 * src/rbsb.c: use vchar/vstring/vstringf instead of writing
413 to stderr. remove unused function cucheck().
415 * src/lsz.c: removed NEW_ERROR define, delete old code, NEW_ERROR
416 is now certainly stable enough.
417 most places: use vchar/vstring/vstringf instead of writing
419 New options -4/-5 for try4k/start4k. 4k blocksize gives somewhat
420 better benchmark results than 1k and 10% better results than 8k
421 on my dual processor system (don't wonder: 4k is a pagesize, and
422 using more than 4k makes pipe writes block. doesn't matter in
424 implement tcp mode code.
425 don't restrict setgid anymore, too many people had problems
428 * src/tcp.c: new file.
430 * configure.in: change version to 0.12.17. fiddled around to
431 get it properly running with automake-1.1p.
433 * lib/Makefile.am: add LIBOBJS to libzmodem_a_DEPENDENCIES (don't
434 know why automake-1.1p needs this, but anyway).
437 Wed May 21 16:49:51 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
439 * src/zglobal.h (termios.h): Do not include that file unconditionally !
440 (USE_TERMIOS): Do not define that unconditionally !
442 Tue Mar 25 01:21:07 MET 1997
444 * lib/Makefile.am: add "libzmodem_a_DEPENDENCIES = @ALLOCA@"
446 Mon Mar 24 08:01:14 MET 1997
450 * Makefile.am: check -> check-local
452 Sat Mar 15 08:26:39 MET 1997
454 * src/zglobal.h: provide prototypes for zsdat32.
456 * src/zm.c (zsdata): doesn't call zsdat32() anymore.
457 (zsdat32): not static anymore.
459 * src/lsz.c (ZSDATA): new macro. calls zsdata or
461 (sendzsinit) (zsendfile) (zsendfdata) (zsendcmd):
462 replaced zsdata with ZSDATA.
464 Thu Mar 13 07:54:07 MET 1997
467 * src/lrz.c(main): don't run setuid or setgid.
468 call_zsendline_init().
470 * src/zm.c (zsendline_init): don't takes a parameter anymore, uses
471 sourcefile-static variable.
472 (zsendline): don't call zsendline_init anymore.
473 (zsendline_s): new function (faster blockmode version of zsendline)
474 (zsda32): used zsendline_s()
476 * src/zglobal.h: provide prototype for zsendline_init().
478 Mon Mar 10 23:13:59 MET 1997 Uwe Ohse <uwe@tirka.gun.de>
480 * updated to gettext-0.10.27
482 * updated to automake-1.1l (especially Makefiles and configure.in)
484 * check.lrzsz: small fixes.
486 Sun Mar 9 10:29:39 MET 1997 Uwe Ohse
488 * src/lrz.c: Warnings and #ifdef O_SYNC around O_SYNC-Code.
490 Sun Feb 2 12:52:01 MET 1997 Uwe Ohse <uwe@tirka.gun.de>
494 * src/lrz.c (procheader): xmodem didn't work on m68k-hp-hpux9.00,
495 compiled with gcc. procheader got "" as filename if using
496 xmodem, and does this:
497 char *p=name+1+strlen(name).
500 Sat Feb 1 19:55:08 MET 1997 Uwe Ohse <uwe@tirka.gun.de>
502 * src/lrz.c (procheader): change mode of received file
503 to O_SYNC if o_sync is set.
504 (main): set o_sync if --o-sync (or --o_sync) is given.
505 (global): new variable static int o_sync.
506 (usage): new option --o-sync.
510 * src/zglobal.h: don't use #elif anymore (didn't know
511 that pre ansi systems don't understand it).
517 * src/zglobal.h: use __P in prototypes.
520 include varargs.h instead of stdarg.h ifndef __STDC__
523 #define VA_START(x,y) to va_start(x,y) (__STDC__) or
524 va_start(x) (!__STDC__).
526 * src/rbsb.c: made it compile with hpux bundled compiler.
527 purgeline(fd) -> purgeline (int fd).
532 Fri Jan 31 01:01:47 MET 1997 Uwe Ohse <uwe@tirka.gun.de>
534 * lib/alloca.c (xmalloc): de-ANSI-fy.
536 * lib/Makefile.am: turn off ansi2knr
538 * src/ansi2knr.c: include newer version from fileutils-3.16
540 Sun Jan 19 09:03:54 1997 Philippe De Muyter <phdm@mac_tst>
542 * src/zglobal.h (LONG_MAX): If everything else failed,
547 include <sys/types.h>
549 Tue Jan 7 07:33:55 MET 1997 Uwe Ohse <uwe@tirka.gun.de>
551 * configure.in: change version to 0.12.14
553 * src/lrz.c (procheader): Overwrite "waiting to receive"
555 "file exists, skipped" -> "file exists, skipped: filename",
556 print it if: "Verbose > 2" -> "Verbose".
557 (Glenn Burkhardt <glenn@aoi.ultranet.com>)
559 Sat Jan 4 10:12:56 1997 Uwe Ohse <uwe@tirka.gun.de>
561 * configure.in: check for libsocket (contains syslog() under
563 don't use AC_FUNC_STRFTIME (sets "LIBS=-lintl $libs", and
564 this doesn't interact well with the intl/libintl.a and
565 the ud_GNU_GETTEXT), do AC_REPLACE_FUNC(strftime).
567 * lib/strftime.c: new file (taken from fileutils-3.14).
568 I did *not* include multibyte character support (== including
569 wchar.h == AC_CHECK_HEADER(wchar.h)), as timesync doesn't
570 need multibyte characters.
572 * src/timing.c (timing): throw out "goto doit". Forgot it
575 * src/zglobal.h: include sys/select.h after including
576 sys/time.h (sys/select.h needs struct timeval).
577 make "char checked;" an unsigned char.
578 remove extern int readline_readnum; not needed.
580 * src/rbsb.c: make "char checked;" an unsigned char.
581 (to get rid of warnings on systems where
584 * src/lsz.c (zsendfdata): remove #ifndef linux
585 around "XOFF | 0200".
586 (wcs): cast pid_t to unsigned long before using
587 it in printf. (HPUX).
588 (wcsend): remove #ifdef HAVE_STRFTIME - we know
589 that we have strftime.
591 * src/lrz.c (procheader): oops, alloca(strlen(name+5))
592 should have been alloca(strlen(name)+5);
593 -> crash on HP9000/712, HPUX 9.07, PA-Risc.
595 * removed forgotten strace from check.lrzsz (did you ever
596 wonder why zmodem8k was slower in `make check'?)
599 zsbh32,zsda32,zrdat32,zrbhdr32,zrhhdr,zputhex,zgethex,
600 zgeth1: had static prototype, but were not defined
601 as static. Now prototype and function are static.
604 Thu Jan 2 22:59:44 1997 Uwe Ohse <uwe@tirka.gun.de>
607 + AC_C_INLINE (cleanup, was called from aclocal.m4)
608 + AC_TYPE_OFF_T (cleanup, was called from aclocal.m4)
609 - AC_FUNC_UTIME_NULL (not really needed)
610 + check for strings.h (was done before in aclocal.m4)
611 + call AC_FUNC_STRFTIME
612 + check for vprintf (not done before, used in error.c)
614 * src/lsz.c: #ifdef HAVE_SELECT around call to select().
616 * src/timing.c: don't include limits.h,unistd.h: already
621 don't include unistd.h, already done from zglobal.h.
623 Wed Jan 1 17:18:34 1997 Uwe Ohse <uwe@tirka.gun.de>
627 * updated gettext to 0.10.26.
629 * took out purgeline() call in zsendfile (didn't help).
631 * check.lrzsz: splitted resume directory into two parts.
633 * configure.in: call AC_AIX, AC_MINIX.
635 Wed Dec 18 22:44:55 1996 Uwe Ohse <uwe@tirka.gun.de>
637 * src/lsz.c: start_blklen changed to 0.
638 (chkinvoc): don't change blklen to 1024 for YMODEM.
639 [use -k if you want better performance, worse
641 (main): if start_blklen is 0 after processing arguments
642 change it to 1024 (zmodem) or 128 (x/y).
643 (zsendfile): call purgeline() once - hopefully fixed
644 stefan glasers problem.
646 * configure.in: remove AC_C_CROSS
648 Sat Nov 9 16:34:09 1996 Uwe Ohse <uwe@tirka.gun.de>
650 * src/lrz.c (long_options): --with-crc doesn't require an
652 (main): shortopts-string given to getopt() wasn't up-to-date.
654 Tue Nov 5 00:05:36 1996 Uwe Ohse <uwe@tirka.gun.de>
656 * src/lsz.c (zsendfdata): moved SIGINT-activation to the beginning
657 of the file's transfer (no need to activate if before every
660 * src/zm.c (bttyout): removed.
661 (zgethdr): don't call bttyout, write directly to stderr.
663 Thu Oct 10 15:31:54 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
665 * configure.in: Replace mktime if needed.
667 * lib/Makefile.am (EXTRA_DIST): Distribute mktime.c
669 * lib/mktime.c: new file, replacement function for mktime().
671 Mon Oct 7 22:57:09 1996 Uwe Ohse <uwe@tirka.gun.de>
674 * src/lrz.c (usage): updated help text.
676 * configure.in (VERSION): changed to 0.12.11
679 * src/lsz.c (main): "rshell" is another name for a restricted shell.
681 Sun Oct 6 20:45:20 1996 Uwe Ohse <uwe@tirka.gun.de>
683 * src/lrz.c (wcreceive): changed calls to timing().
685 (rzfile): dito. implement --stop-at TIME.
686 (main): recognize --stop-at and parse argument.
687 (usage): document --stop-at.
689 * src/lsz.c (wcs): changed call to timing().
691 (zsendfdata): implement --stop-at TIME. changed call to timing(),
692 threw out calls to time():
693 (main): recognize --stop-at and parse argument.
694 (usage): document --stop-at.
696 * src/timing.c (timing): now gets another parameter time_t *now, to
697 be filled with the "now" time (to reduce number of system call if
698 using --min-bps or --stop-at).
700 * src/timing.h (timing): changed prototype for timing() (optional
701 parameter time_t *now);
703 Thu Oct 3 09:22:26 1996 Uwe Ohse <uwe@tirka.gun.de>
705 * src/lrz.c (tryz): don't return FALSE to early if getting to many
708 * src/lsz.c (main): tell library to interrupt system calls if we get an
709 SIGALRM (stupid BSD people - why did they make restarting systems
710 calls the *default*)?
712 * configure.in (ALL_LINGUAS): check for siginterrupt().
714 * src/lrz.c (ecgetsec): read at max 1000 bytes after we got an bad
715 header. (was endless loop, if sender didn't time out).
718 * src/lsz.c (main): new option --delay-startup N: makes program sleep
719 for N seconds before sarting transactions (for debugging).
721 * lib/Makefile.am (zmodem_SOURCES): remove duplicate zmodem_SOURCES
724 Wed Sep 18 20:27:00 1996 Uwe Ohse <uwe@tirka.gun.de>
726 * src/lsz.c (wcs): #ifdef HAVE_MMAP around dont_mmap_this.
728 Wed Sep 18 18:36:40 1996 Philippe De Muyter <phdm@info.ucl.ac.be>
730 * lib/Makefile.am (EXTRA_DIST): distribute stpcpy.c.
732 * src/lrz.c, src/lsz.c: declare stpcpy if not STRICT_PROTOTYPES.
734 * src/lrz.c (DEFBYTL): declaration removed from here.
736 * src/zglobal.h (DEFBYTL): declaration moved here.
738 * src/lsz.c (wcs): enclose dont_mmap_this in #ifdef HAVE_MMAP;
739 initialize bytes_total to DEFBYTL if file is a pipe;
740 use bytes_sent, not bytes_total for final statistics.
741 (calc_blklen): best_bytes and transmitted made unsigned long, not long.
742 (countem): use DEFBYTL as filesize for "-".
744 Tue Sep 17 23:50:34 1996 Uwe Ohse <uwe@tirka.gun.de>
746 * src/lrz.c (main): enable SIGINT code.
748 * src/lsz.c: whole file: enable SIGINT code.
750 Sat Sep 14 10:02:41 1996 Uwe Ohse <uwe@tirka.gun.de>
752 * configure.in (VERSION): change to 0.12.10
754 * src/lrz.c (wcreceive): unlink Pathname only if not NULL.
756 * src/lsz.c (getzrxinit): resend ZRQINIT if we don't get a
757 ZRINIT. This is needed to ensure that a receiver which
758 starts up late, looses ZRQINIT and doesn't send a ZRINIT
759 by default gets the ZRQINIT it needs. [resending ZRQINIT
760 is documented in zmodem.doc, but unix zmodem doesn't do
761 it. Well, this is not the only missing feature.]
762 (getnak): resend ZRQINIT if getting a timeout.
763 (zrqinits_sent): new variable. counts number of sent zrqinits.
764 Need to do this because unix rz cancels transmission if getting
765 more than 5 ZRQINITS.
767 Thu Sep 5 21:22:32 1996 Uwe Ohse <uwe@tirka.gun.de>
769 * src/lsz.c (wcsend): use stpcpy instead of strcpy + strcat.
771 * src/lrz.c (procheader): use stpcpy instead of strcpy + strlen.
773 * lib/stpcpy.c: new file.
775 * configure.in: Replace strtol, strpbrk, stpcpy if needed.
777 * check.lrzsz: Redirect all error messages to $testdir/error.log.
778 Modified to avoid 'cp -f', dd conv=notrunc, /dev/zero.
779 Typo : management, not managment.
780 (Philippe De Muyter <phdm@info.ucl.ac.be>)
782 * configure.in: check for mode_t, replace strtoul if needed.
783 (Philippe De Muyter <phdm@info.ucl.ac.be>)
785 * src/rbsb.c: Do not include fcntl.h twice.
786 (Philippe De Muyter <phdm@info.ucl.ac.be>)
788 * src/lrz.c (long_options):
789 * src/lsz.c (long_options): fix typo (restriced -> restricted)
790 (Philippe De Muyter <phdm@info.ucl.ac.be>)
792 * intl/l10nflist.c, intl/explodename.c (stdlib.h): Include
793 sys/types.h and define NULL for size_t-less or missing stdlib.h.
794 (Philippe De Muyter <phdm@info.ucl.ac.be>)
796 Wed Sep 4 20:21:56 1996 Uwe Ohse <uwe@tirka.gun.de>
798 * src/zglobal.h: include <sys/select.h> if it exists.
799 (Philippe De Muyter <phdm@info.ucl.ac.be>)
801 * configure.in: check for sys/select.h
802 (Philippe De Muyter <phdm@info.ucl.ac.be>)
804 * src/lsz.c (getinsync): clearerr(input_f) is a bad idea
805 if (input_f == NULL).
807 Tue Sep 3 21:55:30 1996 Uwe Ohse <uwe@tirka.gun.de>
809 * src/lsz.c (wcs): oops, use name where oname should have
810 been printed in error message. if sending file "-" treat
812 (main): replace `0' with io_mode_fd, set io_mode_fd to
813 1 if sending file "-".
814 (wctx): replace `0' with io_mode_fd.
815 (zsendfdata): rdchk(io_fd) instead of rdchk(0).
817 Sun Sep 1 10:12:42 1996 Uwe Ohse <uwe@tirka.gun.de>
819 * configure.in (VERSION): changed to 0.12.9
821 * man/lrz.1: documetn --rename, --min-bps, --min-bps-time.
823 * man/lsz.1: document --turbo, --rename, --min-bps,
826 * src/lsz.c (main): support -m/--min-bps and -M/min-bps-time
828 (wctxpn): added missing error messages.
829 (zsendfile): added missing error messages.
830 (zsendfdata): support --min-bps and --min-bps-time.
831 (usage): document --min-bps and --min-bps-time.
833 * src/lrz.c (main): support -m/--min-bps M option.
834 (rzfile): support --min-bps-Option, --min-bps-time.
835 (main): support --min-bps-time/-M option.
836 (rzfiles): does print error messages to syslog (rzfiles did
837 just say "error", rzfiles can tell *what* error happened).
838 (usage): document min-bps and min-bps-time. document --error.
840 Wed Aug 28 11:23:01 1996 Uwe Ohse <uwe@tirka.gun.de>
842 * src/zreadline.c: include errno.h
844 * src/zglobal.h: include limits.h (_POSIX_PATH_MAX).
845 Fixed misspelled HAVE_TERMIO_H to HAVE_TERMIOS_H.
846 changed long Locmode, long Locbit to extern.
850 * src/lsz.c (usage): add --rename option.
852 Tue Aug 27 10:53:43 1996 Uwe Ohse <uwe@tirka.gun.de>
856 * src/lsz.c (main): do a select/read-loop after calling purgeline()
857 to get rid of really anything already in the queue.
859 * configure.in (VERSION): changed to 0.12.8
861 * src/lrz.c (rzfile): added missing error message.
862 (rzfile): buffer packets we received out-of-sync, and try to
865 * src/lsz.c: (whole file): renamed flags.
866 (main): new option -E --rename: change name if target exists.
867 (long_options): new option --rename.
869 * src/lrz.c: (whole file) renamed flags.
870 (procheader): implement ZF1_ZMCHNG (change name if target exists).
871 (main): new option -E --rename: change name if target exists.
872 (long_options): new option --rename.
873 (procheader): fix --append-Option (ZF1_ZMAPND). Will now work
874 even on binary files (why not send wtmp?).
876 * src/zmodem.h (ZF1_ZMCHNG): new flag. change filename if
878 Some flags renamed (prefixed with ZFn etc).
879 changed some octal numbers to hex.
881 * src/lsz.c (main): setup readline to read up to 128 bytes.
883 * src/zreadline.c (readline): minimal timeout now 1 second if
884 timeout-variable is 1.
886 * src/zreadline.c (readline): if Verbose > 9 dump up to 48
887 bytes direct after read().
889 * src/lsz.c (main): call purgeline to get rid of junk on
892 * check.lrzsz: use source files for resume test.
894 Sun Aug 25 11:11:17 1996 Uwe Ohse <uwe@tirka.gun.de>
896 * src/zm.c (zsendline_init): if turbo_escape is set:
897 do not escape ^P, 0200|^P,015,0215.
899 * src/lsz.c (main): recognize -T aka --turbo, sets variable
902 * src/zm.c: new variable turbo_escape.
904 * src/lsz.c (calc_blklen): calculated with *full* last block, causing
905 to choose smaller block sizes if last block not full.
907 * src/zreadline.c (readline): print strerror(errno) if read
908 returned -1 bytes and Verbose > 5.
910 Sat Aug 24 16:39:41 1996 Uwe Ohse <uwe@tirka.gun.de>
912 * src/rbsb.c (from_cu): debug messages deleted.
914 Fri Aug 23 14:32:51 1996 Uwe Ohse <uwe@tirka.gun.de>
916 * src/lsz.c (usage1): usage1 is static, had static prototype,
917 but was not made static.
919 * src/lrz.c (procheader): case result of strdup because we
920 might not have a prototype for it.
922 * lib/alloca.c: provide xmalloc.
924 * configure.in: use GCC-CFlags only if using gcc (did a test
927 Thu Aug 22 19:48:16 1996 Uwe Ohse <uwe@tirka.gun.de>
931 * configure.in (VERSION): changed to 0.12.7
933 Tue Aug 13 00:00:27 1996 Uwe Ohse <uwe@tirka.gun.de>
935 * check.lrzsz: accepts third parameter (x,y,z,z8,sz-r,rz-r,abuse),
938 * src/timing.c (timing): DST_NONE might be undefined.
940 * src/lsz.c: do not include unistd.h, limits.h.
941 (wcsend): dynamically alloca tmp and pa variables (PATH_MAX).
944 * src/zglobal.h: get alloca.
947 Mon Aug 12 21:46:09 1996 Uwe Ohse <uwe@tirka.gun.de>
949 * src/lrz.c (procheader): dynamically allocate Pathname-String
950 (PATH_MAX may be variable).
951 (wcreceive): dynamically allocate Pathname.
953 * configure.in: check for sys/param.h
955 * src/rbsb.c: don't include sys/stat.h, sys/types.h
958 * src/lrz.c: don't include time-includes.
959 do not include sys/stat.h, unistd.h
961 * src/zglobal.h: include time-includes.
962 include sys/stat.h, sys/types.h
963 #define PATH_MAX if needed.
965 Sun Aug 11 07:39:37 1996 Uwe Ohse <uwe@tirka.gun.de>
967 * src/lrz.c (rzfile): instead of sending ZACK flush XON flush
968 send (ZACK | 0x80) to remote. This removes on write operation.
970 * src/zm.c (zshhdr): use a mask of 0x7f for frametype (see change
973 * configure.in (VERSION): increased version number to 0.12.6
975 * src/lsz.c: buffersize, use_mmap: new variables.
976 (long_options): add --bufsize aka -B option.
977 (wcs): added support for variable buffer size (input file).
978 (zsendfdata): use mmap only if use_mmap != 0.
979 (usage): show -B option.
981 * po/de.po: added translation for -B option.
983 * src/lrz.c (usage): show -B option.
986 * man/lrz.1: documented -B option.
989 * src/lrz.c: added extern declarations for time(), strerror()
990 and strstr(), if not STRICT_PROTOTYPES. (phdm@info.ucl.ac.be)
992 * src/lrz.c: (procheader): use variable size FILE buffer.
993 buffersize: new variable
994 (main): added -B-Option to set buffersize.
995 (long_options): new option --bufsize aka -B.
997 * acconfig.h: #undef STRICT PROTOTYPES
999 * configure.in: remove AC_PROG_LN_S (not used anymore).
1000 moved "test $prefix = NONE && prefix=/usr" to local part
1001 (if host == tirka.gun.de). (phdm@info.ucl.ac.be)
1002 if -Wstrict-prototypes in CFLAGS then
1003 AC_DEFINES(STRICT_PROTOTYPES).
1005 * src/Makefile.am (install-exec-local): used ln, not ln -s.
1006 don't use -f option to ln (unportable). (phdm@info.ucl.ac.be)
1008 * check.lrzsz (z_test_files): try mknod if mkfifo failed.
1009 (phdm@info.ucl.ac.be)
1011 * src/rbsb.c: sys/types.h and sys/stat.h included twice.
1012 (phdm@info.ucl.ac.be)
1014 * config.guess, config.sub: replaced by autoconf-2.10 version.
1015 (phdm@info.ucl.ac.be)
1017 Tue Aug 6 11:16:12 1996 Uwe Ohse <uwe@tirka.gun.de>
1019 * src/zm.c (count_blk) (printout_blocksizes): neuer Code.
1020 wenn DEBUG_BLOCKSIZE definiert ist und gcc verwendet wird,
1021 wird am Ende der Übertragung eine Statistik der Blockgrößen
1022 mit syslog(LOG_DEBUG) ausgegeben.
1024 * src/zglobal.h (CANBREAK): nun hier definiert.
1025 (USE_SGTTY,USE_*TERMIO*): nun hier definiert, includes finden
1028 * src/rbsb.c: einen Teil der Includes nach zglobal.h verlegt
1029 (lrz.c benötigt CANBREAK).
1030 (sendbrk): #define CANBREAK nach zglobal.h verlagert.
1032 Sat Aug 3 16:14:47 1996 Uwe Ohse
1034 * configure.in: change version number to 0.12.5
1037 Wed Jul 24 13:14:45 1996 Uwe Ohse <uwe@tirka.gun.de>
1039 * configure.in: AC_REPLACE_GNU_GETOPT missing.
1041 Tue Jul 23 16:20:06 1996 Uwe Ohse <uwe@tirka.gun.de>
1043 * src/rbsb.c (rdchk): f should have been fd.
1045 * src/zperr.c: include errno.h
1047 Fri Jul 5 15:51:51 1996 Uwe Ohse <uwe@tirka.gun.de>
1049 * configure.in: AC_DEFINE(HAVE_STRERROR,1)
1051 * acconfig.h: #undef HAVE_STRERROR
1053 Thu Jun 20 16:42:26 1996 Uwe Ohse <uwe@tirka.gun.de>
1055 * src/Makefile.am (uninstall-local) (install-exec-local):
1056 new targets, creating symlinks from l[rs]z to
1059 Sat Jun 15 08:13:41 1996 Uwe Ohse
1061 * changed version number to 0.12.4
1063 Thu Jun 13 08:25:22 1996 Uwe Ohse <uwe@tirka.gun.de>
1065 * oh, i should have written this in english. Sorry.
1067 * check.lrzsz: neue Tests, ob recovery funktioniert.
1069 * lsz.c: wenn sender keine Konvertierungsoptionen
1070 (ZCBIN, ZCNL oder ZCRESUME), sondern das Feld
1071 auf 0 läßt, wird nun ZCBIN angenommen. Und schon
1072 funktioniert die `-r'-Logik in procheader().
1074 * zm.c (zdlread): weite Teile werden nun ge-inline-d.
1075 Das spart in etwa drei Funktionsaufrufe pro
1078 * src/lrz.c (procheader): oops, setvbuf wurde nur bei
1079 der ersten Datei aufgerufen.
1081 * src/lrz.c (usage):
1082 * src/lsz.c (usage): In der Usage-Zeile wurden nicht alle
1083 Optionen ausgegeben. Es waren ohnehin ohnehin zu viele,
1084 deshalb wird [options] geschrieben.
1086 * check.lrzsz: Behandlung von /pub/gnu/emacs-*.tar.gz war
1087 falsch (der Fall, daß sie nicht da waren, wurde nicht
1089 Wenn ZMODEM-Test fehlschlug wurde am Ende ausgegeben, daß
1090 XMODEM nicht funktioniert.
1092 Sun Jun 9 07:43:32 1996 Uwe Ohse <uwe@tirka.gun.de>
1094 * Prototypendeklaration für gettimeofday aus timing.c entfernt,
1095 kollidiert mit Solaris oder HP/UX. Sollte ohnehin überflüssig
1098 Sat Jun 8 23:56:42 1996 Uwe Ohse
1100 * configure.in: Versionsnummer auf 0.12.3 erhöht.
1101 AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl)
1102 wird nun aufgerufen.
1104 * zm.c,lsz.c: Variable Zmodem, irrtümlich am Mittwoch
1105 verkannt (sie bedeutete nicht "wir benutzen Zmodem",
1106 sondern "ZModem-Request erhalten") und entfernt, ist
1107 nun wieder eingebaut als zmodem_requested.
1108 * lrz.c: Zmodem -> zmodem_requested.
1110 Thu Jun 6 12:03:24 1996 Uwe Ohse <uwe@tirka.gun.de>
1114 * go away from flat directory.
1115 * internationalized.
1118 * added syslog support.
1119 * added termios support.
1120 short: everything changed.
1122 Mon Jun 3 08:06:52 1996 Uwe Ohse <uwe@tirka.gun.de>
1124 * lsz.c (countem): replaced access(,04) with access(,R_OK).
1126 (usage): protoized, added parameter ("describe failure").
1127 (chkinvok), (chartest), (zsendcmd), (bttyout), (saybibi),
1128 (getinsync), (canit), (zsendfdata), (zperr),
1130 * lrz.c (bttyout): moved to zm.c
1132 * lsz.c: include unistd.h, define R_OK if undefined.
1134 * Makefile.in (MOSTLYCLEANFILES): added lint target.
1136 * timing.c (timing): got rid of a warning.
1138 * configure.in: added missing AC_ARG_PROGRAM
1140 ----------------------------------------------------------------------
1141 Original lrzsz CHANGES file:
1142 ----------------------------------------------------------------------
1145 Made a bunch of changes to the last public domain rzsz release to
1146 make progress reports look pretty under various communications packages.
1147 Most mods are to lrz.c and lsz.c to give only a reasonable amount of
1148 information while a transfer occurs.
1152 Whoops. Changed the location of 'rzlog' (the logfile) to /var/adm
1153 instead of /tmp to meet the requirements of the Linux FSSTD. Also fixed the
1154 Makefile so it uses relative links we don't confuse oddly configured
1155 systems. Included the GNU General Public License for convenience.
1159 Tk interface for progress reporting under X11.
1162 Matt Porter <porter+@osu.edu>
1168 - disabled log file code in rz.c and sz.c
1169 - added timing code / transfer rate calculation to rz.c and sz.c
1170 (new code in timing.c)
1173 0.12b - 5-26-96 to 6-2-96 Uwe Ohse <uwe@tirka.gun.de>
1175 - lrz.c: Restricted mode now defaults to 1. To turn off restricted
1176 mode use -U. Use -R to disable creation of directories and
1178 If $ZMODEM_RESTRICTED is found Restricted mode defaults to 2
1179 (no creation of directories and invisible files), but can still
1180 be reset through -U (whoever gives the options is also able
1181 to set/unset environment variables).
1182 Turning of restricted mode is impossible if running under
1184 Remote command execution is disabled in restricted mode.
1185 - lsz.c: Restricted mode is turned on if running under a restricted
1186 shell, or -R is given, or $ZMODEM_RESTRICTED is set.
1187 With -U restricted mode is turned off unless running under a
1189 - lrz.c: exitcode in main() was not initialized.
1190 - lsz.c: missing break statement after -r option added (sz). -r implied
1191 -q, this is certainly not needed.
1192 - lsz.c: threw out TXBSIZE-code (stdio can do that better - without
1193 TXBSIZE the benchmarks give better results). Only lossage:
1194 can't seek on pipes anymore (but that didn't work with large buffers
1195 and long delays or really fast lines anyway).
1196 - lsz.c: use mmap if possible.
1197 - lrz.c: zmputs used to write a string in single byte writes. Changed
1199 - lrz.c, lsz.c: now recognize x- or y-modem-mode even if named lsb or lsx
1200 (instead of sb or sx).
1201 ### TODO: make that work with program_transform_name.
1202 - lrz.c: increased HOWMANY to 8192 (255, if NFGVMIN is not defined)
1203 - lrz.c: added a missing error message.
1204 - lrz.c, lsz.c: reenabled timeout code, can be disabled with the
1206 - lsz.c, lrz.c: added timesync protocol extension by Peter Mandrella
1207 (can be totally disabled with configure --disable-timesync). if lrz is
1208 called with -S it will request a timesync packet and complain about
1209 larger differences if -v is given, if -S is given twice it will set
1210 the system time to the senders time (if running under root, oh well).
1211 lsz recognizes timesync protocoll only if -S is given
1212 (so timesync is normally disabled and doesn't introduce any
1214 - lrz.c: added crash recovery (this is a really simple extension to the
1215 receivers file opening code). Both lrz and lsz no have a -r switch
1216 to request resume of a former transfer.
1217 - lrz.c: used putc to write the data to disk. changed that to fwrite.
1218 - lrz.c: now removes the received file if fclose() failed.
1219 - lrz.c/lsz.c: reduced number of outputs to stderr (progress/BPS-rate was
1220 printed far too often and reduced the performance).
1221 - lrz.c/lsz.c: added option -O: "disable timeout/SIGALRM handling".
1222 This should increase performance significantly, and, on the other
1223 hand, makes l[sr]z wait forever (until it is interrupted/killed).
1224 Anyway: Even without -O performance is good enough. 280KB/sec
1225 through TCP/IP (localhost). -O gives about 290KB/sec.
1226 - lrz.c/lsz.c: implemented 8K blocksize (give lsz the -8 option to use
1227 it - it defaults to traditional 1K).
1228 - lrz.c: reduced calls to readline() (too many function calls - now
1229 uses a macro call in zm.c).
1230 - lsz.c: Option -c (sending commands to remote) disabled in
1232 - lsz.c, lrz.c: PUBDIR is now optional (i don't trust public writable
1234 - lrz.c, lsz.c: threw out substr() - strstr is available since ages.
1235 - changed error recovery mode: old didn't ever increase block
1236 sizes. new one gets far better performance if transmission is
1237 bad for only a short time.
1238 - lrz.c, lsz.c: off_t is long long under FreeBSD, can't be printed
1242 - almost all Files: autoconf'd them.
1244 - Makefile.in: largely rewritten, now mostly conforms to the
1245 GNU standards (mostly: i don't know what i've forgotten).
1247 - updated version number to 0.12b