Commit Graph

1786 Commits

Author SHA1 Message Date
christos 9a2fab368e define const and volatile for non __STDC__ 1996-12-31 17:55:02 +00:00
christos 87961728d3 - include <stdlib.h> to get getenv() prototype on SVR4
- if __STDC__ -> ifdef __STDC__ to appease SVR4
1996-12-31 17:54:16 +00:00
christos 9749ddca0f Use only integral types in procedure arguments. 1996-12-31 17:53:21 +00:00
christos 36d9e80aff Use explicit .c.o rule so that the bootstrap process works. 1996-12-31 17:52:23 +00:00
cgd 89dcb48dfb fix up -ansi -pedantic warnings produced because of static function
declarations nested in other functions.  The solution: declare the
static functions at the top level.
1996-12-29 10:41:53 +00:00
cgd 8e2918a81c make evenpartab be of type 'unsigned char' to avoid -ansi -pedantic errors 1996-12-29 10:38:20 +00:00
cgd 879c890af2 add -ansi -pedantic to CFLAGS, so that people won't try to use the behaviour
of the old zzhack-access macros, which with the current macro definitions
would cause a cast value to be used as an lvalue, which is a gcc extension,
but _not_ what we want.
1996-12-29 10:36:37 +00:00
cgd 88caf985e6 replace old zzhack structure (YUCK!) and number(), boolean(), character(),
and address() macros with new macros of the same names (to get values),
and macros with those names but with "set" prepended and which take a
second argument (to set values).  The new macros use type casts to do
type conversion, which is much cleaner than using a union and making
endianness-related hacks to get the right 'short's and 'char's from
the right array indices.  (YUCK! again, for good measure.)
1996-12-29 10:34:03 +00:00
lukem e699917c51 * preserve modtime if size is 0 [bin/3040, Enami Tsugutomo]
* in autofetch mode, don't retry a file if the connection failed - skip it
  and move to the next file. [bin/3051, Matt Green]
* only print error messages from SIZE or MDTM if the user used 'size' or
  'modt' (respectively). prevents extraneous warnings during normal transfers
  when connected to a site which doesn't support these (behaviour prior to
  last commit), but still allows error feedback to specific user requests
  for this info (which the last commit broke).
* 'account': only accept one optional argument
* if invoked as pftp, default to passive mode on (from FreeBSD)
* remove leading '0 ' in progress bar - looked ugly
* use warn instead of perror
* use strncpy when src isn't known to have safe length
* remglob(): use mkstemp() to prevent symlink games, and don't override
  _PATH_TMP, use it as the prefix to the temp file
