Commit Graph

745 Commits

Author SHA1 Message Date
gdr-ftp
a2225ddb83 vis.3, unvis.3:
initial checkin
1999-01-07 05:17:24 +00:00
gdr-ftp
25b2576666 syslogd.3:
- added a BUGS section
	- added info regarding syslogmt and vsyslogmt
sprintmt.3:
	- fixed a typo
1999-01-06 03:44:45 +00:00
gdr-ftp
a803274121 describe.src:
Added entry for ar(1), submitted by Scott Moberly.
1999-01-04 15:50:26 +00:00
gdr-ftp
49196eea67 logger.c:
- the syslog routines in libc should never have been changed to
	  take long parameters.  Restore the relevent code in this program
	  to the original types.
1999-01-04 05:13:56 +00:00
gdr-ftp
273780523c Makefile:
eliminate oldlog.c from the build.  old_syslog() was only used by
	syslog2.asm, and inspection showed it to be likely buggy anyway.
	It was missing a field in the passed data structure, and using
	it would cause any long-running daemon to run out of memory if
	didn't crash first.  For now I'm leaving oldlog.c where it is
	rather than doing a 'cvs rm'.

syslog.c:
	Major changes...
	- The facility/priority has gone back to being of type int vice long;
	  the original change was a red herring.
	- The current syslog implementation will now talk to Phil's original
	  syslogd.
	- The busy wait in sendPort now forces a context switch.

syslog2.asm:
	- I commented the sources while figuring out what Phil's syslogd
	  was doing.  I may was well check in those comments even though
	  this file is not currently used.
	- fixed the save name and the 'mcopy' directive

vis.c, unvis.c:
	- initial checkin
1999-01-04 05:10:36 +00:00
gdr-ftp
edee25c942 syslog.h:
- The facility/priority has gone back to being of type int vice long;
	  the original change was a red herring.
	- The current syslog implementation will now talk to Phil's original
	  syslogd, so only list the version zero protocol structure.
1999-01-04 05:09:04 +00:00
gdr-ftp
f880e0c973 vis.h: initial checkin 1999-01-04 05:08:13 +00:00
gdr-ftp
6b44130571 ports.c:
initial checkin for test re PR#102
1998-12-31 22:45:35 +00:00
gdr-ftp
8621395051 Makefile:
added kludge to allow rez files to be on Appleshare.
1998-12-31 21:34:56 +00:00
gdr-ftp
6d572535da binconst.mk, binrules.mk:
- Allow for rez source to be on Appleshare volumes.  Kludge is
	  not enabled by default (see paths.mk).
1998-12-31 21:26:34 +00:00
tribby
6269a8ca25 Changes for gsh version 2.0d8:
Fixed several mutual exclusion problems, including a particularly nasty
one that would cause gsh to loop forever inside the memory manager. (You
could identify this one by the "BRA (-23)" at the bottom of the infinite
loop.)

Fixed the string vector print routine to properly handle all numbers of
entries in the hash table.  Previously, it would always print duplicate
entries if there were < 6 commands hashed, and would sometimes print
duplicates (depending on previous contents of an internal table) for
other numbers of commands.

gsh would wait on background processes started from an exec file
(executed, not sourced). Now the exec file does not wait on the process,
but the background process is not associated with the parent shell after
the exec file terminates.

Made gsh globbing work more like csh: if none of the requested patterns
are found, print "No match" and exit.

At startup, if /etc/glogin, $HOME/glogin, or $HOME/gshrc does not exist,
don't report a "file not found" error message. (PR#100)
1998-12-31 18:29:14 +00:00
gdr-ftp
bc56eb46eb describe.src:
- new entries from Scott Moberly: dd, printf, soelim, tty,
	  uudecode, and uuencode
1998-12-31 09:45:00 +00:00
gdr-ftp
f790e8d53c paths.mk:
Added the APPLESHARE_CASE_SENSITIVE macro.  See PR#98.  This
	is disabled by default.
