Commit Graph

303 Commits

Author SHA1 Message Date
joerg
aa3af1501b Fix the borokeness that crept in with rev 1.10 of parser.c, the sh
didn't correctly start background jobs anymore.  Strange that nobody
was complaining...

Add a dummy target for `builtins' in the Makefile, to prevent it
from attempting to build this file by compiling builtins.c. :-/
1996-02-03 13:27:55 +00:00
mpp
3c9b360579 Fix some incorrect locations in the FILES sections of some man pages. 1996-02-02 18:22:04 +00:00
mpp
ddfba9f1d0 Fix some spelling errors. 1996-01-29 22:53:24 +00:00
mpp
2b29f1bc1b Use the correct buffer size from limits.h for the error buffer
passed to kvm_open.  Closes PR# 476.

Submitted by:	Jeffrey Hsu <hsu@freebsd.org>
1996-01-20 10:43:54 +00:00
mpp
0cee24855f Remove unused include of utmp.h from print.c. Closes PR# 486.
Submitted by:	Tom Samplonius <tom@haven.uniserve.com>
1996-01-20 10:31:14 +00:00
bde
d1eb245b0a Partially fixed negative and truncated "Avail" counts in df output.
This fixes PR943.

ffs/ffs_vfsops.c:
ffs_statfs() multiplied by (100 - minfree) as part of calculating the
minfree percentage (complemented in 100%), so with the standard minfree
of 8, it was broken for file systems of size >= 1TB/92 = 11GB.  Use the
standard freespace() macro instead.  This also fixes a rounding bug (the
"Avail" count was sometimes 1 too small).

ffs/* (not fixed):
The freespace() macro multiplies by minfree, so with the standard
minfree of 8, it is broken for file systems of size >= 1TB/8 = 128GB.
This bug is more serious since it affects block allocation.

ffs/ffs_alloc.c (not fixed):
Ordinary users are sometimes allowed to allocate 1 (partial) block
too many so that the "Avail" count goes negative.  E.g., if there is
1 fragment available and the file is fairly large, one more full
block is allocated.

df/df.c:
ufs_df() used/uses essentially the same code as ffs_statfs(), so it
had/has the same bugs.

ufs_df() gratuitously replaced "Avail" counts of < 0 by 0, so it
gave different results for non-mounted file systems in this case.
1996-01-14 18:55:09 +00:00
peter
b90ef46a2f oops. I forgot to add the "[-U username]" option to the usage string. 1996-01-12 08:49:43 +00:00
peter
c3f352d4ad This commit was generated by cvs2svn to compensate for changes in r13122,
which included commits to RCS files with non-trunk default branches.
1995-12-30 19:02:48 +00:00
joerg
15748830d0 Print dev minor #'s > 255 in hex.
Reviewed by:	jkh, kuku, phk
1995-12-30 18:15:30 +00:00
joerg
39d74eed64 Small man page tweaks:
. mention the need for procfs
. make it clear that default sorting is first by ctty, then by PID

Submitted by: schweikh@ito.uni-stuttgart.de (Jens Schweikhardt)
1995-12-30 13:52:02 +00:00
peter
82fea0b00e Implement a new option to ps.. `-U username'. This allows you to
list the processes belonging to a particular user without having to use
`-u' and grepping for the username.  Basically you can now get a short
`ps -x' like list (with more space for the command) for other users.
1995-12-26 03:38:55 +00:00
bde
5ac626c1f4 Restored formatting from the old printf/printf.c. 1995-12-14 23:19:36 +00:00
joerg
cfdacc16ea The shell incorrectly gave & precedence over ;. This breaks the
traditional behaviour, and it violates Posix.2.

Fixes PR # bin/880: /bin/sh incorrectly parse...

Fixes also an earlier problem report about the shell not evaluating
loops correctly.  (Not files via GNATS.)

Submitted by:	nnd@itfs.nsk.su (Nickolay N. Dudorov)
1995-12-10 17:59:23 +00:00
joerg
ea83bba5aa Move out some of the shell builtin bogosity from printf's source to
sh's builtin/bltin.h.
1995-12-10 15:40:42 +00:00
joerg
7191d72bfa Fix my own brokeness for the colon operator, when one of the arguments
was a valid integer.  The actual decision between integer and string
is now context-dependant on the operator being used.
1995-11-18 18:05:03 +00:00
peter
c140e951e5 A fix for the "cd -" coredump on a brand new /bin/sh. The problem was
noticed on a NetBSD bugs mailing list but this is entirely my own work.