1996-12-29 04:05:29 +00:00
tls 19d35cbcd9 Sync with 4.4BSD-Lite2 1996-12-28 07:10:57 +00:00
tls 517427d9e1 Import of 4.4BSD-Lite2 source 1996-12-28 05:17:06 +00:00
tls 26d28c381f Import of 4.4BSD-Lite (already merged at head) 1996-12-28 05:15:19 +00:00
tls 28316c21d3 Sync with 4.4BSD-Lite2 (whew!) 1996-12-28 04:30:02 +00:00
tls 7d4405a6a6 Import of 4.4BSD-Lite2 sources 1996-12-27 23:11:39 +00:00
pk 25b5f4149a Splice a union in the type data structure. Some of the members can be `in use'
simultaneously, e.g. an enumerated bit-field.
1996-12-27 20:46:23 +00:00
christos 764c65979e - make sure that the reply string is null-terminated, and copy only up to
the initialized copy of the source string, since the source string is not
  null terminated at this point.
1996-12-25 16:02:06 +00:00
christos 942194d9f4 - Don't print the '500 command not understood' reply for the SIZE and
MDTM commands which are not supported by all ftp servers, unless we
  are in debugging mode.
1996-12-25 16:00:38 +00:00
christos 8819044d2a [initial version of the substitution/regexp changes were courtesy of Der Mouse]
- fix the variable substitution code in make [PR/2748]
      1. change s/a/b/ so that it substitutes the first occurance of the
	 pattern on each word, not only the first word.
      2. add flag '1' to the variable substitution so that the substitutions
	 get performed only once.

  ***THIS IS AN INCOMPATIBLE CHANGE!***

  Unfortunately there was no way to make things consistent without
  modifying the current behavior. Fortunately none of our Makefiles
  depended on this.

	    OLD:

		VAR      = aa1 aa2 aa3 aa4

		S/a/b/   = ba1 aa2 aa3 aa4
		S/a/b/g  = bb1 bb2 bb3 bb4

	    NEW:

		VAR      = aa1 aa2 aa3 aa4

		S/a/b/   = ba1 ba2 ba3 ba4
		S/a/b/1  = ba1 aa2 aa3 aa4
		S/a/b/g  = bb1 bb2 bb3 bb4
		S/a/b/1g = bb1 aa2 aa3 aa4

- add regexp variable substitution via 'C/foo/bar/' [PR/2752]

- add variable quoting via the ${VAR:Q} modifier. This is useful when running
  recursive invocations of make(1):

	make VAR=${VAR:Q}

  will always work... (This may prove useful in the kernel builds...) [PR/2981]
1996-12-24 17:36:27 +00:00
cgd 81f0721bbe * accept the file name '-' to indicate that standard input is to be
used as lint1 input.  That involves having lint pass the '-' through
  to the cpp which preprocesses the lint1 input, and having lint1's
  scanner recognize a cpp filename "" as "{standard input}".
1996-12-22 11:31:47 +00:00
cgd 46b90748f5 * Ignore the size of integer arguments when trying to automatically
convert them to pointers.  If they're zero, they're converted (to
  NULL pointers) regardless of size.  If they're non-zero, they can't
  be converted (without a cast).  This matches the behavior of other
  version of lint, e.g. the lints on Digital UNIX and HP-UX.

* recognize that pointers to identical unnamed and untyped structs,
  unions, and enums are, in fact, identical.  This is done by tagging
  each of unnamed and untyped structure, union and enum with a unique
  position of creation, which is used as a unique identifier that
  when determine whether or not a pair of structures, unions, or enums
  are identical.
1996-12-22 11:31:37 +00:00
cgd 06fa442b12 * recognize that pointers to identical unnamed and untyped structs,
unions, and enums are, in fact, identical.  This is done by tagging
  each of unnamed and untyped structure, union and enum with a unique
  position of creation, which is used as a unique identifier that
  when determine whether or not a pair of structures, unions, or enums
  are identical.

* accept the file name '-' to indicate that standard input is to be
  used as lint1 input.  That involves having lint pass the '-' through
  to the cpp which preprocesses the lint1 input, and having lint1's
  scanner recognize a cpp filename "" as "{standard input}".
1996-12-22 11:31:24 +00:00
cgd 0cde55a411 * recognize that pointers to identical unnamed and untyped structs,
unions, and enums are, in fact, identical.  This is done by tagging
  each of unnamed and untyped structure, union and enum with a unique
  position of creation, which is used as a unique identifier that
  when determine whether or not a pair of structures, unions, or enums
  are identical.
1996-12-22 11:31:05 +00:00
cgd e8685ee836 * Accept asm statements at any place where you could see a function or
variable declaration, in addition to within function & variable
  declarations and function bodies.  I think this comes close enough
  to what gcc does to be considered "correct enough."  Certainly, it
  fixes the problem for the couple of cases where this is a problem
  in our tree.
1996-12-22 11:30:49 +00:00
matthias a6c08e93f9 * revert broken handling of subcommands to the (working) 4.4Lite version. 1996-12-21 09:16:35 +00:00
sommerfe 36da84b7df Longer login name support: use MAXLOGNAME, not UT_NAMESIZE 1996-12-20 20:17:30 +00:00
pk 985887ad37 Remnant of a different area: resource.h is now in /usr/include/sys
(from David Brownlee; PR#3044).
1996-12-18 23:18:57 +00:00
jonathan 53be52fcac Build elf ldd and elf-to-xxx tools on mips ports. 1996-12-17 05:39:35 +00:00
jonathan 20d6ace077 Mipsel changes to ELF ldd/ld.so:
* don't abort() on NetBSD/pmax 1.1 elf binaries;
  * Assume 32-bit elf unless compiling for Alpha;
  * note bugs in ldd's README.
1996-12-17 03:42:44 +00:00
cgd 10243648ef on the alpha, add 'ldd' to the subdirs list 1996-12-16 20:00:26 +00:00
cgd 033e366657 First cut at an elf-aware ldd. Originally from John Polstra's FreeBSD elf
kit, then hacked on by Matt Thomas <matt@3am-software.com>, then by me.
This runs, but it's in serious need of cleaning and/or a fair bit of
reworking.  See the README file for more information, and a list of things
to do.
1996-12-16 19:59:55 +00:00
cjs f271ac2363 Make it clearer how to use alternate delimiters in context patterns. 1996-12-15 08:28:46 +00:00
scottr 823c2433dc Freshen up a bit:
- Replace deprecated sigblock() with sigprocmask()
 - Redraw the current display if SIGWINCH is caught
 - Style police
1996-12-13 19:26:18 +00:00
mrg 2883126ca7 strcpy -> strncpy (from freebsd). 1996-12-11 00:30:20 +00:00
mikel 362f41ae80 fdc manpage is in section 4, not 8. 1996-12-10 07:47:45 +00:00
mikel 9655890e1f we don't use this. 1996-12-10 07:22:22 +00:00
mikel 7bd9154d93 Upgrade to flex 2.5.4. 1996-12-10 07:18:37 +00:00
mikel c9d564c2ca Import flex-2.5.4 1996-12-10 06:06:26 +00:00
thorpej 3dc69d90b9 XXX Kludge to make this compile with large MAXBSIZE until the
XXX GCC bug it tickles is fixed.
1996-12-09 20:03:19 +00:00
neil 36139c4647 errors not generated 'cuz old message was icmp -> [EWW!]
errors not generated because old message was icmp
1996-12-09 12:48:37 +00:00
lukem dd6f8f2061 'b' == bits not bytes. for all prefixes >= 'K', explicitly specify 'B'
afterwards. don't print anything for a pure byte count. rework ETA display
as well.
1996-12-06 04:33:45 +00:00
lukem 2bee2a678e * note that nlist and ls and equivalent
* fix up optional argument descriptions for dir, ls, nlist, and user.
1996-12-06 02:28:13 +00:00
lukem b6df1b3d2d functionality mods:
* implement 'progress bar/meter' (inspired by ncftp). use 'progress' to
  toggle on. it will display current file size to 5 digits, automatically
  determining suffix (up to 16384 P (petabytes) == 2^64).
* 'ls' now uses NLST (unadorned listing), a la older ftp clients. 'dir'
  still does LIST (long listing). idea from John Nemeth <jnemeth@cue.bc.ca>

bug fixes:
* return first line of reply in reply_string[] from getreply(), instead
  of last line. This fixes [bin/741] (parsing of SYST), and also means
  that SIZE and MDTM messages will be parsed correctly if they're longer
  than 1 line.
* parse URL-style auto-ftps that have no filename correctly
  (e.g, ftp://host, ftp://host/, ftp://host/dir/). pointed out by
  Jaromir Dolecek <dolecek@saruman.ics.muni.cz>
* pass the correct size array in 2nd arg of utimes() when setting the
  modification time
1996-12-06 02:06:46 +00:00
jtk 81532e0382 remove stray $Id$ string 1996-11-30 01:53:51 +00:00
thorpej 3d130af5dc Compute `halfuptime' correctly when `uptime' == 1.
From Lennart Augustsson <augustss@cs.chalmers.se>, PR #2944.
1996-11-29 19:40:56 +00:00
jtk 18ea43307d add fdformat 1996-11-29 16:32:18 +00:00
jtk 060474468e add floppy formatting command 1996-11-29 16:31:02 +00:00
lukem 8ef5f80460 More features, some of which were inspired by changes that
friedman@gnu.ai.mit.edu (Noah Friedman) made to his modified ftp:
- implement "lpwd" - local pwd
- implement "preserve" - toggle preserving of file modification
  times on retrieved files
