Dr. Dobb's is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Channels ▼
RSS

On the Networks


April 1993/On the Networks

It's Back?

Sydney S. Weinstein, CDP, CCP is a consultant, columnist, lecturer, author, professor, 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 [email protected] (dsinc!syd for those that cannot do Internet addressing).

Once again, and with no explanation, comp.sources.unix. seems to have gotten restarted again, just in time for the new year. However, comp.sources.x is still silent. Well, while it is still active, I guess it's time to make the best of comp.sources.unix. Welcome back Paul. (The moderator is Paul Vixie.) Let's see if we can keep it coming and empty out the backlog, as many of these sources are over a year old.

First on the new list is mytinfo from Ross Ridge <[email protected]>. mytinfo is a single library that combines the functionality of the standard UNIX termcap and terminfo libraries. It has the special ability of being able to fetch terminal descriptions from both termcap and terminfo databases regardless of which set of functions, termcap or terminfo, are used. It can even read terminal descriptions from terminfo source files. Also included is a tool to convert from/to termcap and terminfo source and binary formats. It was posted as Volume 26, Issues 77-79.

If you need restrict privileged access (super-user access) to a small set of commands, then op from David Koblas <[email protected]> is just what you need. Posted as Volume 26, Issue 80, it provides restrictions on who can execute the commands, what commands they can execute, and even what arguments are to be allowed to the commands. Just perfect for restricting mounting of CD-ROM drives or floppies as UNIX file systems (a task, alas, that requires super user-access).

A variant on John Walker's settime for setting the clock on a Sun Sparcstation from a dial up access service was posted by John Rushford <[email protected]> as nisttime for Volume 26, Issue 81. This version is for System V flavors of UNIX and supports accessing both the NIST master clock at the National Institute of Standards and Technology and the USNO master clock at the Naval Observatory. The script will dial the respective clock, receive the correct time, and then update the systems clock.

Copying boot tapes, or other multi-volume tapes under UNIX can be troublesome. You often have to spool them to disk first, and there isn't enough room. Thad Floryan <thad@btr. com> has provided tprobe-1.0 which can reveal a tapes-existing saveset layout, copy the tape using drives located anywhere on the network, and perform media conversions. Published as Volume 26, Issue 84, it even includes documentation.

If your C is missing the library routine strftime then the version submitted by Arnold Robbins <[email protected]> will fit the bill. strftime is a format-string-controlled internal time representation to ASCII conversion filter. It supports locale for internationalization. strftime, and a date command wrapper, are Volume 26, Issue 85.

Utilities Galore

Utilities abound this time in comp. sources. misc.

If you are tired of nohup leaving nohup.out files lying around, consider nhup from Gnanasekaran Swaminathan <[email protected]>. It works like nohup, as it runs the command in the background, immune from hangup and quit signals, but unlike nohup, if the input and output are not redirected, they are set to /dev/null and not a nohup. out file. nhup is Volume 33, Issue 80.

pdcurses is a public domain Curses C library that is compatible with the UNIX System V 3.2 curses library. It is written to support most of the popular DOS and OS/2 C Compilers. This new version, 2.0, is almost a total rewrite of the prior 1.4 version, by a new maintainer, Mark Hessling <[email protected]>. Posted as Volume 33, Issues 81-91, a dmake 3.8 flavor makefile is included for both DOS and OS/2. New in 2.0 include X/Open routines, Color support in System V format, OS/2 port, and many functions supported as both functions and macros.

Farrell McKay <[email protected]> released a bug-fixed version of his xcb-2.1 program for Volume 33, Issue 92. xcb provides easy access to the cut/paste buffers in the X server. New is WM_DELETE_WINDOW protocol support, and fixing of two major bugs.