1998-12-22 16:13:41 +00:00
gdr-ftp
412340be8b lib.mk:
Added an implicit rule for making rez targets where the sources
	reside on an Appleshare server.  See PR#98.
1998-12-22 16:11:42 +00:00
gdr-ftp
2604b42f9a Due to PR#98, change it so that the builddate.rez file is always taken
out of 13/RInclude instead of /src/gno/build.tools.  This implies that
builddate.rez has to have been previously installed in 13/RInclude; this
is done by the 'install' and 'release' targets in /src/gno/build.tools.
1998-12-22 16:08:54 +00:00
gdr-ftp
7de2321a08 Makefile:
- initial checkin.  Needed for 'install' and 'release' targets.

dmake.startup, startup.mk:
	- When dmake finds a startup.mk in the current directory, it
	  parses that file after the system startup.mk.  In this case they're
	  one and the same.  While this shouldn't be a problem, it's
	  causing dmake to crash.  See PR#99.

	  The workaround was to rename startup.mk in this directory to
	  dmake startup.  It is renamed back to its proper name in the
	  recipes to the install and release targets.
1998-12-22 15:57:32 +00:00
tribby
e7f2691599 Changes for gsh version 2.0d7:
Fixed several memory leaks.

Prefix command without any parameter (to list the prefixes) would cause
memory corruption when prefix had been invoked previously with a parameter.

Sourcing a command file from within an exec file could cause gsh to
wait forever, depending upon the commands executed in the sourced file.

All built-in commands return appropriate status: 1 for error, 0 for no error.

Fixed several cases where incorrect value was set in $status.

Added usage strings for tset, hash, commands, and history.

Fixed memory corruption error when edit command had no parameters.

When system() is called with pointer = NULL or with a command string that
causes gsh to detect an error (e.g., incompatibility with | and <), return
status of -1. In other cases, return process's status rather than always 0.

System would crash when output from a non-forked command was piped to
another process; for example   clear | cat > /tmp/list
1998-12-21 23:57:08 +00:00
gdr-ftp
7ec020a057 Convert CR-->LF in sources; they were checked in with the wrong newline
delimiters.
1998-12-13 02:50:33 +00:00
gdr-ftp
fd0aff2031 Added submissions from
Scott Moberly:	ed, md5, vis, unvis
	Marlin Allred:	trek
1998-12-10 19:12:27 +00:00
gdr-ftp
d5ac497f92 describe.src:
corrected a small typo
1998-11-03 16:12:53 +00:00
gdr-ftp
9fac710f39 describe.src:
Added new entries submitted by Scott Moberly: users, units,
	col, quiz, and nologin.
1998-11-03 16:10:19 +00:00
tribby
4879056d84 Changes for gsh version 2.0d6:
Fixed defect introduced in version 2.0d5: when a background job completed
while gsh was waiting for command line input, gsh would print a bogus error
message and quit.
1998-11-02 17:40:56 +00:00
gdr-ftp
2a358f71bc updated the ChangeLog for libc 1998-10-31 20:24:16 +00:00
gdr-ftp
b629f70366 intro.tex:
- added a brief comment regarding anon cvs updates
1998-10-31 20:23:29 +00:00
gdr-ftp
1d0c7e0be2 status.bin:
Updated entries for: calendar, syslogd
status.lib:
	Updated entries for: sprintmt, vsprintmt, syslotmt, vsyslogmt,
	closelog, openlog, readv, setlogmask, syslog, vsyslog, writev
TO.DO:
	Added a bunch of stuff, deleted some.  How's that for a precise
	explanation?
1998-10-31 19:14:49 +00:00
gdr-ftp
bf00017f17 syslog.3:
Use <stdarg.h> vice <vararg.h> in the synopsis.
1998-10-31 19:05:57 +00:00
gdr-ftp
0fa42147e3 Initial checkin of syslogd v2 for GNO. This was a complete rewrite
from both Phil Vandry's v1 syslogd (which is part of init), and the
BSD version.  It still needs some work, but it can log to a file
or to console at the moment.