- allow for explicit "on" or "off" arg to toggle commands
- "exit" synonym for "quit", "msend" synonym for "mput"
- in confirmation mode, allow 'a' (yes to rest of current command),
  and 'p' (turn off prompt mode, as if 'prompt off' was done,
  effective immediately)
- "modtime" returns time formatted as localtime, not GMT

Bug fixes:
- check for extraneous args on commands
- cleanup const usage, line formatting
- create 0 length temporary file in remglob() to prevent symlink games
  (from OpenBSD)
- check length of filename of ~/.netrc (from OpenBSD)
1996-11-28 03:12:28 +00:00
thorpej 97fdc79a5e Fix a semantic problem reported by Chuck Cranor:
If a user wishes to change a password on a system running YP, and
the master server is not running rpc.yppasswdd, chpass(1) would fail,
even if the user had a local entry.  Fix this by checking for local
entry if master is not running rpc.yppasswd iff we defaulted to using
YP (not invoked with "-y").

XXX Unlike the similar change to passwd(1), this one duplicates some
XXX code (makes an attempt to contact rpc.yppasswdd early).  This is
XXX a side-effect of the structure of this program.  chpass(1) could
XXX use a re-write.
1996-11-26 23:38:42 +00:00
thorpej bbe8c40877 Fix a semantic problem reported by Chuck Cranor:
If a user wishes to change a password on a system running YP, and
the master server is not running rpc.yppasswdd, passwd(1) would fail,
even if the user had a local entry.  Fix this by checking for local
entry if master is not running rpc.yppasswd iff we defaulted to using
YP (not invoked as "yppasswd" or with "-y").
1996-11-26 23:35:38 +00:00
cgd 72f7358ea7 print all evcnt structures, not just those which have the name "intr".
Printing only those with the name "intr" is too restrictive, because it
means that devices can only have one interrupt, which makes little
sense for many devices and absolutely no sense for several common busses.
1996-11-25 22:55:59 +00:00