MetalBase, a simple database engine, portable between platforms (UNIX, MS-DOS, etc.) has been posted as mbase by Richard Parvin Jernigan <[email protected]> for Volume 33, Issues 119-126. This latest release, 5.0, has more field types, three-phase locking to ensure multi-user access without any system-based IPC, and internal caching to provide twice the speed and up for rebalancing indices. A conversion utility for MetalBase 4.0 and 4.1a relations is provided. Other features include runtime encryption on all platforms, creation of relations on-the-fly, and a flexible report writer.

Lee Hounshell <[email protected]. com> has submitted his C++ object library var for Volume 33, Issues 127 and 128. var provides a "super-string" class with associate array capabilities. The var class does a pretty good job of offering a data object that assumes its "type" at runtime, based on context of use. Rarely will you need to declare ints, or longs, or doubles or char[] or even string objects! var does it all (or at least tries to).

An alternative user interface for ftp was created by Mike Gleason <[email protected]>. ncftp was posted as Volume 34, Issues 14-16. It supports autologin as anonymous, access to sites in your .netrc file using a substring of their name, use of a pager to view remote directory listings, a transfer progress meter, activity logging, and much more. It's not as impressive as ftptool, but it doesn't require an X play either. A bug-fix patch (patch 1) was posted in Volume 34, Issue 20.

Two C++ classes for outputting formatted numbers were contributed by Scott Kirkwood <[email protected]>. The first, fformat for Volume 34, Issue 23, supports scaling and editing, truncation to fit using SI notation (K, M, etc.) for floating-point numbers. The second, iformat, in Issue 24 is for integer numbers and offers similar capabilities.

A collection of X11 image processing and display utilities was contributed by John Cristy <[email protected]> for Volume 34, Issues 28-54 with patches in Issues 85-87, 88, 89, 98 and 118. The imagemagick utilities read and write MIFF images and has utilities to access GIF, JPEG, PostScript, PPM, RLE, SUN Raster, TIFF, Utah Raster, VICAR, X Bitmap, X Window Dump formats. It can display images, support animation, perform processing on images (scaling, rotation, color reduction, and more), and much more. Support for the JPEG4 release is also included. (See the next item.)

In addition, the Independent JPEG Group <[email protected]> has updated its JPEG software to version 4 in Volume 34, Issues 55-72 jpeg in this new version provides significant speedups, improved image quality, error recovery, and better portability.

A matrix package for C++ was submitted for Volume 34, Issues 103-110 by Robert Davies <[email protected]>. newmat07 supports the matrix types: Matrix, UpperTriangularMatrix, LowerTriangularMatrix, DiagonalMatrix, SymmetricMatrix, RowVector, ColumnVector, BandMatrix, UpperBandMatrix, LowerBandMatrix, and SymmetricBandMatrix. Only one element type (float or double) is supsuported. The package includes the operations *, +, -, (defined as operators) inverse, transpose, conversion between types, submatrix, determinant, Cholesky decomposition, Householder triangularisation, singular value decomposition, eigenvalues of a symmetric matrix, sorting, fast fourier transform, printing, an interface with Numerical Recipes in C, and an emulation of exceptions.

A faster version to freeze was released as an update by Leonid A. Broukhis <[email protected]> for Volume 34, Issues 125-127 with a patch in Issue 128. Version 2.4 of this file compression program is at least 20% faster than before and memory requirements have been reduced such that it now fits in small model for segmented 16-bit architectures.

On the patch front, ecu had patch 4 issued against version 3.20 by Warren Tucker <[email protected]>. This patch, to the extended cu utility, fixes some problems with SVR4 locking logic, problems with FAS 2.10, and adds console xon/xoff support. The patch is Volume 33, Issue 79.

cproto was updated to patch 5 in Volume 34, Issue 3 and patch 6 in Issue 5 by Chin Huang <[email protected]>. This patch fixes some bugs and adds options to rewrite function declarations to include both old and new definitions controlled by an ifdef flag and support of more type qualifiers. Patch 6 just fixed a problem with compilation on pre-ANSI C compilers.

Oraperl, the oracle user subroutine extensions to Perl were patched to level 3 in Volume 34, Issue 31. The principal change is that the bind and do functions now return a row count.