Inspired by: Scott Reynolds <scottr@plexus.com>, for NetBSD
1995-11-14 01:04:52 +00:00
bde
6cdf3e90c6 Fixed descriptions of ignpar and parmrk. 1995-11-11 03:31:13 +00:00
peter
82eac92f0e Implement allowing 'set -v' in the middle of a script to work.
This means that a script containing:
  echo 1
  set -v
  echo 2
will now produce output, like it does on SYSV machines and other 'proper'
/bin/sh implementations..

This is done by a slight restructure of the input processor allowing it to
read chunks from the file at a time, but process the data by line from the
chunk.

Obtained from:  Christos Zoulas for NetBSD. <christos@deshaw.com>
1995-11-03 18:50:14 +00:00
phk
fe6be261cf I add #include <sys/user.h> 1995-10-28 20:11:18 +00:00
ache
449a77b650 Fix -h option:
sense symlink even it is unresolved
1995-10-28 11:54:42 +00:00
ache
c2d646c037 Change local to LC_ALL, there is no bitmask 1995-10-26 10:57:52 +00:00
ache
31de4a4cc9 Change locale to LC_ALL, there no bitmask 1995-10-26 10:56:38 +00:00
torstenb
a31022b303 fix bad dependencies (LIBMATH -> LIBM) 1995-10-25 15:08:21 +00:00
ache
f564fd22e6 Add missing reaction on LC_ALL and LC_COLLATE 1995-10-23 23:08:26 +00:00
ache
b2faa00f39 Add setlocale LC_CTYPE 1995-10-23 21:31:48 +00:00
ache
73ab20d2fc Remove unneded ctype.h everywhere
Add setlocale LC_TIME
1995-10-23 21:23:27 +00:00
ache
76a4f2bbdd Change LC_ALL to LC_CTYPE|LC_TIME - small optimization 1995-10-23 21:09:01 +00:00
ache
426182c17e Add setlocale LC_CTYPE|LC_TIME 1995-10-23 21:06:31 +00:00
ache
ac2673a0e9 Remove unneded ctype.h 1995-10-23 21:03:40 +00:00
ache
80200799c7 Add setlocale LC_ALL 1995-10-23 20:36:26 +00:00
ache
6df301ad24 Add setlocale(LC_TIME,... 1995-10-23 20:26:53 +00:00
ache
cefb9133fd Wrong library was picked by ed 1995-10-22 20:14:13 +00:00
joerg
8deb9482ef o rename ulimit -p into ulimit -u, so we are in agreement with bash
o fix brokeness for 1>&5 redirection, where `5' was an invalid file
  descriptor, but no error message has been generated

o fix brokeness for redirect to/from myself case
1995-10-21 00:47:32 +00:00
joerg
944d729639 Implement the "ulimit" builtin. This is the analogon to csh's "limit"
command and badly needed in sh(1) for everybody who wants to modify
the system-wide limits from inside /etc/rc.

The options are similar to other system's implemantations of this
command, with the FreeBSD additions for -m (memoryuse) and -p (max
processes) that are not available on other systems.
1995-10-19 18:42:12 +00:00
joerg
1b4761e6b2 Fix my breakage of the $0 handling during $ENV processing.
Since the broken version went into 2.1, this fix should, too.
1995-10-09 17:56:32 +00:00
bde
c37d4b75ea Handle trailing slashes in source filenames correctly. E.g., rewrite
`mv foo/ ../..' to `mv foo/ ../../foo/', not to `mv foo/ ../../'.  The
latter caused a panic.  Before the trailing slash changes in the kernel,
the trailing slashes caused the rename() for this mv to fail earlier, so
there was no panic in 2.0.

Fixes part of PR 760.
1995-10-07 10:42:48 +00:00
markm
6620dab5e1 Correctly build the secure ed(1) only if secure/ exists.
Pointed out by:	bde
1995-10-03 15:44:50 +00:00
bde
d7de6aca5b Preserve sticky bit for cp -pR'. It was already preserved for cp -R'.
This also fixes loss of the sticky bit for `mv' across file systems.
1995-10-03 12:55:01 +00:00
bde
4c830ecd4f Fix exit status. `cat no-such-file >/dev/null' exited with status 0.
This has been broken since cat's own err() function was sloppily
replaced by the library functions warn() and err().
1995-10-03 12:46:37 +00:00
joerg
2bda1d13d0 Make the mkinit internal command issue an #undef for each #define, to
avoid "duplicate definition" warnings.
1995-10-01 15:13:31 +00:00
joerg
31323db649 Posixize:
sh  -c [-aCefinuvx] command_string [ command_name [argument ...]  ]        1

 4.56.3  Options

    -c          Read commands from the command_string operand.  Set the
                value of special parameter 0 (see 3.5.2) from the value of
                the command_name operand and the positional parameters
                ($1, $2, etc.) in sequence from the remaining argument
                operands.

Pointed out by: Kaleb Keithly (kaleb@x.org)
1995-10-01 15:11:42 +00:00
markm
afe826ae7c Define CRYPTOBJDIR if secure is being built 1995-10-01 14:55:06 +00:00
markm
50f18fc23c ed/Makefile is able to 'decide' for itself whether to build secure or
unceumbered ed. Remove the superfluous .if (...) / .endif
1995-10-01 14:24:01 +00:00
markm
9beecc7061 Use the same make technique as passwd and xntpd for the secure ed(1). This
will allow the secure/bin/ed directory to be cleaned out and the bin/Makefile
to be cleaned up.
1995-10-01 14:17:29 +00:00
ache
269e1bfa71 Build secure ed if available and allowed 1995-09-29 19:31:55 +00:00
peter
5a3733e33d Correct the alignment of the tty column, which was affected by my change to
allow more than two tty characters.

David Greenman pointed out that when a process that had been revoked from
it's controlling tty, the "-" sign was detached from any two-character
names.
1995-09-26 17:48:59 +00:00
mpp
254317c903 Uncomment out references to FIFOs for the -F and -l options.
Also mention sockets in the text for -F.

Partially obtained from the NetBSD commit mail list.
1995-09-26 08:48:09 +00:00
bde
5f0de3a123 Fix relocation of job table.
while { sleep 1 & wait; } do echo 1; done

corrupted the job table every 4th iteration.
1995-09-21 13:24:20 +00:00
dg
979cc2cf2b Don't dereference a NULL pointer in the case of a null pipe.
e.g.:
ls |> foo.out

sh now behaves the same as it does under SunOS 4.x for this case.
1995-09-20 08:30:56 +00:00
pst
1c6e5f9967 If mail is received with no from address, invoke sendmail with
/usr/sbin/sendmail -f <> dest
rather than
	/usr/sbin/sendmail -f dest.

Submitted by:  Michael Butler <imb@scgt.oz.au>
Obtained from: Eric Allman <eric@cs.berkeley.edu>
1995-09-16 18:52:51 +00:00
markm
acf48f4555 Updating /usr/include/kerberosIV/des.h so eBones will build breaks
rcp and rlogin.
(patch supplied)

Submitted by:  John Capo <jc@irbs.com>
1995-09-10 14:59:51 +00:00
peter
136c23f685 Increase the tty column width from 2 to 3 characters.
This gives us more room to breath with tty names, especially with drivers
that support large numbers of ports..  eg: specialix and digiboard.

This does not actually change the current tty names, it just allows room
for reporting more characters if the drivers use them.
1995-09-04 01:22:54 +00:00
jkh
46a8ec7986 Well, it would appear that the "ayes" have it (though by a slim margin).
Apply my \c changes to echo.  It should also be noted that this is:
A) going into 2.2, not 2.1
B) a functional no-op unless you actually use it!
1995-08-31 17:25:55 +00:00
joerg
4ff02b02ed Sigh. This will become a never ending story. :-(
When comparing my recent parser change against the ash in 1.1.5.1, i
found that a couple of other problems in the same area has been fixed
there, but not in 2.2.  Semicolons and EOF do also delimit words...
1995-08-28 19:24:35 +00:00
dg
4f9c80c674 Correct the default format info to indicate "%+". 1995-08-28 10:38:01 +00:00
joerg
3de11c3b09 Make the shell handle a null command in a &&/|| sequence correctly.
The && and || tokens do also terminate a command, not only the
newline.

While i was at it, disabled trace code by default, it served no good
purpose since it required the use of a debugger anyway to be turned
on.  Instead, placed a hint in the Makefile on how to turn it on.

This makes the shell ~ 10 % faster and ~ 4 KB smaller. :)

Pointed out by:  jan@physik.TU-Berlin.DE (Jan Riedinger)
1995-08-27 20:26:44 +00:00
pst
c32a50c04e Clean up compilation warnings. 1995-08-23 05:31:06 +00:00
nate
de358b5139 Fix possible FS corruption caused by extra parameter to pax.
oo
Turns out, it's pretty important if you use PAX for backup.  In the man
page for PAX, there is an error (OK, we could call it a "potentially
catastrophic incompleteness").  It reads:

>  The command:
>
>      pax -r -v -f filename
>
>  gives the verbose table of contents for an archive stored in filename.

Yup, it does do that.  With a side effect: it also _replaces_ all the
files that come in from the archive.  As is my custom, I did my
backup-validation real soon after the backup was written.  Precisely
because I've seen the same sort of thing happen on other systems.  So all
that file-restoring didn't do a lot of damage.  Probably helped my
fragmentation somewhat (aha, an online defragger?) It did confuse one
hapless user, who lost an email message he _knew_ he hadn't deleted.
Apparently the system restored the file as of just before that critical
message came in.

The correct entry should read:

>  The command:
>
>      pax -v -f filename
>




>  gives the verbose table of contents for an archive stored in filename.


Submitted by:	John Beckett <jbeckett@southern.edu> via the BSDI mailing list
1995-08-16 23:12:25 +00:00
joerg
1d402e8a8d The command to `move' across file system boundaries is actually
cp -PRp source_file destination

Closes PR # bin/689: mv(1) manpage

Submitted by:	wosch@cs.tu-berlin.de (Wolfram Schneider)
1995-08-15 19:44:39 +00:00
joerg
4f47bf958d sh(1) incorrectly ignored an EOF condition when looking for the
closing backquote in a `foo` substitution.

Discovered by: Martin Welk <mw@theatre.pandora.sax.de>
1995-08-11 08:18:39 +00:00
ache
015e766f81 Fix csh to determine event number properly, i.e. stop by ^*-% too.
This fix match with what manpage said and other systems csh's do.
Submitted by: Bill Fenner <fenner@parc.xerox.com>
1995-08-10 05:13:42 +00:00
ache
36623ef62d Change ctime to strftime %c to use national date/time representation 1995-08-08 00:03:04 +00:00
wollman
fc1f6c1d76 Delete bogus referneces to timezone code internal header file `tzfile.h',
which is no longer bogusly installed in /usr/include.
1995-08-07 19:17:46 +00:00
joerg
5eb9106466 Fix /bin/sh's broken handling of the builtin getopts(1). The options
``-ffoo'' and ``-f foo'' have been treated differently.

This has been in violation of Posix.2 (that deprecates -ffoo, but
doesn't disallow it).
1995-08-06 19:35:33 +00:00
ache
5ec1f8dfb4 Use %+ to print data using LC_TIME 1995-08-05 23:08:17 +00:00
joerg
3e48994129 expr(1) didn't comply to Posix.2 and its own man page: any
comparisions have been made as string comparisions, even in cases
where both operands clearly qualified as integers.

The fix is to make the parser properly analyzing whether an operand is
a valid integer or not.
1995-08-04 17:08:07 +00:00
rgrimes
3fc7894a0e Set NOSHARED=true, having this binary static makes it much easier to
fix /usr/lib/*.so problems.

Submitted by:	davidg
1995-07-24 01:44:17 +00:00
ache
56b16b74bf Move first PATH initialization after sensing for interactive,
first relative path warning was disabled in old case
1995-07-07 23:14:36 +00:00
ache
bd0186909e Do the same check for interactive shell (PATH warning)
like in csh.c
1995-07-07 23:13:11 +00:00
ache
8656368e5c Produce importpath warning only for true interactive shells,
close PR 598
1995-07-07 22:45:26 +00:00
bde
23f9d789cd Improve the recently changed and an old error message: don't report probe
errors.
1995-07-04 08:16:32 +00:00
joerg
fa02ebb9a1 stty fails with a non-obvious error message if it's run on a non-tty
stream, such as a rsh or vi pipeline.

The error message is:
stty: TIOCGETD: Operation not supported

It's immediately obvious to the knowledgable hacker type, but not
exactly comforting to the user who's not native to unix.  It's
especially confusing if there's a stty command in their .cshrc and
it's showing up on rsh output.

(Fixes PR #bin/573)

Submitted by:	peter@haywire.dialix.com (Peter Wemm)
1995-07-02 08:54:27 +00:00
bde
f0ca90235f Improve the handling of large minor numbers:
cpio/copyout.c:
Don't output a file if the major, minor or totality of its rdev would be
truncated.  Print a message about the skipped files to stderr but don't
report the error in the exit status.  cpio's abysmal error handling doesn't
allow continuing after an error, and the rdev checks had to be misplaced
to avoid the problem of returning an error code from routines that return
void.

pax/pax.h:
Use the system macros for major(), minor() and makedev().

pax already checks _all_ output conversions for overflow.  This has the
undesirable effect that failure to convert relatively useless fields
such as st_dev for regular files causes files not to be output.  pax
doesn't report exactly which fields couldn't be converted.

tar/create.c:
Don't output a file if the major or minor its rdev would be truncated.
Print a message about the skipped files to stderr and report the error
in the exit status.

tar/tar.c:
For not immediately fatal errors, exit with status 1, not the error count
(mod 256).

All:
Minor numbers are limited to 21 bits in pax's ustar format and to 18
bits in archives created by gnu tar (gnu tar wastes 3 bits for padding).
pax's and cpio's ustar format is incompatible with gnu tar's ustar
format for other reasons (see cpio/README).
1995-06-26 06:24:48 +00:00
ache
dac9b56c4e Additionly print strerror(errno), when getwd() fails to start
in initial directory.
Obtained from: idea from NetBSD
1995-06-18 14:34:48 +00:00
ache
4ceec44820 Fix error:
which /bin/ls
.//bin/ls
Obtained from: NetBSD
1995-06-18 14:20:16 +00:00
ache
b47fb59bab When filec active, TCSANOW was used in any case instead of
sensing TCSADRAIN/TCSAFLUSH
Obtained from: NetBSD
1995-06-18 14:08:44 +00:00
bde
0368f74e33 Don't unlink the target file if the copy failed. This behaviour isn't
documented and is incompatible with gnu cp.  It has very few good effects
(it recovers some disk space) and many bad ones:
- special files are unlinked after certain errors.
- the data may not be recoverable if the source is a special file or fifo.
- unlinking destroys the target attributes as well as the target data.
- unlinking doesn't actually remove the target data if the target is multiply
  linked.
1995-06-14 05:41:27 +00:00
rgrimes
a14d555c87 Remove trailing whitespace. 1995-05-30 06:41:30 +00:00
rgrimes
1888033949 Remove trailing whitespace.
Reviewed by:	phk
1995-05-30 00:07:29 +00:00
ache
a682acd0f3 Describe -m option 1995-05-06 13:52:29 +00:00
adam
495fdcd35d typo there --> their 1995-05-05 16:49:15 +00:00
dg
0011fb1aae From "Philippe Charnier" <charnier@lirmm.fr>:
There is a bug in sh: the built in command "fc -l" generates
a core dump (*NULL in not_fcnumber).

According to the sh manual page (fc  -l [-nr] [first [last]]), fc -l
is a correct sequence (in that case, values are defaulted to -16 and -1)
but fails when first is not given.
1995-05-05 06:34:13 +00:00
bde
c6d77acc43 Support nonstandard (not yet all supported) flow control options. `ctsflow'
and `rtsflow' are the components of `crtscts'.  `dtrflow' and `dsrflow' are
new and not yet supported.  `dtrflow' may be useful for Cyclades serial
careds, which have h/w support for it and no h/w support for `rtsflow'.

print.c:
Report NTTYDISC in case the line is in this obsolescent state.
1995-04-29 15:17:17 +00:00
bde
09fc806063 Fix stty' on the output of stty -g'. The changes for the gfmt1 option
weren't TIOCSETD'd  unless another option changed something.
1995-04-29 15:00:34 +00:00
ache
25297a97a8 Fix bugs:
cchars2 not used
can't set or report MIN or TIME == 255
TIOCSETD on wrong fd
PPPDISC is not reported
1995-04-28 19:29:30 +00:00
dg
b824780548 Install with default BINOWN (as it once used to be). 1995-04-15 03:31:19 +00:00
dg
b0ecb5429e Install setgid kmem rather than setuid root. The problem with procfs that
was breaking this before has been fixed.
1995-04-15 03:25:52 +00:00
ache
bf4c9aa148 Allow root to delete uchg/uappnd files 1995-04-13 13:35:09 +00:00
joerg
1fa4f508ae date(1) didn't emit a final newline if the format had been specified
with `+'.  This breaks tradition and violates Posix 1003.2.

Discoverd by: luigi@labinfo.iet.unipi.it (Luigi Rizzo)
1995-04-03 20:08:33 +00:00
bde
cb1457c9ad Add braces to fix wrong if-if-else-if nesting that broke `cp -pR' for
fifos.
1995-04-02 00:49:16 +00:00
phk
183b7355f6 Make build work, even if there is no obj subdir. 1995-03-30 19:45:20 +00:00
phk
d42111863a Having BLOCKSIZE=K and using "-k" option ls would use 2K block size... 1995-03-23 19:05:00 +00:00
joerg
c6030c6511 You will find enclosed some changes to make gcc -Wall more happy in
/usr/src/bin. Note that some patches are still needed in that directory.

I (Joerg) finished most of Philippe's cleanup.  /bin/sh will still
need *allot* of work, however.

Submitted by:	charnier@lirmm.fr (Philippe Charnier)
1995-03-19 13:29:28 +00:00
dg
612646eb4c Fix previous fix that removes an unnecessary space; the output is now
just like it was in 1.1.5.
1995-03-09 20:40:17 +00:00
jkh
1d346f4dd3 Allow 0 as a signal number to match the man page.
Noticed by:	Mike Murphy <mrm@Sceard.COM>
1995-03-05 21:52:41 +00:00
joerg
a732676a92 Use `interactive' (foreground) delivery by default. The old behaviour
of queuing mails only can be restored by uncommenting a CFLAGS+= line
in the makefile, so sites that _really_ need this (perhaps some huge
mail hubs) can still have it.  The majority of FreeBSD boxes is better
served with an immediate delivery (and last time i've been asking on
the list, nobody complained).
1995-03-05 08:27:14 +00:00
guido
a28e8018c8 Fix the deletion of trailing newlines with backquote expansion.
Reviewed by:
Submitted by:
Obtained from:
1995-03-01 13:04:15 +00:00
jkh
1323b9b07e 1000000 usec -> 1 sec 0 usec; fix.
Submitted by:	"Philippe Charnier" <charnier@lirmm.fr>
1995-02-16 09:17:27 +00:00
bde
df0c70091b Include <limits.h> to get the definition of INT_MAX - don't depend on
namespace pollution in <time.h>.
1995-02-03 22:21:09 +00:00
dg
dd92b57647 Fix bogus format string; fixes problem reported by Wolfram Schneider. 1995-01-25 07:31:01 +00:00
ache
5887fd95f0 More koshering [ul]case fix, don't use pre-initialized tables at all,
treat 0xFF as valid character.
1995-01-17 23:04:29 +00:00
ache
eb022aca1e Make conv=[lu]case works with localized ctype (8bit) 1995-01-17 22:55:59 +00:00
ats
c24e685c76 Submitted by: David Muir Sharnoff
domainame has referenced getdomainname(2) instead of getdomainname(3).
bug report docs/137.
1995-01-14 17:02:33 +00:00
alm
a8457251d8 fixed `s' to set dot to last line affected, not the last line in
a substitution range.
1995-01-14 11:47:16 +00:00
paul
5c96f27c9c What I think is a more correct fix for the handling of backslashes
inside backquotes. Reversed my previous fix.
1995-01-11 07:07:00 +00:00
paul
27f1f0b76a Fix a bug with handling backslash escapes inside some quotes.
Should solve our problems with edit-pr.
1995-01-09 20:00:54 +00:00
bde
b4e68b2cf5 Don't strip off the last slash in the pathname "/". cp used to
stat the pathname "" in order to decide that the pathname "/" is
a directory.  This caused `cp kernel /' to fail if the kernel has
the POSIX behaviour of not allowing the pathname "" to be an alias
for ".".  It presumably also caused `cp /etc/motd /' to fail in
the unlikely event that "." is not stat'able.

Be more careful about concatenating pathnames: don't check that
the pathname fits until prefixes have been discarded (the check
was too strict).  Print the final pathname in error messages.
Terminate the target directory name properly for error messages.
Don't add a slash between components if there is already a slash.
1994-12-30 13:12:12 +00:00
bde
1bba21e3a1 Document the arch flag. It has always worked in 2.0.
Document aliases for the flags.

The formatting of the section describing the flags is poor.
1994-12-27 16:49:08 +00:00
bde
d82158a7e0 Obtained from: partly from 1.1.5
Convert "" to "." for "cd" and "cd ''".  chdir("") is required to fail
on POSIX systems.
1994-12-26 13:02:05 +00:00
bde
c73adf1de8 Obtained from: partly from 386BSD-0.1.2.4
Fix several bugs involving the obsolescent -d and -t options:
-d 0 and -t 0 were ignored
-t -600 was a usage error
-d 'atoi is not suitable for parsing args' and -t duh were not usage errors

Change some error messages to say which call to settimeofday failed.

Restore casts of NULL in function calls.

Finish conversion to using err() instead of perror().
1994-12-26 12:59:28 +00:00
joerg
30a0fe9c66 Make ls recognize the COLUMNS environmental variable, even
in cases where it does not run on a terminal.  This is important
e.g. for commands like

	env COLUMNS=132 ls -CR | lpr -Psome-wide-printer
1994-12-18 19:00:01 +00:00
jkh
09b19ee9f7 src/bin/ed will never build DES encumbered ed again. That is the job
for secure/bin/ed ...
1994-12-18 15:15:10 +00:00
bde
4bd4925bd2 Use lstat() instead of stat() for checking if the final source file exists,
so that `ln -fs' works when the source is a symlink pointing to a non-
existent file.
1994-12-06 18:50:44 +00:00
dg
bd0c7b7320 Re-apply an old patchkit days fix of mine for mempages:
* PATCHES MAGIC                LEVEL   PATCH THAT GOT US HERE
 * --------------------         -----   ----------------------
 * CURRENT PATCH LEVEL:         1       00051
 * --------------------         -----   ----------------------
 *
 * 14 Aug 92    David Greenman          Fixed NEWVM mempages calculation
1994-11-24 13:13:55 +00:00
wollman
d3aeb5a862 Add DISTRIBUTION=krb for Kerberos case. 1994-11-20 23:18:15 +00:00
ats
61a9f7372b Fix an error to prevent some core dumps from ps.
You can get ps easily to core dump, if you are running a "make depend"
on a kernel in one window and a "ps -auxww" in another. The ww will
try to give you the full argument list of the command that can
now be 64Kb large, but ps expected only 4Kb large arg arrays and
doesn't check for overflows.
1994-11-10 23:25:12 +00:00
pst
b8ab9277ff Add end of line check so mkinit doesn't produce garbage if you have a
MKINIT line that doesn't have a comment on it (we have at least two).

This mkinit program was written by someone who obviously doesn't believe
in defensive programming. :-(  There's a LOT of work that needs to be done
on this thing. :-( :-( :-(
1994-11-06 06:27:04 +00:00
jkh
0ba930fc76 Get this braindead, mongoloid shell look in /stand for pwd if it can't
find it in /bin.  This is something of a kludge, I know, but consider
my limited alternatives:  I can't make this an execvp() without making
people scream that I introduced a failure point or slowed down pwd,
and I can't make it an optional macro since crunch doesn't let you pass
arbitrary command-line args to the build of one of its crunch-ees.
This is the simplest, if not the nicest looking, solution I could come up
with.
1994-11-06 01:29:26 +00:00
ache
7418e4c6c2 Fix group permissions check for group list size > 1
Pointed by Bruce
1994-11-05 20:48:06 +00:00
ache
b3950642a8 Fix root -w case according to manpage (-x & -r cases already accords)
Pointed by Bruce.
1994-11-05 20:24:49 +00:00
ache
330d2baea1 Cosmetique, missing tab/spaces after patch 1994-11-05 17:31:23 +00:00
ache
63bfe9e23a More complex implementation of previos superuser fix
because rw and x bit treats differently infact
1994-11-05 17:28:03 +00:00
ache
bc1cc6ddda test produce wrong results for superuser, i.e. tells
that file is unreadable when it is readable infact.
1994-11-05 17:07:14 +00:00
dg
6e04bf5b79 Nuked #ifdef __386BSD__ since this is not appropriate and no longer defined
in our 2.6.1 gcc port.
1994-11-03 21:46:55 +00:00
phk
351aa878aa Don't check existence of -lcrypt to decide if DES is employed,
instead check that "NOCRYPT" isn't defined.
1994-10-29 10:13:34 +00:00
dg
56d17bcede Use kvm_uread instead of kvm_read to access the upages. 1994-10-18 04:27:46 +00:00
ache
e0df6f34b8 Back out ctype fix, unneded with new ctype 1994-10-09 15:25:23 +00:00
ache
200805db70 Skip 'cua' 3 chars like 'tty' 3 chars 1994-10-02 14:11:32 +00:00
dg
021853ab44 On second thought...back out previous commit. 1994-10-02 08:33:31 +00:00
dg
3c9bd5de76 Include rtprio.h 1994-10-02 08:19:13 +00:00
ache
8a7d72f6e4 libcompat removed 1994-10-02 01:36:03 +00:00
csgr
e9bb220eef First level of changes for bringing in eBones (kerberos).
- Get rid of inverse logic (NOKERBEROS and NOEBONES) in src/makefile,
and replace with MAKE_KERBEROS and MAKE_EBONES.  (Far fewer contortions,
and both default to off.)  IF YOU WANT KERBEROS, YOU HAVE TO EXPLICITLY
DEFINE ONE OF THESE.
- Make Makefiles kerberos-aware.
1994-09-29 13:06:54 +00:00
wollman
654b618563 Actually implement this correctly. 1994-09-26 02:14:27 +00:00
dg
8722740e7f Added $Id$ 1994-09-24 02:59:15 +00:00
bde
39056852b1 Remove bogus cast that was introduced in the previous commit. 1994-09-21 22:34:38 +00:00
bde
c7b1379cc8 Remove redundant declarations that were added in the previous commit. 1994-09-21 22:31:01 +00:00
ache
ba621babdd Make ls ctype-aware 1994-09-21 20:23:07 +00:00
phk
61ca3e5cab fix ln to accept -f again. Thanks Bruce. Seems that Joe Grosch isn't
quite as safe as I thought.  I will have to look much closer on his
patches.  Damn.
1994-09-20 07:24:51 +00:00
phk
0969323e72 Applied patch to make -Wall and -Dlint shut up.
Reviewed by:	phk
Submitted by:	Josef Grosch <joeg@gagme.wwa.com>
1994-09-20 07:18:04 +00:00
phk
936982de13 The former patch to sync.c was short-lived. Bruce pointed out that
"Now it is has 2 portability bugs, which is a lot for 5 lines of working code"
1994-09-20 07:02:35 +00:00
phk
2c9f4788e2 /home/phk/jg 1994-09-20 06:28:16 +00:00
phk
1da6fa08f8 Applied patch to make -Wall and -Dlint shut up.
Reviewed by:	phk
Submitted by:	Josef Grosch <joeg@gagme.wwa.com>
1994-09-20 06:24:56 +00:00
pst
7963d9a803 Add support for '-k' option to print file allocation space in 'K' instead of
system blocks.

This is semi-original code, not the same way this crufty option was handled
in FreeBSD 1.x.
1994-09-19 07:49:56 +00:00
wollman
3363d7a700 Added domainname. 1994-09-18 21:25:26 +00:00
wollman
08e96f0a30 A new domainname(1) command based on hostname(1), this time with a correct
manual page.
1994-09-18 21:23:37 +00:00
sef
600b25e2d3 With '!' being made into a keyword (yech!), case cases didn't work properly.
This should fix it (passed my test cases).  Originally discovered with
perl's Configure (well, in FreeBSD, I don't know how the NetBSD folks
discovered it).

Reviewed by:	sef
Submitted by:	jtc@cygnus.com
Obtained from:	NetBSD
1994-09-14 17:41:32 +00:00
csgr
a837391e87 Make get_int() think that "" (null) has the integer value 0.
(Which is the same behaviour as in 1.x)
The install blows up without this.
Reviewed by:	rgrimes
1994-09-11 21:30:09 +00:00
csgr
b819d56caf - handle signs on integers properly,
- make sure error messages for bad integers are moderately sensible
- handle test ! "abc" -o "abc" (This should evaluate to true)
  (and similar cases) ie:
  and/or operator test added to POSIX special case processing.
- more test cases added.

Based on: Work done on 1.x's test(1) by Andrew Moore and Adam David.
1994-09-11 13:57:31 +00:00
jkh
6cf02f12cc [ From Dave Tweten ]
POSIX.2 looks pretty unequivocal to me, and it agrees with you.

Under the explanation of the "-p" option, it says, "Each dir operand that
names an existing directory shall be ignored without error."  Under the
explanation of exit status zero, it says, "All the specified directories were
created successfully, or the-p option was specified and all the specified
directories now exist."

Seems to me POSIX requires exactly the behavior you want.

[ And I've made the change, which is also now compatible with 1.x - jkh ]

Reviewed by:	jkh
Submitted by:	jkh/tweten
1994-09-08 21:34:33 +00:00
bde
ebb7b36c3a Explicitly include <sys/types.h> before including <regex.h>. This is
apparently required by POSIX.  It will be required in practice when
the bogus inclusion of <sys/types.h> is removed from <stdio.h>.
1994-09-05 13:03:50 +00:00