Columns


On the Networks

Backlog Forces New Rules

Sydney S. Weisntein


Sydney S. Weinstein, CDP, CCP is a consultant, columnist, author, and president of Datacomp Systems, Inc., a consulting and contract programming firm specializing in databases, data presentation and windowing, transaction processing, networking, testing and test suites, and device management for UNIX and MS-DOS. He can be contacted care of Datacomp Systems, Inc., 3837 Byron Road, Huntingdon Valley, PA 19006-2320 or via electronic mail on the Internet/Usenet mailbox syd@DSI.COM (dsinc!syd for those who cannot do Internet addressing).

Well, it didn't take long for comp.sources.unix to again build up a backlog of over 100 submissions dating back six months to February 1992. The moderators are not busy this time; this time it's a problem with the submissions. So the rules are changing for how submissions will be accepted and posted to comp.sources.unix.

Paul Vixie (the head moderator) tried to keep the queue of postings roughly in order, and when problems occurred, he would contact the author, or fix up the package himself. Well, a number of the early postings in the queue had problems, and it caused the entire posting queue to backlog. Paul declared enough, and has set up some new rules:

1. If the package has problems, such as no proper Makefile, no README, or no man pages for each installed command or library routine in a public code library, then it will be bounced back to the author, with suggestions for improvement. The package will have to be resubmitted when it is corrected. No copy will be kept by the moderators, and they will not reserve a place in line for it.

2. The package must be packageable using the cshar2 shell archiving package. This repackaging will be gladly performed by the moderators. If the package cannot be packaged in cshar2 due to some size restriction, they will consider using a different shell archiver, but may refuse to publish the package.

3. The easiest and best form of submission will be to ask the moderators to retrieve the package as a .tar.Z file and let the moderators package it into cshar2 format, which they will gladly do.

4. The goal is to post things in a week or two after submission, or to return them within that time frame.

Noble goals, but I can state that as of two weeks after the new rules, few packages have been posted from the backlog. I guess the flood will fill a future column, when it arrives.

Now on to the postings:

Tom Limoncelli <Tom_Limoncelli@Warren.MENTORG.COM> submitted tpage2, his utility to send pages to alphanumeric pagers. It lets your computer speak the protocol, IXO, used by the alphanumeric pager companies. It supports a dialing directory, and can do special tricks with mail messages. It maintains a directory of pager numbers and pins, can page the person on duty (reading a schedule file), used with a mail forwarding program like procmail, it can forward electronic mail to the pager, and it also can support a pool of modems. tpage2 is Volume 26, Issue 59.

David Bath <dtb@otto.bf.rmit.oz.au> submitted a small package to provide command-line interfaces to the C runtime library routines for user ID and group ID functions. The package was submitted for Volume 26, Issue 60. Access is provided to cuserid, getgrgid, getgrnam, getid, getlogin, getpwnam, getpwuid, getuid, and grinf.

Since the mount command requires root privileges, it is a stumbling block to using CD-ROMs and floppies in a multi-user environment. Will Deich <will@surya.caltech.edu> has provided a small program for Volume 26, Issue 62 that allows users to execute other programs as root without "unduly compromising security." His program, super, can not only execute C programs, but it also can run shell scripts. It uses a control file to limit access to the commands and limit that access by user and group IDs.

ni, contributed by Alex Lopez-Ortiz <alopez- o@neumann.waterloo.edu> fills the niche between a full GUI (Graphical User Interface) front-end to UNIX and its normal terse text commands. He contributed ni for Volume 26, Issue 63. It provides a Curses-based point and shoot front-end for UNIX commands. It is actually script-driven, so scripts can easily be developed for many commands. It includes several example scripts such as a history browser, ls tree browser, and ps browser.

The last posting this month in comp.sources.unix is a follow-up patch to the patch program. patch is the program used to apply difference patches to source distributions. Several bugs have been fixed, including one major one introduced in the 12u6 patch. This new patch, 12u7, appeared in comp.sources.bugs on July 6,1992. The patch 12u7 is available for ftp from prep.ai.mit.edu in the directory /pub/gnu.

Does X Know What Time It Is?

Clocks and alarms were high on the short list of new postings appearing in comp.sources.x this time. Simon Marshall <S.Marshall@sequent.cc.hull.ac.uk> contributed xalarm v3.04 for Volume 18, Issues 7-10. xalarm is a combination of leave v1 and calendar v1, but in an interactive format. Alarms can be set by command-line options, or via a pop-up window. At the appropriate time, xalarm pops a window up to remind you of the event. These windows can pop up at specified times before the alarm is triggered to warn you of the event as well as at the actual event time.

wclock from Richard Caley <R.Caley@ed.ac.uk> appeared as Volume 18, Issues 11-14 and yes, it's another X clock. This variant's claim to existence is its "rather unusual method of indicating the current time." The author considers it more of a conversation piece than a time piece, but he does use it.

