Short: FIFO library and handler v38.1 Author: M. Dillon, D. Varley, H. Verkuil, finally Joerg.Hoehle@gmd.de (Jörg Höhle) Uploader: Joerg.Hoehle@gmd.de Type: util/misc Requires: OS 1.x or better Replaces: fifo-38.0-src.lha, fifo-38.0-bin.lha, fifolib37_5.lha, utils/misc/fifolib374.lzh, util/boot/FifoDev.lha This is an enhancement to fifolib-37.4/37.5/38.0, an implementation of a FIFO or pipe by Matthew Dillon. I decided to modify FIFO: (just fifo-handler, not the library) because I was sick of the Enforcer-hits occurring when using ls-4.7ljr inside a GNUEmacs shell buffer. This work merges and enhances fifolib_37.4, 37.5 and 38.0. Changes: o safe handling of ACTION_SCREEN_MODE. o ACTION_SCREEN_MODE only allowed if opened with 's' (shell). It doesn't make sense otherwise as the packet does not include the file handle. o ACTION_WAIT_CHAR adapted and corrected from 37.5 and 38.0, supports real timeouts. o recognizes "CONSOLE:" o safe handling of low memory once FIFO is initialized. o new ACTION_CHANGE_SIGNAL, ACTION_IS_FILESYSTEM. o correct result for the unimplemented ACTION_SEEK. o more error return codes (WRITE_PROTECTED, BAD_STREAM_NAME, NO_MEM ...) Incompatible change: o ACTION_SCREEN_MODE is refused if FIFO: not opened in cooked mode. (Was not refused, but buggy in the original handler). The rationale is that programs which open FIFO: in shell but not in cooked mode have good reasons to do so (remcli, Emacs), whereas shell programs may always switch to cooked mode at program exit, thus starting cooked mode inadvertently. TODO o safe handling of initialization w.r.t. low memory. o? use 2.0 functions. o sent EOF once only, like CON: does. ============================= Archive contents ============================= Original Packed Ratio Date Time Name -------- ------- ----- --------- -------- ------------- 485 250 48.4% 22-Apr-95 10:31:18 +fifo_protos.h 26772 8294 69.0% 13-Dec-95 15:33:56 configure 159 129 18.8% 12-Dec-95 06:55:24 configure.in 1933 704 63.5% 11-Dec-95 20:25:32 defs.h 2492 897 64.0% 20-Dec-95 02:08:00 DMakefile 306 182 40.5% 11-Dec-95 00:35:02 +fifo_lib.fd 33064 10168 69.2% 19-Dec-95 23:47:48 fifo-handler.c 10569 3174 69.9% 20-Dec-95 01:08:38 fifo.c 12061 5005 58.5% 20-Dec-95 01:08:40 fifo.doc 1091 322 70.4% 12-Dec-95 08:48:14 fifo.doc.info 12915 5011 61.2% 20-Dec-95 00:32:16 fifolib.doc 433 218 49.6% 12-Dec-95 08:48:12 fifolib.doc.info 5739 2249 60.8% 14-Dec-95 23:27:34 handler.h 250 169 32.4% 01-Jan-91 19:18:20 htag.a 985 556 43.5% 09-Dec-95 12:01:56 htag.s 1038 347 66.5% 13-Dec-95 16:05:46 +fifo.h 3154 642 79.6% 09-Dec-95 07:39:48 +fifo.h 2186 952 56.4% 16-Jul-95 10:27:44 install.sh 7372 4409 40.1% 20-Dec-95 00:53:08 +fifo-handler 3277 1378 57.9% 19-Dec-95 23:47:48 lib.c 1048 341 67.4% 29-Jul-92 11:45:18 +fifol.lib 1024 335 67.2% 29-Jul-92 11:45:18 +fifos.lib 1020 338 66.8% 29-Jul-92 11:45:20 +fifosr.lib 957 481 49.7% 11-Dec-95 21:48:02 +fifo.h 3212 2004 37.6% 20-Dec-95 01:13:38 +fifo.library 2692 1137 57.7% 20-Dec-95 01:51:44 Makefile 2693 1119 58.4% 20-Dec-95 01:51:42 Makefile.in 400 259 35.2% 19-Dec-95 23:53:44 Product-Info 259 163 37.0% 20-Dec-95 01:11:48 +fifo.h 1285 617 51.9% 20-Dec-95 00:12:36 README 487 268 44.9% 12-Dec-95 08:48:14 README.info 2728 809 70.3% 19-Dec-95 23:47:46 tag.a 1361 496 63.5% 19-Dec-95 23:47:46 tag.s 3005 1285 57.2% 13-Dec-95 19:22:34 testfifo.c 954 559 41.4% 20-Dec-95 00:32:12 TODO 2037 1083 46.8% 10-Dec-95 22:32:30 version.doc 8245 2998 63.6% 20-Dec-95 02:32:28 remcli.c 8900 5306 40.3% 20-Dec-95 02:33:02 +RemCLI -------- ------- ----- --------- -------- 168588 64654 61.6% 23-Dec-95 15:12:54 38 files