Until syslogd v1 is removed from init, you should ensure that you're
not logging to the same file from both versions of syslogd.
1998-10-31 19:02:47 +00:00
gdr-ftp
c2d4a9371b gno.h:
- Added declaration for the global "__progname".
	- Added prototypes for sprintmt(3) and vsprintmt(3).
1998-10-31 18:50:44 +00:00
gdr-ftp
a9c8ba111c syslog.h:
- added prototypes for vsyslogmt() and syslogmt()
	- changed the internal structure used by syslogd(8) and the
	  syslog(3) family of routines
1998-10-31 18:48:50 +00:00
gdr-ftp
b84b251619 added test for syslogmt(3), vsyslogmt(3) 1998-10-31 17:25:04 +00:00
gdr-ftp
6eebdb8e3a Makefile, vsprintmt.c:
- Added the sprintmt and vsprintmt routines.  These are thread
	  safe variants of the sprintf and vsprintf routines.  Note that
	  they don't support as many formatting options as stdio does.

gnomisc.c:
	- Define the global variable "__progname".  This is initially
	  set to "(unknown)", but is properly initialized to the return
	  value of __prognameGS() the first time that function is called.
1998-10-31 17:22:05 +00:00
gdr-ftp
fd73dca790 syslog.c:
- added thread safe functions syslogmt and vsyslogmt.
	- minor changes to sendPort to make it thread safe
	- moved variadic wrappers to the end of the file so that the
	  command line optimize/debug levels get propogated through
	  the rest of the source during compilation.
	- changed the mechanism by which sendPort waits for it's buffer
	  to be released by syslogd
	- since ctime(3) is not thread safe, add a flag to the
	  SyslogDataBuffer_t that tells syslogd(8) to add the appropriate
	  time stamp.  This is easier than implementing thread safe
	  versions of ctime and localtime.