Tony Field <tony@ajfcal.cuc.ab.ca> submitted an enhancement to the old xmandel program for Volume 18, Issues 15-17. The revision adds both Athena or Motif widgets for the GUI, gif output files, support for varying bit-depth displays, and zooming.

Since the topic of how to display rotated text in an X window often appears in the discussion groups, Alan Richardson <mppa3@syma.sussex.ac.uk> submitted xrotfont for Volume 18, Issues 19-21. The code can rotate a normal server font or an outline font. The scalable font format used is the Hershey fonts, which are widely available with the X servers.

Refined Reviews

Only one posting in comp.sources.reviewed this time, and it's crefine. Contributed by Lutz Prechelt <prechelt@ira.uka.de> for Volume 2, Issues 13-19, crefine is a preprocessor for programs written in C or C++. It introduces an additional language construct, called refinement, which allows further decomposition with symbolic names inside functions.

The reviewers comment: "This program helps a user get away from the irritating details of C programming, at least for a while, and concentrate more on the algorithm part."

Major Update to Perl

The long awaited cleanup patch to Larry Wall's Perl appeared in comp.sources.misc this period. As usual, the list of enhancements, manual changes, and bug fixes runs over a hundred lines, at one line per topic. This is the long-awaited cleanup patch. Actually it was two patches, the first took Perl to PL33, and appeared as Volume 30, Issues 31-44. The second, also contributed by Larry Wall <lwall@netlabs.com> fixed some problems caused by the first large patch set and took Perl to 4.0 PL34. It was posted as Volume 30, Issue 45. New enhancements include a relaxed requirement for a semicolon at the end of blocks, scalar keys, %array now counts the keys, and several other small enhancements. Mostly this is a cleanup patch set.

Along with the updates to Perl, were updates to both Sybperl and Oraperl. Sybperl, the Sybase Database interface additions to Perl, had patch 5 contributed by Michael Peppler <mpeppler@itf0.itf.ch> for Volume 30, Issue 92. Patch 5 fixes some bugs and memory leaks, added the ability to login to a specified server without setting the DSQUERY environment variable and the ability to access the databases system table to describe the tables in the schema.

Oraperl had a complete re-release. Version 2, oraperl-v2, appeared in Volume 30, Issues 87-91 with a patch in Volume 30, Issue 99. Oraperl accesses Oracle databases using the Oracle Call Interface. New debugging code was added, along with caching of rows from the SQL select. Also added was support for LONG and LONGRAW datatypes as well as many bug fixes. The patch just fixes one of the test scripts.

I normally don't report on Perl scripts posted to the newsgroups, but with the major update to Perl in this column, I though I would give an example of a major package in Perl. The Squirrell Mail Server, mserv v3.0, is written in Perl, and was contributed for Volume 30, Issues 46-49 by Johan Vromans <jv@mh.nl>. A mail server is a program that responds sensibly to electronic mail messages. One common use is to retrieve files via electronic mail, and many archive sites run mail response servers. The Squirrell server can handle filename searches, filename completion (automatic substitution of version numbers and strings like .tar.Z), splitting and encoding of responses, and replies via e-mail or UUCP.

A monthly favorite, iozone again got a quick update. In Volume 30, Issue 16, Bill Norcott <bill@tandem.com> added support for ANSI C and raw devices. The new version is 1.15. Unless a major enhancement appears, this is the last time I will mention it in my column.

Tony Parkhurst <tony@sdd.hp.com> updated his pclcomp HP-PCL file-compression routines for Volume 30, Issues 17 and 18. This was a bufix re-release.

Byron Rakitzis <byron@archone.tamu.edu> released the update to version 1.4 of his implementation of the Plan 9 rc shell for Volume 30, Issues 24-30. The rc shell is a small, fast command interpreter with a syntax very close to C.

Chip Rosenthal <chip@chinacat.unicom.com> updated his prtscrn2 utility that can capture the contents of a console MultiScreenTM on SCO UNIX and XENIX. This newer version uses the console ioctl calls instead of reading kernel memory, so it does not need to be setuid, it is portable between UNIX and XENIX, and it fixes several bugs. It was posted as Volume 30, Issue 76.

Wietse Venema <wietse@wzv.win.tue.nl> released an update to his log_tcp package for Volume 30, Issues 79 and 80 with a small patch in Volume 30, Issue 94. This package is used to add logging and access controls to IP services. It supports RFC-931 username lookup, and protection against attacks from masquerading hosts. The patch fixes a problem with the RFC-931 name lookup code.

A really strange waste (?) of LAN bandwidth was posted to both comp.sources.misc and comp.sources.x. radio v2.0 is a set of programs that allow broadcasting multiple sound channels over an ethernet LAN, consuming about 1% of available bandwidth per channel, and playing these radio stations on the internal speakers of workstations connected to the net. Volume 30, Issues 85 and 86 in comp.sources.misc contain the broadcast and receiving programs by Guido van Rossum <guido@cwi.nl>. In the X group will be a Motif tuner program by Jack Jansen that allows tuning to the station of your choice (Volume and Issues unavailable by the deadline for this column)