Remind version 3, received patch 1 to fix some portability bugs and add a new PostScript output format for its calendar which is much more attractive than the old ASCII one. The patch is Volume 34, Issues 79 and 80.

The Info-ZIP group <[email protected]> submitted patch 1 to unzip50 for Volume 34, Issue 124. This patch fixes some compatibility problems with PKZIP 2.04c and one bug in password checking.

Games or Alt?

There seems to be a war between comp.sources.games and alt.source for posting improvements to the tetris game, it seems to have been everywhere this past month. In comp.sources.games the version was submitted by Qiang Alex Zhao <[email protected]> for Volume 15, Issue 44-45, with patchs in Issue 46, 47 and 55. This version is more portable, and uses no special toolkits. Plus the blocks are bigger and easier on the eyes.

In addition, three flavors of the minesweeper game for X were posted. xmines, an Xview variant from Manolis Lourakis <[email protected]> in Volume 15, Issue 28, xbomb using Xlib from John Heidemann <[email protected]> in Volume 15, Issues 48-51, and xdemineur also using Xlib from Marc Baudoin <[email protected]> in Volume 15, Issues 52-54.

From down under comes dinkum2, the Australian adventure game. In Dinkum you'll search for treasure in the Australian Outback. You give the commands and it'll do the dangerous work. It's a text-based adventure-type game submitted by Gary Allen <[email protected]> for Volume 15, Issues 36-43.

A version of accordian solitaire was submitted by Eric Lechner <[email protected]> for Volume 15, Issue 27. In accordian a deck of cards is dealt to the playing table (either a card at a time, or the whole deck at once), and the goal is to move stacks of cards around until a single stack of cards is left on the table. Stacks of cards can only move 1 or 3 spaces up the line of cards, onto other stacks whose top card is of the same suit or rank as the current stack's top card. If you end up with a single stack, you win the game!

A multi-player X11 tank game and server that supports network-wide access and a rather large display (at least 1024 x 800 is recommended, but 1080 wide is even better) was submitted by Bernard Hatt <[email protected]> for Volume 15, Issues 29 and 30 with Patch 1 in Issue 31. xtb uses UDP sockets for communications and robot tanks for adding difficulty.

Another multi-player network wide game is robot_hunt from Steve Boswell <[email protected]>. This curses-based game uses sockets for communication. The object is to hunt down other players in a maze and kill them before they, or the robot, kill you. Robot hunt is Volume 14 Issues 32-35.

Previews from alt.sources

As usual, plenty in alt.sources so here are just a few highlights of what's to come in the main stream groups.

Steven Grimm <[email protected]> is just about ready to post his Workman X-based CD player to the main stream groups. In the interim, several beta copies have appeared, with the latest being on December 19, 1992 in nine parts. It supports an XView interface and support most of the standard audio CD player features using the systems CD player. It also supports a database of CDs and provides information from the database about the CD in the player.

An X11/Motif file manager was posted by Jan Newmarch <[email protected]> in 17 parts on November 19, 1992. xmfm is a file manager that shows files as icons in panes. It divides the display of a directory into three areas — executable files, directories, and ordinary files — to distinguish between them. When a file is selected a range of actions can be performed on it. This is configurable on a per-user basis. xmfm also allows arbitrary programs to be run from within it. A patch was posted on November 24, 1992.

Psroff was updated with patch 15 issued on January 13, 1993. This patch appears here due to the long delay in the comp.sources.unix queue. This large patch provides many small changes including paper and orientation changes for both LJ and PS modes.

xcoral is a multiwindows mouse-based text editor, for X Window system, with a built-in browser to navigate through C functions and C++ classes hierarchies. xcoral provides variables width fonts, menus, scrollbars, buttons, search, regions, kill-buffers and a 3-D look. Commands are accessible from menus or standard key bindings. xcoral is a direct Xlib client and was posted on January 15, 1993 by Lionel F. <ls@sun3. lri.fr.> in 14 parts.


Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.