1998-10-31 17:17:24 +00:00
tribby
963a33c4bf Changes for gsh version 2.0d5:
Add quotes around null parameters from the command line so they will be
parsed properly (resolves PR#84).

Output piped to an unfound command caused gsh to terminate, due to an
interface change to the GNO 2.0.6 version of getpgrp(2): it now returns the
process group of the caller.  To get the process group number for the
pid passed as a parameter pid, the call has to be made to _getpgrp(2).
In addition to fixing invoke.asm, updates were also made in jobs.asm.

When directory stack is full, pushd, reports a new error message: 'pushd:
Directory stack full'.  (Previously, 50 pushds would cause a crash.)

When parameter passed to "pushd +n" is <= 0, report a new error message:
'pushd: Invalid number'. (Previously, tried to chdir to the parameter.)

When a command appends to stderr (e.g., echo test >>&/tmp/err), stdin was
closed, due to errappend being defined as pipefds+2 rather than pipefds+4
in cmd.asm.

When there was an error reading stdin, gsh went into an infinite loop of
beeping and requesting more input. Changed getchar (in stdio.asm) and
GetCmdLine (in edit.asm) to report the error and terminate.

Code in cmd.asm set and reset handler for signal SIGSTOP (17). This makes
no sense, since there cannot be a handler for SIGSTOP. This was changed
to set and reset signal SIGTSTP (18) since that handler is used by gsh.

The error message "specify a command before redirecting" was never
caught by the invoke() subroutine because the next higher routine,
command(), checked for argv==0 before calling invoke(). The error
message was moved into command().
1998-10-26 17:04:51 +00:00
gdr-ftp
0c8ae50cfc mkso.data:
Added links for __progname(3), vsprintmt(3), syslogmt(3), and
	vsyslogmt(3).
1998-10-25 17:17:21 +00:00
gdr-ftp
7199e83868 sprintmt.3:
Initial checkin for sprintmt(3) and vsprintmt(3) documentation.

syslog.3:
	Add descriptions of syslogmt(3) and vsyslogmt(3), which are thread-
	safe variants with more limited format specifiers.

progname.3:
	Added description of the "__progname" variable.  This in effect
	exposes the cache value used by __prognameGS().  It was necessary
	for the proper operation of the thread-safe syslog routines.
1998-10-25 17:15:51 +00:00
gdr-ftp
96955b85a3 Makefile:
The "up" link in the reference manuals was broken; the -up_title
	flag to tex2html was missing.

intro.tex:
	- reworked Overview chapter.  Replaced "The GNO/ME Package" with
	  "Documentation Roadmap", updated "Obtaining GNO", etc.
	- Added section to "Installing v2.0.6" about how to obtain source
	  by anonymous cvs and anonymous ftp.
	- publish date changed
	- updated copyright dates

refs.html:
	- minor grammatical changes
1998-10-14 03:14:02 +00:00
gdr-ftp
3061aa26a4 Added the following entries, submitted by Scott Moberly:
comm
	paste
	rev
	tput
	unifdef
1998-09-27 15:53:03 +00:00
gdr-ftp
c4af1317ee intro.tex:
Various changes as requested by Dave Tribby.  Some are typographic,
	some are broken links, ambiguities, etc.  No change of basic
	content.
1998-09-24 06:49:58 +00:00
tribby
1dc5497309 Added startup protocol as requested by Devin Reed (PR#78) and Steve Reeves
(PR#85, PR#86):
   For login shells (command line starts with '-'),
	If $PATH doesn't start with ':' or contain a space,
	   change all ":" to " ".
	source /etc/glogin
	source $HOME/glogin
$HOME/gshrc is sourced afterward for both login and non-login shells.

Don't the print number of hashed commands (from "rehash") until all
initialization is completed.

Only pass exported environment variables to child processes, and prevent child
processes from changing parent's environment.

A null command followed by a redirection of stdout, for example
  > /tmp/list
would cause an error message "<garbage> not found" due to incorrect
setting of command buffer pointer.

Filename completion did not work following ">&" or ">" without a trailing
space.

Entabbed all the asm files, saving more than 36,000 bytes.
1998-09-08 16:53:14 +00:00
tribby
2e0ebb5392 Replaced last of old shell calls with their newer counterparts. This
removed the need for p-string routines, so they were removed. Also
removed alloc256/free256 and associated data structures.

In removing calls, found instances in pwd & prefix commands and prompt
handler where current directory name was assumed to be < 256 characters;
recoded to use a flexible buffer size.

Updated and expanded mmdebug.asm routines that perform error checking on
memory management calls. Added macros ~NEW and ~DISPOSE that invoke either
the real or debug routines.

Fixed call to read $TERM variable's length to fix PR#81.

Removed echo of data when setting value of $< in expandvars (expand.asm).
The characters are echoed as they are typed and do not need to be reprinted
on stdout after carriage-return is typed.

Added error checking to the various flavors of prefix (just like cd):
  - Verify 2nd parameter is a valid directory before setting.
  - Verify 1st parameter < 32 before displaying or setting.
1998-08-03 17:30:30 +00:00
tribby
d534981038 Changed many invocations from old shell interface routines (Read_Variable,
Set_Variable, Export, etc.) to new ones (ReadVariableGS, SetGS, ExportGS,
etc.) in many places; there are still a few more to change.  This change
removed the 256-character limit on strings retrieved by these routines,
such as the value of environment variables. (PR # 9).

At startup do not set $TERM to gnocon if it is already set.

Removed the df command (from builtin.asm).

Defined macro incad to increment a 4-byte address, checking for overflow;
replaced instances of "inc ptr" with "incad ptr".

Changed column offset table to use a 1-word rather than 1-byte entry. This
resolves PR#14 (hash wouldn't print beyond first 256 filenames).

Fixed defect in unalias (alias.asm) where the double quote portion of the
scanner would look for a terminating single quote. This resolves PR#69.

Changed default order for copying files in $PATH dirs into executable list,
so earlier paths files are found first.

Added environment variable flag $OLDPATHMODE to make gsh behave in the old
(backwards order) way when necessary.

Discard duplicate filenames when hashing.

Fix PR#73: directory in $PATH with escaped space (\ ) is not searched.
1998-07-20 16:23:11 +00:00
gdr-ftp
615d7ab922 syslog.3:
- fixed some formatting problems
1998-07-07 03:32:44 +00:00
gdr-ftp
ed7f658d4e fudgeinstall:
- don't fudge sed(1) any more; it's done
1998-07-07 02:31:22 +00:00
gdr-ftp
4957db0caf Makefile:
- set HAS_BSD_MANPAGE to 'true' -- get the right one when building
	  the release.
1998-07-07 02:19:26 +00:00
gdr-ftp
3689484d24 calendar.c:
- fixed a bug introduced in 1.1 where getting an error while
          reading the calandar file could cause an infinite loop
        - added "ChangeLog" comments for all versions
	- added stack checking
        - eliminated "pragma stacksize" from the source file; it was too
          small (was 512 bytes, currently using 862 bytes) and overriding
          the value given on the command line during the GNO base build
          process
README, calendar.info:
	- Moved the information in these files to the man page.
Makefile, calendar.rez:
	- initial checkin
calendar.1:
	- cleaned it up a bit and made it conform to the GNO base builds
	- added an example
1998-07-07 02:14:30 +00:00
gdr-ftp
b40c451852 calendar.1, calendar.c:
Updates for v1.1 as submitted by Marlin Allred.  His comments:

	"I compiled calendar with the 2.0.6 libraries and fixed it so
	 the date could be put anywhere on the line. I also fix[ed] the
	 program so that tomorrow's and Monday's activity was also being
	listed. The man page for calendar was also updated. [...] I did
	not update the source file to indicate the changes made."

calendar.desc:
	Updated for v1.1.
1998-07-04 17:24:38 +00:00
gdr-ftp
5a9733461b describe.src:
- added entry for 'eject'
	- updated entry for 'calendar'
1998-07-04 17:13:43 +00:00
gdr-ftp
546377ce0d - added describe entry 1998-07-04 17:05:18 +00:00
tribby
01902c1b91 Major changes to gsh with this checkin:
* When ~ is parsed and next character is a delimiter, make sure contents
   of expanded $HOME match the user's delimiter.

 * When wildcard patterns don't match, rather than terminating the command
   gsh now prints "No match: <pattern> ignored" and passes the command line
   minus the unmatched patterns on to be executed.

 * Modified echo command so it doesn't add a blank to the end.

 * Make "clear" and "source" built-ins non-forked commands.  Unforking
   "source" allows prefixes to be set in files that are sourced.

 * Add loop to parse a single command (removing leading whitespace) before
   sending it off to be expanded and executed. Skip null lines and comments
   at this level. This allows later commands that depend upon variables set
   in the 1st command to work; e.g.: set t_num=1 ; echo "Test number $t_num"
   Also fixes problems seen when tab was first character of multiple lines.

 * Initialize environment variable flags at startup (for echo, nodirexec,
   nonewline, noglob, nobeep, pushdsilent, term, and ignoreeof). Set
   flag when env var is set in upper or lower case (formerly, only worked
   with lower case).

 * Lots of places two-word addresses are incremented using inc, without
   checking for overflow into the high-order word. As these are discovered,
   they are changed to use adc on both words.


See file UpdateLog for detailed list of changes.
1998-06-30 17:26:04 +00:00
gdr-ftp
f5e621f814 status.bin:
- updated entries for edit(1) and logger(1)
1998-06-26 01:29:37 +00:00