Jon Saxton <jrs@panix.com> has ported the BSD UNIX indent program to support C++ as well as C program files for Volume 30, Issues 95-98. indent was written in 1976 at the University of Illinois and adopted by the BSD releases of UNIX. It is a very flexible indention program and is driven by a very long list of optional command-line switches. New is support for C++ program syntax.

A complete re-release of the tin newsreader leads off Volume 31, in Issues 1-15. Contributed by Iain Lea <iain%anl433.uucp@Germany.EU.net>, tin is more based on notes than rn. It supports full-screen, paged reading of both local and NNTP news spools and supports threads on Subject and/or Archive- name headers. New in Version 1.1PL4 is support for more systems, the group index command and thread options, and many bug fixes.

Volker Schuermann <Volker.Schuermann@unnet.w.open.de> released an update to version 1.6 PL10 of his mbox MINIX 386 and UNIX BBS. It uses NEWS to handle all boards/articles, and internal mailer for intraBBS mail, and traditional UNIX mail for intersystem mail. The re-release was posted in Volume 31, Issues 16-27.

Another update was a re-release of jgraph, now at version 8.0 from James Plank <jsp@Princeton.EDU>. Posted in Volume 31, Issues 31-37, jgraph takes a simple graph description language and converts it to Postscript for printing.

On the patch front, sc, the UNIX spreadsheet, was updated to version 6.21 with the issue of patch 4 for Volume 30, Issue 20. Submitted by Jeff Buhrt <prslnk!buhrt@iuvax.cs.indiana.edu>, this patch fixes some bugs, supports more special keys, can output FrameMaker MIF format, and adds additional system and compiler support.

Tony Field <tony@ajfcal.cuc.ab.ca> release patch 3 to psf3, his Postscript Print Filter program. New features include ISO-Latin1 encoding, page-usage accounting, duplex printing on printers that support double-sided printing, and the ability to print to a pipe. Patch 3 was posted as Volume 30, Issues 50-53.

gnuplot was updated to version 3.2 by a patch released for Volume 30, Issues 54-60 by Alex Woo <woo@ranext.arc.nasa.gov>. New are generic X11 device support, hidden-line removal for explicit surfaces, a table terminal driver, fixes to the IRIX 4.0 port and the PCL5 driver, addition of a NeXT driver and a pbmplus driver, and other various bug fixes. gnuplot is a command-line driver, interactive plotting utility that is capable of two- and three-dimensional functions and data files.

A small bug-fix patch to freeze was issued in Volume 30, Issue 70 by Leonid A. Broukhis <leo@ipmce.su>. freeze is a file compression program.

parseargs had patches 12 and 13 (Volume 30, Issue 72 and 73) released by Brad Appleton <brad@hcx1.ssd.csd.harris.com>.parseargs is a very powerful command-line argument parser. These patches fix a minor bug and add support for the Tcl shell.

Patch 5 was issued to John F. Haugh II's <jfh@rpp386.cactus.org> shadow, Shadow Password Suite. Posted in Volume 30, Issue 93, this patch fixes several bugs and adds support for sg command logging, and cleanup of dialup password lock files.

Chin Huang <cthuang@zerosan.canrem.COM> released patch 4 to cproto, a C function prototype routine. A bug in the promoting parameters was specified with typedefs. The patch is Volume 30, Issue 101.

It's Your Move

Chess is back in comp.sources.games. Version 4.0 of the gnuchess4 package was posted in Volume 13, Issues 89-100 with patch 1 in Volume 13, Issue 103. GNU Chess 4.0 is a derivation of GNU Chess 3.1+ with the bugs fixed and the code split into more manageable modules. The search algorithm has been cleaned up and the evaluation functions enhanced. The package includes an X, Sunview, Curses, IBM PC character set and ASCII versions of Chess.

Previews from alt.sources

Support for the Sound Blaster ProTM for BSD UNIX on a 386 was posted by Steve Haehnichen <shaehnic@ucsd.edu> in six parts (0-5) on June 13, 1992. New in the latest release are several application programs and an X-window interface to the audio mixer. The driver supports all features of the card except stereo sound recording.

Support for the original Sound BlasterTM under AT&T UNIX v3 and v4 was also posted on June 13, 1992 in four parts by Lance Norskog. It should work with the pro version also, but only supports those features found on the original board.

malloclib was updated to patch level 13 with a complete re-release in ten parts and patch 13 in four parts posted by Conor P. Cahill <cpcahil@virtech.vti.com> on June 23, 1992 and July 3, 1992 respectively. New are better auto-configuration and a major bug fix. The malloc library can detect many heap problems and is a drop in replacement for the standard malloc routines.

The multi-user X game, xpilot v1.2, where one pilots a fighter in a cave-like world that supports robot players, wormholes, cloaking, and multipoint gravity fields was posted on June 28, 1992 in eight parts by Bjoern Stabell <bjoerns@staff.cs.uit.no>. The game has some common features with Thrust and Gravity Force.