Commit Graph

729 Commits

Author SHA1 Message Date
Peter Wemm
1ec21d5930 Fix nasty bracketing/precedence bug. Every time something read (and
refilled) a file that was either line- or un-buffered, all files were
flushed.  According to the code comment, the flush (according to ANSI)
is supposed to happen on write + line buffered output files, not _all_
files.

Obtained from: OpenBSD / Theo de Raadt, possibly from proven@cygnus.com
1996-08-13 17:49:45 +00:00
Andrey A. Chernov
c2bfae006a Back out fallback approximation changes, they are not so right to live 1996-08-13 17:03:18 +00:00
Andrey A. Chernov
2c4b0dffec Back out minor bumping per Peter suggestion 1996-08-13 14:37:53 +00:00
Andrey A. Chernov
83d8106e1a simplify/speedup/extend 1996-08-13 13:38:35 +00:00
Andrey A. Chernov
ce78364150 Bump minor number - new function added 1996-08-13 10:00:35 +00:00
Andrey A. Chernov
b339a4060f Remove old version hooks 1996-08-12 19:18:47 +00:00
Andrey A. Chernov
79deb12410 Convert to newly aded collate compare function 1996-08-12 18:49:54 +00:00
Andrey A. Chernov
883a3266d1 There is so many places where range comparation (using collate)
needed (much more than I think initially), so I forced to add
new user-visible non-standard function to libc.
1996-08-12 18:38:49 +00:00
Peter Wemm
ce70b6caf8 clear sockaddr_in's on stack before use
set sin_len
close one ftp port bounce attack
have rresvport() use bindresvport() rather than duplicate the code,
  rresvport() is a superset of bindresvport().

Obtained from: OpenBSD / Jason Downs / Theo de Raadt, minor tweaks by me.
1996-08-12 14:14:09 +00:00
Peter Wemm
cf2fcd35dd Use the more robust and more efficient reserved port allocation mechanism
now built into bind(2).

Obtained from: OpenBSD / Jason Downs / Theo de Raadt
1996-08-12 14:09:46 +00:00
Peter Wemm
54edc0bbbf clear various struct sockaddr_in's on stack, set sin_len.
(Noticed when comparing to OpenBSD source)
1996-08-12 14:00:26 +00:00
Andrey A. Chernov
36a00a4b79 Use collate for alpha character ranges 1996-08-12 04:03:50 +00:00
Andrey A. Chernov
c73ac73fb4 Remove static collcmp, use new internal function now 1996-08-12 03:51:16 +00:00
Andrey A. Chernov
89ec343a7f Remove static collcmp, ise new internal function now 1996-08-12 03:45:53 +00:00
Andrey A. Chernov
2eecfbac3a Add internal function __collcmp once instead of adding it statically
to many places in the libc
1996-08-12 03:40:37 +00:00
Andrey A. Chernov
b92a8919d1 Use collate for alpha character ranges 1996-08-12 02:00:56 +00:00
Andrey A. Chernov
5c551438ec Use collate data for national alpha character ranges like [a-z] 1996-08-11 16:08:17 +00:00
Andrey A. Chernov
3073507540 Short value is better for hash due to easy overflow in 8bit characters 1996-08-11 11:49:23 +00:00
Andrey A. Chernov
b5363c4a3b Use locale for character classes instead of hardcoded values
Misc 8bit cleanup
1996-08-11 11:42:03 +00:00
Mike Pritchard
2ce08cb20b Remove some hardcode *roff font change escape codes from
this man page to prevent half of it from coming out with underlines.

This man page needs to be gone over to fully convert it to mdoc format.

This closes PR#1440.

Submitted by:	Jens Schweikhardt <schweikhardt@rus.uni-stuttgart.de>
1996-08-06 22:42:23 +00:00
Mike Pritchard
47cc13c104 Correct the paramter type of the second argument to fgets.
Obtained from: NetBSD-bugs mailing list
1996-08-06 22:34:44 +00:00
Bruce Evans
66ff54bd17 Document that the relevant clock ticks are for the statistics clock
and that the statistics clock has a frequency of sysconf(_SC_CLK_TCK).
1996-07-30 17:32:49 +00:00
Bruce Evans
e96009446d Document that clock ticks are for the profiling clock and that the
clock frequency is stored in the gmon header.
1996-07-30 17:26:34 +00:00
Bruce Evans
446ee8014f Fixed description of _SC_CLK_TCK. Both the clock and the units
were wrong.
1996-07-30 17:15:09 +00:00
Bruce Evans
7d334687be Fixed comment about ru_maxrss. This field isn't an integral. 1996-07-30 17:06:44 +00:00
Peter Wemm
ef1c2ba16f Fix some of the problems that bde pointed out to me some time ago.
- buffer expansions were not working right due to a return code botch.
 - signed types instead of size_t's meant somebody else went and put
   casts in, I've changed the types to what they should have been.
1996-07-28 16:16:11 +00:00
Garrett Wollman
94b2b83ad5 Refer to the ASCII character 000 by its proper name, `NUL', and not
`NULL' (which should only be used in reference to null pointers).  Also
fix a cross-reference.
1996-07-25 18:31:08 +00:00
Garrett Wollman
2b3a38f6e5 Finish rename of KERN_DOMAINNAME to KERN_NISDOMAINNAME.
Suggested by: Keith Bostic
1996-07-25 18:03:53 +00:00
Paul Traina
8618ef52a2 Bring in fixes to db 1.85 from NetBSD. These fixes have been documented as
being sent back to Bostic by the NetBSD crew.
Obtained from: NetBSD-current
1996-07-21 02:23:13 +00:00
John Dyson
343999a1b9 Document madvise(2) as it is in FreeBSD. 1996-07-20 04:37:26 +00:00
Mike Pritchard
b4176c89f9 The previous change to alarm.3 to improve the wording
was still somewhat confusing and poorly worded.  So I took
the alarm.3 man page from NetBSD, which looked much
better all around.

Obtained from: NetBSD
1996-07-19 22:19:08 +00:00
Garrett Wollman
fe463a8fa7 Revert to old version of strftime.c; the new one doesn't work right. 1996-07-19 15:17:44 +00:00
Adam David
9584a298e4 the previous text was absurd, and wrong 1996-07-19 13:07:42 +00:00
Garrett Wollman
1ecaa8a894 Merge the recently-imported tzcode96h distribution (libc portion). The
part that does zic(8)/zdump(8) is still yet to be imported (but the old
zic and zdump will work just fine with these header files and the
data format has not changed).
1996-07-18 18:53:15 +00:00
Bill Paul
56d18eda29 In _yp_dobind(), if we find ourselves required to contact the local ypbind
directly in order to obtain binding information, check that the local
ypbind is using a reserved port and return YPERR_YPBIND if it isn't.
We should not trust any ypbind running on a port >= IPPORT_RESERVED;
it may have been started by a malicious user hoping to trick us into
talking to a bogus ypserv.

Note that we do not check the ypserv port returned to us from ypbind.
It is assumed that ypbind has already done a reserved port test (or not,
depending on whether or not it was started with -s); if we trust the
authenticity of the local ypbind, we should also trust its judgement.

Obtained from: OpenBSD
1996-07-13 20:23:13 +00:00
Garrett Wollman
fba5b1cc97 Include the proper header file (<unistd.h>) and declare [gs]etdomainname()
with the correct return type.  This does not include the renaming
of KERN_DOMAINNAME to KERN_NISDOMAINNAME.

Pointed-out-by: Keith Bostic
1996-07-12 19:55:20 +00:00
Jordan K. Hubbard
51295a4d3e General -Wall warning cleanup, part I.
Submitted-By: Kent Vander Velden <graphix@iastate.edu>
1996-07-12 18:57:58 +00:00
Wolfram Schneider
e02dc2ce2b add references lstat(2), readlink(2), symlink(7) in section SEE ALSO 1996-07-07 12:52:51 +00:00
Poul-Henning Kamp
0d3f1a2a53 Isolated all the crap for thread-safe so I can see what goes on again... 1996-07-03 05:03:07 +00:00
Mike Pritchard
e9c032def8 Describe the "file pointer" in lseeks' man page a bit better
so that it is less likely someone will confuse it with a
"FILE *" type pointer.

Submitted by:	Based on James Raynard's patch
1996-07-03 02:55:10 +00:00
Mike Pritchard
8ae7d6b0cb Document the "sig" function parameter.
Submitted by:	James Raynard
1996-07-03 02:44:04 +00:00
Bruce Evans
95c715795a Fixed comparisons so that preposterously large (>= 0x80000000) brk values
aren't silently converted to minbrk.  This stops malloc(INT_MAX) from
dumping core.  Small values are still silently converted.  They should
be an error.  sbrk() doesn't do any range checking or conversions or
overflow checking.

Moved PIC_EPILOGUE invocation to a more natural place where it
obviously doesn't interfere with the comparison.
1996-06-25 18:54:42 +00:00
Gary Palmer
7dd9508fc2 Specify that daemon(3) returns int, and standardise the
phrasing in the ERRORS section a bit, as well as now specifying
the return status.
1996-06-22 23:46:00 +00:00
James Raynard
d748173277 Submitted by: Wolfram Schneider <wosch@cs.tu-berlin.de>
Document the fact that the tracefile argument must lead to a regular file.

Also took the opportunity to remove the spurious "Errors" entry
relating to filenames with the high-order bit set and add $Id$.

(More of the same to follow if there are no objections).
1996-06-22 18:05:15 +00:00
James Raynard
ce51cf0392 Suggested by: Bruce Evans, Jeffrey Hsu, Gary Palmer
Added $Id$'s to files that were lacking them (gpalmer), made some
cosmetic changes to conform to style guidelines (bde) and checked
against NetBSD and Lite2 to remove unnecessary divergences (hsu, bde)

One last code cleanup:-

Removed spurious casts in fseek.c and stdio.c.
Added missing function argument in fwalk.c.
Added missing header include in flags.c and rget.c.
Put in casts where int's were being passed as size_t's.
Put in missing prototypes for static functions.
Changed second args of __sflags() inflags.c and writehook() in vasprintf.c
from char * to const char * to conform to prototypes.

This directory now compiles with no warnings with -Wall under
gcc-2.6.3 and with considerably less warnings than before with the
ultra-pedantic script I used for testing. (Most of the remaining ones
are due to const poisoning).
1996-06-22 10:34:15 +00:00
Julian Elischer
6ede0fb59d Submitted by: archie@whistle.com
This program should COMPLAIN about uids > 65K but not abort.. they are after
all legal, and some of us NEED them!
1996-06-20 19:19:29 +00:00
Joshua Peck Macdonald
fc3be6aea0 I hate to read a man page that almost has useful information
but falls a little short.  I added a comment on the null
termination of struct group's gr_mem field.

Reviewed by:	jkh
1996-06-20 14:13:15 +00:00
Garrett Wollman
5900c00709 Add RCS Id and fix date. 1996-06-17 20:12:53 +00:00
Garrett Wollman
010b7c6c74 Cross-reference addr2ascii(3). 1996-06-17 20:11:12 +00:00
Garrett Wollman
276ea05394 Correct date and add $Id$ to reflect previous modification. 1996-06-17 20:04:06 +00:00
Garrett Wollman
538e87685f Cross-reference addr2ascii(3) and inlcude a note about how those
functions are preferred but are not widely available as yet.
1996-06-17 20:01:05 +00:00
Garrett Wollman
724ad64676 It would help if I actually added the source code for these routines. 1996-06-13 20:45:42 +00:00
Garrett Wollman
ffd1512db6 Add an independent implementation of addr2ascii(3) and ascii2addr(3)
following the API of the INRIA IPv6 implementation.
1996-06-13 20:45:05 +00:00
James Raynard
e2f892a7e7 Code cleanup:-
The usual stuff, adding missing function prototypes, argument types,
return values, etc.
1996-06-12 23:02:53 +00:00
James Raynard
45f6af0252 Code cleanup:-
The usual stuff, adding missing function prototypes, argument types,
return values, etc.

This directory now compiles with no warnings with -Wall on gcc2.6.3!
1996-06-12 22:59:55 +00:00
James Raynard
b83100194d Code cleanup:-
The usual stuff, adding missing function prototypes, argument types,
return values, etc. In mktemp.c, convert pid from u_int to pid_t, and
get rid of "extern int errno".
1996-06-12 22:58:21 +00:00
James Raynard
9915c09cf9 Code cleanup:-
The usual stuff, adding missing function prototypes, argument types,
return values, etc.
1996-06-12 22:56:41 +00:00
James Raynard
b2843ce288 Code cleanup:
Fixed a couple of nitpick warnings, plus one that slipped through the
net earlier.

This directory now compiles without any warnings with -Wall! (Until
the next gcc upgrade...)
1996-06-11 17:22:51 +00:00
James Raynard
f12d1a5dd0 Code cleanup:
1.  Added missing function prototypes.
2.  Added missing function return types.
3.  Added missing function argument types.
4.  Added missing headers for system function prototypes.
5.  Corrected format specifier in printf().
6.  Added extra parentheses around assignment used as truth value.
7.  Added missing "default" cases in switch statements.
8.  Added casts for function pointers.
9.  Did *not* change int declarations of uid and gid to uid_t/gid_t
    because I don't know if that would affect the protocol. Put in
    explicit casts to int instead, to make things more obvious.
10. Moved declarations of variables that are only used if YP is
    defined inside the '#ifdef YP' conditionals.
1996-06-10 20:13:09 +00:00
Poul-Henning Kamp
49f94c2dec Update man to tell that <sys/types.h> is needed.
Submitted by:	"Philippe Charnier" <charnier@lirmm.fr>
1996-06-10 15:48:07 +00:00
Bill Paul
2f5fc074d9 Remove extraneous '+' that looks like it was left in by mistake. This
module compiles now.

Reported by: Stephen Hocking
1996-06-10 04:59:05 +00:00
James Raynard
7d6a21b4d7 Code cleanup (part two):
1. Added missing function prototypes.
2. Added missing function return types.
3. Added missing function argument types.
4. Added missing headers for system function prototypes.
5. Corrected casts in select() args.
6. Got rid of more "extern int errno" rubbish.
7. Added extra parentheses around assignment used as truth value.
8. Fixed bug in clnt_{tcp, udp}create() where pointers could be free'd
    even if they hadn't been successfully malloc()'d.
1996-06-10 00:49:19 +00:00
Wolfram Schneider
17f47987b3 update sticky bit documentation 1996-06-09 20:53:00 +00:00
Andrey A. Chernov
45110ccfce Use better approximation if collate info not available.
Fix bug: strxfrm+strcmp != strcoll, if collate info not available
1996-06-09 14:56:08 +00:00
Andrey A. Chernov
2127ab9a07 Localize it.
(it was NOT localized initially, it does some trick instead!)
1996-06-09 13:31:06 +00:00
Joerg Wunsch
d230d4275a Reword the sentence about the required space for the result string.
Closes PR # 1303.-
1996-06-09 06:48:42 +00:00
James Raynard
c124f3bdfc Code cleanup (part one):
1. Added missing function prototypes.

2. Added missing function return types.

3. Added missing function argument types.

4. Added missing headers for system function prototypes.

5. Got rid of "extern int errno" rubbish.
1996-06-08 22:54:59 +00:00
Alexander Langer
1f16ebd9a2 Rephrase some things as suggested by Bruce. 1996-06-08 15:59:43 +00:00
James Raynard
1638d6b6d5 Oops, replace a rather important line that was lost in transit 8-( 1996-06-08 15:28:11 +00:00
Alexander Langer
79020cf23f Document that truncate can also be used to extend the size of a file,
but doing so is not truly portable.
1996-06-07 01:34:47 +00:00
James Raynard
b487e9d356 Submitted by: (based on code in "Advanced Programming in the Unix Environment"
by W.Richard Ste vens. EINTR handling suggested by bde@freebsd.org).

Code cleanup:

1. Add missing return type.
2. Replace 'union wait' by int.
3. Use Posix-style signal handling instead of signal().
4. Use fork() instead of deprecated vfork().
5. Block signals before fork()'ing, instead of after.
6. Return -1 if fork() fails, instead of 0.
7. Add EINTR handling for waitpid() call.

Also add claim of Posix conformance to man page.
1996-06-05 00:08:54 +00:00
James Raynard
ccbcef60f5 Code clean up:
Changed type of pid from int to pid_t. (Missed one!)
1996-06-04 17:35:15 +00:00
James Raynard
e75ad74a88 Code clean up:
Changed type of pid from int to pid_t.
1996-06-03 13:19:10 +00:00
James Raynard
0eb3435311 Code clean up:
Added missing headers for system functions.
1996-06-03 13:16:53 +00:00
Joerg Wunsch
d6c9f122c8 Minor corrections. The second parameter is actually of type int
(though only char will be used), and our implementation is not really
worse than the SysV one, so there's no need to claim so in the BUGS
section.
1996-06-03 10:40:39 +00:00
Bill Paul
a230877213 Make _yp_dobind() a litle smarter:
Now that we preserve RPC handles instead of rebuilding them each time
a ypcln function is called, we have to be careful about keeping our sockets
in a sane state. It's possible that the caller may call a ypclnt
function, and then decide to close all its file descriptors. This would
also close the socket descriptor held by the yplib code. Worse, it
could re-open the same descriptor number for its own use. If it then calls
another ypclnt function, the subsequent RPC will fail because the socket
will either be gone or replaced with Something Completely Different. The
yplib code will recover by rebinding, but it doing so it may wreck the
descriptor which now belongs to the caller.

To fix this, _yp_dobind() needs to label the descriptor somehow so
that it can test it later to make sure it hasn't been altered between
ypclnt calls. It does this by binding the socket, thus associating a port
number with it. It then saves this port number in the dom_local_port member
of the dom_binding structure for the given domain. When _yp_dobind() is
called again (which it is at the start of each ypclnt function), it checks
to see if the domain is already bound, and if it is, it does a getsockname()
on the socket and compares the port number to the one it saved. If the
getsockname() fails, or the port number doesn't match, it abandons the
socket and sets up a new client handle.

This still incurs some syscall overhead, which is what I was trying to
avoid, but it's still not as bad as before.
1996-06-01 05:08:31 +00:00
Bill Paul
217ae63218 Improve NIS performace of getservbyname() and getservbyport(). Both these
functions are implimented as wrappers around getservent(), which means it's
up to getservent() to do all the work. The NIS support in getservent()
only allows it to scan through the services.byname map one entry at a
time until it finds the requested service name/port. This can be painfully
slow due to the overhead involved (lots and lots of successive RPCs).

To fix this, we allow getservbyname() and getservbyport() to signal
getservent() that if NIS is turned on (there's a '+' in /etc/services),
the usual yp_first()/yp_next() linear search should be abandoned and
yp_match() used instead. This causes getservent() to immediately
locate the requested entry instead of wasting time groping through the
whole map.

The downside is that this trick is accomplished by exporting a couple of
pointers from getservent.c which getservbyname.c and getservbyport.c can
preset in order to tell getservent() what to do. If all three functions
were in the same source module, then the extra cruft could be delcared
static to avoid poluting the global symbol space. Maybe they should be
combined anyway. For now I've settled on prepending lots of underscores.
1996-06-01 04:40:42 +00:00
Peter Wemm
3ccd4a12e8 Use the setsockopt for IP_PORTRANGE to cause rresvport() to allocate a
privileged port within a single bind(), rather than looping through
attempts to bind over and over again over progressively lower ports.

This should speed up rlogin/rsh etc, and will probably cure some of the
strange rlogin hangs that have been reported in the past where rresvport()
managed to bind() to a port address that it shouldn't have.
1996-05-31 04:00:21 +00:00
Jordan K. Hubbard
941fbd30eb Fix bogus MLINKS line from vasprintf change. 1996-05-29 05:00:12 +00:00
Wolfram Schneider
01fc74a034 add manpage links
asprintf.3 -> printf.3
vasprintf -> printf.3
1996-05-29 01:00:00 +00:00
Wolfram Schneider
17753d1780 add manpage links:
des_setkey.3 -> crypt.3
des_cipher.3 -> crypt.3
err_set_exit.3 -> err.3
err_set_file.3 -> err.3
strunvis.3 -> unvis.3
1996-05-29 00:57:19 +00:00
Poul-Henning Kamp
8e3fab403b Use ld -O insted of ld -o + mv. 1996-05-28 16:24:53 +00:00
Peter Wemm
15aa00d597 Add an implementation of the gnu-ish asprintf() and vasprintf(). They are
not based on gpl'ed code, just prototype and usage.  I'm not 100% certain
they behave the same while the system is in trouble (eg: malloc() failing)
but in those circumstances all bets would be off anyway.

These routines work like sprintf() and vsprintf(), except that instead of
using a fixed buffer, they allocate memory and return it to the user
and it's the user's responsibility to free() it.  They have allocate as
much memory as they need (and can get), so the size of strings it can deal
with is limited only by the amount of memory it can malloc() on your
behalf.

There are a few gpl'ed programs starting to use this interface, and it's
becoming more common with the scares about security risks with sprintf().
I dont like the look of the code that the various programs (including
cvs, gdb, libg++, etc) provide if configure can't find it on the system.

It should be possible to modify the stdio core code to provide this
interface more efficiently, I was more worried about having something
that worked and was secure.  :-)  (I noticed that there was once intended
to be a smprintf() routine when our stdio was written for 4.4BSD, but it
looks pretty stillborn, and it's intended interface is not clear).  Since
Linux and gnu libc have this interface, it seemed silly to bring yet
another one onto the scene.
1996-05-27 10:49:43 +00:00
Marc G. Fournier
6859875c81 Removed false copyrights... 1996-05-27 06:54:03 +00:00
Marc G. Fournier
b0d57629f6 Added in appropriate Berkeley copyright and RCS Id: string
Closes PR#doc/536
1996-05-27 04:10:28 +00:00
Peter Wemm
b8953cdb9f Document that the superuser cannot override link() and unlink() on
directories, and mention that it was historical practice.
1996-05-24 16:32:11 +00:00
Mike Pritchard
712dc76e87 Fixed various problems: typos, grammer, missing include files
wrong function type declarations, and wrong argument type
declarations.
1996-05-23 01:05:25 +00:00
Bill Paul
dfe8e51c4d - Fix _listmatch() to close PR #1207.
Fix submitted by: Alan Cox <alc@cs.rice.edu>

- Nuke yet another free(result) that isn't needed. (This one I found
  without phkmalloc's help. :)
1996-05-21 16:11:27 +00:00
Garrett Wollman
6335830372 Fix for vfsload(3):
- Don't allow non-root users to specify LKMDIR.
- Don't allow any users to specify TMPDIR.
- Call /sbin/modload using execl() rather than execlp().
1996-05-17 15:35:13 +00:00
Bill Paul
2694f9b9a8 - Patch around amd core dump problem: don't allow yp_unbind() or _yp_unbind()
to call clnt_destroy() on a potentially NULL RPC handle. Somebody should
  bang on this a bit to make sure the problem is really gone; I seem to
  have difficulty reproducing it. Patch provided by Peter Wemm and
  slightly tweaked by me.

- Don't call _yp_unbind() in individual ypclnt functions unless we encounter
  an RPC error while making a clnt_call().
1996-05-16 18:01:17 +00:00
John Polstra
cbdc4399d2 Fix a bug caused by the collision of a local assembler label with another
use of the same label in a recently-introduced PIC_PROLOGUE.  This
should solve the recent core dumps from pdksh.
1996-05-11 13:28:11 +00:00
Peter Wemm
7f11212ef1 Fix a bogon in the pic + threadsafe version of cerror, it was missing
a PIC_EPILOGUE (leaving an extra long on the stack).

Submitted by: John Polstra <jdp@polstra.com>
1996-05-10 16:43:47 +00:00
John Polstra
08f4fc1aa8 Clarify the description of the FNM_PERIOD flag. 1996-05-10 00:28:34 +00:00
Poul-Henning Kamp
31d4757546 Make rules reentrant. 1996-05-09 11:30:51 +00:00
Wolfram Schneider
9fb933075e `mv'' -> `mv -f''
``rm'' -> ``rm -f''
so mv/rm may not ask for confirmation if you are not root
1996-05-07 23:19:49 +00:00
Bill Paul
03cee47d84 Grrrr... yet another variation on Murphy's Law: the best way to find
bugs in your code is to put it in the -stable branch. (Corollary: the
day you discover the bug is the day the Internet decides to route your
telnet session to the repository box via Zimbabwe.)

Remove one bogus free(result) (from _havemaster()) that slipped by me.

Flagged by: phkmalloc
Pointed out to me by: Stefan Esser
1996-05-07 20:51:52 +00:00
Peter Wemm
f1703dfbaa Add support to enable libc to be compiled in ELF format. (#ifdef __ELF__)
In a nutshell, this macroizes the local/global symbol scoping rules
that are different in a.out and ELF.  It also makes the i386 assembler
stubs conform to i386 PIC calling conventions - the a.out ld.so didn't
object, but the ELF one needs it as it implements PIC jumps via PLT's as
well as calls.  The a.out rtld only worked because it was accidently
snooping the grandparent calling function's return address off the stack..

This also affects the libc_r code a little, because of cpp macro nesting.
1996-05-05 07:56:21 +00:00
Bill Paul
a169c9b1f9 NIS client-side performance tweak:
Each of the ypclnt functions does a _yp_dobind() when it starts and then
a _yp_unbind() when it finishes. This is not strictly necessary and it
wastes cycles: it means we do a new clnt_create() and clnt_destroy()
for each yp_whatever() call. In fact, you can do multiple clnt_call()s
using a single RPC client handle returned by clnt_create(). Ideally we only
have to create a handle to ypserv once (the first time we call a ypclnt
function) and then destroy it and rebind only if a call to ypserv fails.

- Modify _yp_dobind() so that it only creates a new RPC client handle
  when establishing a new binding or when one of the ypclnt calls
  invalidates an existing binding and calls _yp_dobind() to establish
  a new one.

- Modify the various ypclnt functions to only call _yp_unbind() if a
  call to ypserv fails.
1996-05-02 15:44:53 +00:00
Poul-Henning Kamp
0e51b8b85d Use PAGE_SIZE instead of NBPG 1996-05-02 08:43:37 +00:00
Poul-Henning Kamp
d71458ee72 Cache the result of getpagesize() so we only make one syscall.
Use getpagesize instead of CLBYTES.
1996-05-02 08:43:05 +00:00
Mike Pritchard
a251b9e77e Convert the time2posix man page to mdoc format. This still
needs some other cleanup, but it is good enough for now.
1996-05-01 23:17:27 +00:00
Mike Pritchard
417349c472 Fix a typo. 1996-05-01 22:49:36 +00:00
Mike Pritchard
eea782bac2 Remove a redundant description of the EMFILE error, and fix a typo.
Submitted by:	James Raynard <jraynard@dial.pipex.com>
1996-05-01 22:20:40 +00:00
Bruce Evans
50e9e20943 Fixed incomplete or wrong lists of prerequisite #includes related to
<sys/types.h>.
1996-05-01 01:45:23 +00:00
Bruce Evans
9c6e4f2a7c Fixed incomplete or wrong lists of prerequisite #includes related to
<sys/types.h>.
1996-05-01 01:40:04 +00:00
Bruce Evans
3a880d5ded Fixed a wrong prerequisite #include and a missing function-arg type. 1996-05-01 01:18:43 +00:00
Bruce Evans
6c0be88a57 Fixed misformatted #include (.Ft -> .Fd). 1996-05-01 01:04:44 +00:00
Bruce Evans
cdd84b0211 Fixed longstanding namespace convolution involving rune_t vs wchar_t.
If _ANSI_SOURCE or _POSIX_SOURCE is defined, then <ctype.h> had to
be included before <stddef.h> or <stdlib.h> to get rune_t declared.
Now rune_t is declared perfectly bogusly in all cases when <ctype.h>
is included.

This change breaks similar (but more convoluted) convolutions in the
stddef.h in gcc distributions.  Ports of gcc should avoid using the
gcc headers.
1996-05-01 00:40:10 +00:00
Bill Paul
88ce2dd1ef Very minor tweak:
In __initdb(), a failure to open the local password database is supposed
to result in a warning message being syslog()ed. This warning is only
supposed to be generated as long as the 'warned' flag hasn't been yet;
once the warning is generated, the flag should be set so that the message
is only syslog()ed once. However, while the state of the flag is checked
properly, the flag's state is never changed, so you always get multiple
warnings instead of just one.

Pointed out by: Peter Wemm
1996-04-29 14:48:47 +00:00
Bruce Evans
e0150c8ff7 Removed bogus includes of <sys/types.h> from synopses.
This commit covers the man pages for most of the ANSI library functions.
A few others such as strtol.3 have to mention <sys/types.h> because they
mix ANSI interfaces with less well designed extensions.
1996-04-19 19:00:26 +00:00
Bruce Evans
8a4599117b Don't include <sys/types.h> when it isn't used.
This commit covers most of the ANSI library functions. Many others only
need <sys/types.h> because they use u_xxx.
1996-04-19 18:40:25 +00:00
Bruce Evans
6da47fa518 Added `const' to types of sys_siglist and sys_signame. 1996-04-19 14:07:44 +00:00
Bruce Evans
6a59f3db1a Added `const' to types of sys_errlist and sys_nerr.
Use .Va instead of .Fa to describe these variables.

Say a little about inconsistent declarations of sys_errlist in the BUGS
section.
1996-04-19 14:02:03 +00:00
Sujal Patel
ea8c29e94b Fix the man page to reflect the recent addition of RFNOWAIT and the removal of
Plan9 specific flags.
1996-04-18 23:36:41 +00:00
Andrey A. Chernov
c0ea8ed12f Fix error in wcstombs: byte count not counted
Remove unneded casts in sgetrune/sputrune
Submitted by: wcstombs fix by Mihoko Tanaka <m_tonaka@pa.yokogawa.co.jp>
1996-04-18 07:01:46 +00:00
Joerg Wunsch
aed8797028 Document the possible EPERM return.
Submitted by:	imp@village.org (Warner Losh)
1996-04-17 20:49:29 +00:00
Bill Paul
94c53e1fb5 NIS cleanups and fixes, the next generation.
getnetgrent.c:

- Catch one bogon that snuck by: in _listmatch(), check for '\0'
  rather than '\n'; strings returned from yp_match() are terminated
  with a nul, not a newline.

getpwent.c:

- Rip out all of the +inclusion/-exclusion stuff from before and
  replace it with something a little less grotty. The main problem
  with the old mechanism was that it wasted many cycles processing
  NIS entries even after it already knew they were to be exlcuded
  (or not included, depending on your pointof view). The highlights
  of these changes include:

  o Uses an in-memory hash database table to keep track of all the
    -@netgroup, -user, and -@group exclusions.

  o Tries harder to duplicate the behavior normally obtained when using
    NIS inclusions/exclusions on a flat /etc/passwd file (meaning things
    come out in much the same order).

  o Uses seperate methods for handling getpwent() and getpwnam()/getpwuid()
    operations instead of trying to do everything with one general
    function, which didn't work as well as I thought it would.

  o Uses both getnetgrent() and innetgr() to try to save time where
    possible.

  o Use only one special token in the local password database
    (_PW_KEYYPBYNUM) instead of seperate tokens to mark + and -
    entries (and stop using the counter tokens too). If this new
    token doesn't exist, the code will make due with the standard
    _PW_KEYBYNUM token in order to support older databases that
    won't have the new token in them.

  All this is an attempt to make this stuff work better in environments
  with large NIS passwd databases.
1996-04-16 00:22:41 +00:00
Bill Paul
cbe78b44aa Fix a few NIS-related bogons:
- Clear the _yp_innetgr flag immediately after calling setnetgrent() from
  innetgr(). We only need the flag set to temporarily alter setnetgrent()'s
  behavior. Previously, it was being cleared too late.

- When in NIS-only mode, innetgr() was wasting time doing unecessary
  extra processing after it had already found a match.

- Remember to free memory allocated by the NIS functions during innetgr()
  searches.
1996-04-15 16:17:04 +00:00
Mike Pritchard
59f00bcdd9 Update the description of strncat to accurately describe how many
bytes are copied to the destination string.  Closes PR#1000.

Submitted by:	Dave Glowacki <dglo@ssec.wisc.edu>
1996-04-09 22:00:39 +00:00
Mike Pritchard
20631f47f1 Correct a minor typo. Fixes part of PR#1000.
Submitted by:	Dave Glowacki <dglo@ssec.wisc.edu>
1996-04-09 21:48:21 +00:00
Mike Pritchard
e40f3f85d4 Do not install the now unsupported netns and netiso
related man pages.  Comment out cross references to those man
pages from other man pages.
1996-04-08 05:15:09 +00:00
Mike Pritchard
edf0e5b3f8 Correct some man page xrefs, and some other minor changes to bring some
man pages up to mdoc guidelines and fix some minor formatting glitches.
Also fixed a number of man pages to not abuse the .Xr macro to
display functions and path names and a lot of other junk.
1996-04-08 04:18:31 +00:00
Mike Pritchard
906c1e27fc Correct some man page cross references and file location references. 1996-04-07 00:06:21 +00:00
Joerg Wunsch
29d221cde6 Mention other possible errors that could be caused by the F_[GS]ETOWN
commands.
1996-04-06 09:55:07 +00:00
Joerg Wunsch
9cb8a1050f Xref clocks(7). 1996-04-05 08:53:38 +00:00
Joshua Peck Macdonald
8098023dde Added a note about the return value. Its been so long I can't
remember who suggested the 'caveat' section.  Sorry.
1996-04-05 05:35:57 +00:00
Peter Wemm
7184fada11 Remove outdated (and never quite correct anyway) reference to the
"fact" that pipes were implemented as calls to socketpair().
1996-04-03 04:57:27 +00:00
Joerg Wunsch
4567abc2fa Xref sysexits(3). 1996-03-31 22:31:51 +00:00
Bruce Evans
0b50c8d653 stat() before open() because opening of special files may be harmful. 1996-03-29 12:55:54 +00:00
Andrey A. Chernov
81c280f58f Back out one of my previous changes: don't clear PARODD,
so return to absolute minimum of changed flags now
1996-03-28 13:33:18 +00:00
Andrey A. Chernov
9909e796b9 cfmakeraw:
clear PARODD bit too, help user program to set its own
parity via |
Set CREAD bit, it is 99% case
1996-03-27 21:29:32 +00:00
Mike Pritchard
064f007493 Added missing section numbers to a bunch of .Xr macros, or
converted them into .Fn macros where appropriate.  Also fixed
up some minor formatting problems.
1996-03-27 20:49:07 +00:00
Bruce Evans
1b5844118e Removed now-bogus casts that were to hide the inconsistency between the
nonstandard normal version and the standard threaded version.

Removed a bogus L in a constant.  fpos_t's aren't longs, and casting to
fpos_t would be verbose.
1996-03-27 18:07:29 +00:00
Bruce Evans
926bb1cf42 Fixed bogus cross references.
Reviewed by:	mpp
1996-03-27 17:54:40 +00:00
Bruce Evans
fe20c3b61c Say what happens to the buffer when fgets() returns NULL.
Fixed bogus cross references and a misordered line.
1996-03-27 17:43:38 +00:00
Andrey A. Chernov
42ce22e449 8bit clean fixes 1996-03-25 14:34:26 +00:00
Andrey A. Chernov
fe5fcbc78f Convert int to uchar range for ctype 1996-03-25 14:32:30 +00:00
Andrey A. Chernov
7871e36865 Remove half-dancing solution for signed chars to help finding
POSIXly-incorrect programs.
1996-03-25 13:43:24 +00:00
Andrey A. Chernov
bf93970596 Remove half-dancing solution for signed chars to help finding
POSIXly-incorrect programs.
1996-03-25 13:35:36 +00:00
Andrey A. Chernov
06b47700ae Since n is int now, sanity check must be n <= 0, not simple n == 0 1996-03-25 12:03:11 +00:00
Paul Richards
880787f0fe Fix incorrect parameter types. 1996-03-24 15:49:34 +00:00
Bill Paul
20e4b00a08 Don't bother trying to flock() /var/run/ypbind.lock; this breaks when
/var/run resides on an NFS filesystem (flock() always returns 0 in
this case, so we falsely assume that ypbind is dead and bail out).

Settle instead for better failure checking when using clnttcp_create()
and clnt_call() to interact with ypbind. We still try to flock()
/var/yp/binding/$DOMAINNAME.2, but if this doesn't work, we drop into
the code that retrieves the binding information from ypbind directly.
If that also fails, then we're toast. On NFS filesystems, this means
we'll be ignoring the binding file for no reason and always talking to
ypbind even though we don't have to, but at least things will work.

(I could just replace the flock(/var/run/ypbind.lock) check with
an RPC call to ypbind's NULLPROC procedure, but if the flock() of
the binding file doesn't pan out we're going to try to talk to
ypbind later anyway. *sigh* Is NFS file locking ever going to work?)
1996-03-23 22:48:19 +00:00
Bill Paul
ff27d2a474 Fix other half of problem reported in PR #1079: _getnetbynisaddr() is
broken. The translation from network number to ASCII string was not
working correctly (you would sometimes get things like 0.244.0.0 instead
of 244.0.0).

Also copied results of yp_match() to a static buffer for consistency
with gethostbynis.c.

Note: _getnetbynisaddr() chops off trailing .0's, i.e. 244.0.0 is
truncated to 244. By contrast, getnetbyht.c code (for local /etc/networks
lookups) leaves the traling .0's in place. This means that the NIS
and local file lookups will match different things when looking up the
same network number. I'm not sure which is the correct behavior. (I
think the DNS lookup code tries all combinations -- should the NIS
and local host lookup routines do that too?)
1996-03-23 22:16:22 +00:00
Bill Fenner
261a532a8b The 4.4-lite vfprintf counted the %# hex prefix and the sign in
the precision; ANSI X3J11 is not crystal clear but certainly says
that the precision specifies the number of /digits/, and signs
and "0x" aren't really digits.

NetBSD already has a similar patch.
1996-03-20 18:28:48 +00:00
Bill Paul
08aff01b5d Fix yp_all() so that it doesn't bogusly return YP_NOMORE at the end
of a successful map retrieval. (This has to do with a previous change
to xdr_ypresp_all_seq() and ypxfr_get_map(); originally, yp_all()
would look for a return value of YP_FALSE to signal success, but now
it should be looking for YP_NOMORE. It should not be passing YP_NOMORE
back up to the caller though.)

Noticed by:  <aagero@aage.priv.no>

There is also another small bug here, which is that the call to
xdr_free() that happens immediately after the clnt_call() in yp_all()
clobbers the return status value. I've worked around this for now,
but I think the xdr_free() is actually bogus and should be removed.
I want to check some more before I do that though.
1996-03-19 19:27:03 +00:00
Bruce Evans
7041dd8c4b alarm -> ualarm. 1996-03-19 13:53:00 +00:00
Bruce Evans
cc0ea3465d Updated a type to match Lite2's fixed-width type changes.
Added $Id$.

Obtained from:	4.4BSD-Lite2
1996-03-19 13:44:57 +00:00
Guido van Rooij
d1b44182d0 Work around a bug in the Sun rpc code. This fixes a problem where
a machine with aliase ip addresses on the same subnet of an
interfaces' `real' ip addresses would generate <n> duplicate
broadcasts in clnt_broadcast().
Basically, this fix does a purge on the list of bradcast addresses.
1996-03-17 20:12:53 +00:00
Bill Paul
6daf17201b gethostbynis.c:
- Fix problem described in PR #1079: _gethostbynisaddr() doesn't
  work. Make it accept the same arguments as all the other
  gethostby*addr() functions and properly convert the supplied IP
  address into a text string so that yp_match() can find it in the
  hosts.byaddr map.

- Also fix potential memory leak: copy the results of yp_match() to
  a static buffer and free the result (yp_match() returns dynamically
  allocated memory).

ether_addr.c:

- Since I was in the neighborhood, fix ether_ntohost() and
  ether_hostton() so that they don't bogusly for a free(result)
  when yp_match() fails.
1996-03-16 21:25:59 +00:00
Jeffrey Hsu
4b10cdbc3d From Lite2: rename fs to vfs. 1996-03-11 03:08:51 +00:00
Jeffrey Hsu
782ff9b2f0 From Lite2: rename fs to vfs. 1996-03-11 03:06:45 +00:00
David Greenman
1821ce26bf Implemented negative caching on uid/gid lookup failures. This won't
matter much on some systems, but on ftp servers (like wcarchive) where
you run with special stripped group and pwd.db files in the anonymous
ftp /etc, this can be a major speedup for ls(1).
1996-03-05 13:11:42 +00:00
Peter Wemm
c55acb6213 Update the current sigaction(2) man page to current reality..
* sigstack(2) -> sigaltstack(2).
* Document the SA_NODEFER flag
* Document the SA_RESETHAND flag
1996-03-03 14:52:54 +00:00
Jordan K. Hubbard
1303222562 Close PR#218. Don't reference non-existant dbm(3) and ndbm(3) manual
pages.
1996-03-03 08:53:05 +00:00
Peter Wemm
6f0989b711 Update the docs after the rename of SA_DISABLE and SA_ONSTACK when used for
ss_flags to SS_DISABLE and SS_ONSTACK.  SA_ONSTACK is still used in
struct sigaction.  Nowhere in our entire source tree could I find a
single place these were used.
1996-03-02 20:24:12 +00:00
Peter Wemm
7e6ace8561 If the send() to the AF_UNIX socket to the syslogd fails, attempt to
reconnect once using the saved openlog() parameters.

This helps one of the system startup race conditions. If syslogd takes too
long to get going, some daemons can fail the connection and forever log
to the console even though the syslogd is running.  That is ..unfortunate..
1996-03-02 19:56:16 +00:00
Peter Wemm
39d11944d4 Document the int -> size_t change to the m* syscalls 1996-03-02 17:34:28 +00:00
Wolfram Schneider
a333649d00 Convert "time zone" to "timezone" in section NAME
Submitted by:	brien@cs.ucdavis.edu (David E. O'Brien)
1996-02-28 11:59:50 +00:00
Paul Traina
f1e396bc53 Fix conflicts and merge into mainline 1996-02-27 19:42:00 +00:00
Paul Traina
ef5d438ed4 Import updated Berkeley DB into CSRG branch 1996-02-27 01:59:15 +00:00
Paul Traina
1f70cace69 move stat behind open to cover corner case 1996-02-25 04:50:21 +00:00
Peter Wemm
9c8e90ad85 Add minherit.2 to Makefile.. (oops, forgot it before) 1996-02-24 15:32:12 +00:00
Peter Wemm
7350dd84a0 If the two recently added sysctl variables exist, use those rather than
the statically compiled PS_STRINGS and USRSTACK variables.  This prevents
programs using setproctitle from coredumping if the kernel VM is increased,
and stops libkvm users (w, ps, etc) from needing to be recompiled if only
the VM layout changes.
1996-02-24 14:37:30 +00:00
Peter Wemm
781006180d rfork/minherit glue in libc
man pages adapted from OpenBSD's versions.
1996-02-23 19:56:55 +00:00
Paul Traina
f0113fc0f7 If a .db file is 0 length, initialize it as if it did not exist.
Reviewed by:	wollman
1996-02-23 17:57:32 +00:00
Peter Wemm
574317c8f1 Add a dire warning about misusing the setlogin() system call. Be very
explicit that it is global to the entire "session", and that setsid() or
daemon() are need to have been called at some point.

The most notable offender of setlogin() misuse is XFree86's xdm.
1996-02-23 10:28:01 +00:00
Wolfram Schneider
4885b56627 man page links
fts_open.3 -> fts.3
fts_read.3 -> fts.3
fts_children.3 -> fts.3
fts_close.3 -> fts.3
1996-02-18 01:56:51 +00:00
Mike Pritchard
48194b7e82 Fix inet_network to not dump core if passed in an address
with more than 4 octets (e.g. 1.2.3.4.5).

Submitted by:	Amy Baron <amee@beer.org> via NetBSD-bugs
1996-02-17 21:11:36 +00:00
Peter Wemm
13295c7f99 Put in missing '_' in call to wrapper _thread_sys_sigsetmask() function. 1996-02-17 12:25:21 +00:00
John Polstra
7a6b3357af Corrected a couple of errors in the fts(3) manual page. The prototype
for "fts_open" was wrong.  Also, the "fts_info" field of the FTSENT
structure was misleadingly described as containing "flags".  Actually, it
contains a single integer value.
1996-02-15 21:48:54 +00:00
Mike Pritchard
e1f4e80c88 Fixed a bunch of man page cross references that were
in the main text of various man pages.

Thanks to Warner Losh for adding an option to manck to allow
it to scan the entire man page looking for bogus xrefs, instead
of just checking the SEE ALSO section.
1996-02-15 20:07:05 +00:00
Mike Pritchard
d428a98d6d Added a little NOTES section explaining that passing in a string that
resides in read-only memory is going to cause the program to core dump,
and this is commmon with older pre-ANSI C programs.

(I've scratched my head over this one at 3 in the morning before
while trying to port some ancient program)

Suggested by:	Gary Kline <kline@tera.com>
1996-02-15 05:02:16 +00:00
Garrett Wollman
cbc17e711e XNS sort-of-support is no more. 1996-02-13 17:30:37 +00:00
Mike Pritchard
5f6bedf2ac Correct the xref for msgctl: msgctl(2) -> msgctl(3) 1996-02-12 07:06:23 +00:00
Mike Pritchard
2375385da1 Added man pages for msgctl(3), msgget(3), msgrcv(3) and msgsnd(3).
Obtained from: NetBSD
1996-02-12 07:03:24 +00:00
Mike Pritchard
bcff8e2ae4 Another round of man page cleanups.
Down to only about 100 items left to cleanup! :-)
1996-02-12 04:57:03 +00:00
Mike Pritchard
3656c5f4df Added a update(4) man page to describe the kernel initiated update
process and changed all of the old references to update(8) to update(4).
1996-02-12 00:45:47 +00:00
Mike Pritchard
5a489ac2b8 Minor cleanup of the rpc man pages to silence manck. 1996-02-12 00:02:42 +00:00
Mike Pritchard
78b0b234eb Correct a bunch of man page cross references and generally
try and silence "manck".

ncurses, rpc, and some of the gnu stuff are still a big mess, however.
1996-02-11 22:38:05 +00:00
Mike Pritchard
c4c23c4df8 Another round of various man page cleanups. 1996-02-09 17:25:57 +00:00
Jordan K. Hubbard
a410855f63 Fixed docs/521. 1996-02-09 12:25:08 +00:00
Mike Pritchard
c211e812bb Added some missing MLINKS for section 3 man pages.
Also corrected a few minor formatting errors, file location and cross
references in some of the section 3 man pages.

This shuts up a lot of the output from "manck" for section 3.
1996-02-09 00:45:45 +00:00
Paul Traina
cfbf02b6ad Clean up documentation on setuid/setgid bit handling. 1996-02-08 19:06:06 +00:00
Garrett Wollman
0761cb293e Remove support for OSI networking in user-land (#ifdef OSI aor CCITT)
in preparation for its removal from the kernel source tree.  NB: because
a function was deleted, libc is now at version 3.0 (was 2.2 previously).
1996-02-06 20:36:15 +00:00
Bill Paul
9a8c0cebf4 Make sure xdr_ypresp_all_seq() always returns a sane 'status' value.
(There were cases where it was leaving the status uninitialized.)
1996-02-04 05:05:43 +00:00
Mike Pritchard
5ea43fd200 Add some missing manual page links. 1996-02-02 17:48:46 +00:00
Wolfram Schneider
8ed714cd80 Submitted by: bruce, davidg, dyson
add a BUG section for mmap with current limitation
section SYNOPSIS completed
1996-02-02 05:06:29 +00:00
Mike Pritchard
e2cc67ef3c Another round of spelling fixes. 1996-01-30 18:13:11 +00:00
Mike Pritchard
a5ed710ccd Fix even more spelling errors in some more man pages. 1996-01-30 16:34:52 +00:00
Mike Pritchard
70520b51b9 Getpwent() and getservent() can wind up calling free() with
an invalid pointer if a call to yp_first() fails.  Closes PR # 964,
and possibly # 952.
1996-01-29 20:16:30 +00:00
Nate Williams
c524c9334d Bring in the man page additions for PT_ATTACH/DETACH|GET/SET_REGS that
were deleted out after the initial import now that Peter's code has
implemented them in -current.
1996-01-24 20:17:17 +00:00
Wolfram Schneider
3f22919355 note in bugs section: madvise not yet implemented 1996-01-23 23:33:55 +00:00
Mike Pritchard
86cfd0dd41 Changed the description of SIGSYS to better reflect what
it means when that signal is received.  Closes PR# 686.
1996-01-22 12:31:15 +00:00
Julian Elischer
aaf0927a09 Obtained from: uthreads package 1996-01-22 00:32:08 +00:00
Julian Elischer
f70177e76e Reviewed by: julian and (hsu?)
Submitted by:	 John Birrel(L?)

changes for threadsafe operations
1996-01-22 00:02:33 +00:00
Nate Williams
ae5d6711ff - FreeBSD'ized the ptrace manpage by removing non-FreeBSD specific portions.
- install ptrace.2
1996-01-20 17:56:06 +00:00
Nate Williams
55b697783d This commit was generated by cvs2svn to compensate for changes in r13519,
which included commits to RCS files with non-trunk default branches.
1996-01-20 17:35:25 +00:00
Nate Williams
6f2c1e42c7 ptrace(2) manpage 1996-01-20 17:35:25 +00:00
Mike Pritchard
270d3d754a Fix a variety of minor typos and cross references in a bunch of
man pages.

Masanobu Saitoh <msaitoh@spa.is.uec.ac.jp>
Giles Lean <giles@nemeton.com.au>
<soda@sra.co.jp>
1996-01-20 07:29:11 +00:00
Jordan K. Hubbard
4fab558b60 Return pointer to new hash node when search inserts it (e.g. there
was some datum given).
1996-01-13 14:25:04 +00:00
Peter Wemm
4faad310d3 The last of the bind-4.9.3-REL resolver merges. 1996-01-13 09:03:58 +00:00
Mike Pritchard
b6607b59c8 Correct the strspn() man page so that it no longer references
itself as strcspn().

Obtained from:  NetBSD-bugs mailing list (PR# 1905)
1996-01-10 11:06:25 +00:00
Peter Wemm
ab83cd2d54 Merge the 4.9.3-rel code into the res_* parts. The gethostXXXbyYYY
parts are not quite so simple..
1996-01-07 09:15:02 +00:00
Peter Wemm
25ae517921 This commit was generated by cvs2svn to compensate for changes in r13304,
which included commits to RCS files with non-trunk default branches.
1996-01-07 06:57:27 +00:00
Peter Wemm
ffa065a6d4 Part of bind-4.9.3-rel.. This is for my convenience and reference.
This import to the vendor branch changes no files...
1996-01-07 06:57:27 +00:00
Poul-Henning Kamp
926cb56114 Fix a fencepost error.
Found by: Lars Fredriksen <fredriks@mcs.com>
1996-01-05 23:30:41 +00:00
Peter Wemm
01cc6d5ae0 Document the change that I made to pipe(2) 1996-01-01 15:40:31 +00:00
Peter Wemm
3b7e1cc80f Bump libutil revision after recent addition of setproctitle().
Install (optional) libutil.h with prototypes for the functions and
document this in the man page.

minor cleanups to the various routines, include the prototype file, declare
return codes etc.
1996-01-01 08:27:41 +00:00
Joerg Wunsch
7560bb26ff Finally complete my fix for the behaviour of getpass(3) upon receipt
of signals.  Signals are now properly caught, tty state is being
restored, and the previous sigaction triggered.  Upon receipt of a
sigcont, echo is turned off again.

SIGTSTP causes a buffer flush, the man page mentions this.  (Although
i rather think of it as a feature than a bug.)

This is likely to be my last FreeBSD action for 1995, xearth shows
me that our .au guys must already write 1996. :-)
1995-12-31 14:00:25 +00:00
Peter Wemm
6065a0be11 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
Peter Wemm
a5b996a7ec recording cvs-1.6 file death 1995-12-30 19:02:48 +00:00
Bruce Evans
bb369b53b2 Added $Id$. 1995-12-30 07:01:50 +00:00
Bruce Evans
912e603778 Implemented non-statistical kernel profiling. This is based on
looking at a high resolution clock for each of the following events:
function call, function return, interrupt entry, interrupt exit,
and interesting branches.  The differences between the times of
these events are added at appropriate places in a ordinary histogram
(as if very fast statistical profiling sampled the pc at those
places) so that ordinary gprof can be used to analyze the times.

gmon.h:
Histogram counters need to be 4 bytes for microsecond resolutions.
They will need to be larger for the 586 clock.
The comments were vax-centric and wrong even on vaxes.  Does anyone
disagree?

gprof4.c:
The standard gprof should support counters of all integral sizes
and the size of the counter should be in the gmon header.  This
hack will do until then.  (Use gprof4 -u to examine the results
of non-statistical profiling.)

config/*:
Non-statistical profiling is configured with `config -pp'.
`config -p' still gives ordinary profiling.

kgmon/*:
Non-statistical profiling is enabled with `kgmon -B'.  `kgmon -b'
still enables ordinary profiling (and distables non-statistical
profiling) if non-statistical profiling is configured.
1995-12-29 15:30:05 +00:00
Gary Palmer
b3d64ab72f Oops. I seem to have over-corrected with my last commit. It should be
right this time
1995-12-29 08:23:59 +00:00
Gary Palmer
d28b4295fd Correct what seem to me to be some mistakes in the references and
standards sections. Also add a missing `,' to each file.
1995-12-28 21:06:07 +00:00
Joerg Wunsch
5237ee4167 Don't block SIGINT in getpass(3); this doesn't make sense. 1995-12-27 23:23:00 +00:00
David Greenman
aacd7f348e Be smarter about handling overlapped copies and only go backwards if it
is really necessary. Going backwards on a P6 is much slower than forwards
and it's a little slower on a P5. Also moved the count mask and 'std'
down a few lines - it's a couple percent faster this way on a P5.
1995-12-27 18:47:45 +00:00
Peter Wemm
0050777196 Bring in an initial version of setproctitle().. This is intended to
replace the dozen other various hacks in the code that do all sorts
of crude things including spamming the envrionment strings with the new
argv string.

This version is mainly inspired by the sendmail version, with a couple of
ideas taken from the NetBSD implementation as well.
1995-12-26 22:50:08 +00:00
Bruce Evans
432889653c Added prototypes. 1995-12-26 13:25:13 +00:00
Poul-Henning Kamp
9100bbac3d Preallocate a small structure, so we can sbrk(2) further back.
Reviewed by:	phk
Submitted by:	Kaleb Keithly <kaleb@x.org>
1995-12-18 12:03:54 +00:00
Bill Paul
9d80b1dd94 Clean up a few things left dangling after the last commit. The new
XDR routines auto-generated by rpcgen don't quite match the format of
the original ones even though tey have the same names (that was one of
the things wrong with the old XDR routines).
1995-12-15 03:26:40 +00:00
Bill Paul
0e276383fa Now that rpcgen is squared away, arrange to have all the NIS XDR routines
rpcgen-erated on the fly (just like librpcsvc).

Makefile: Add rule for generating yp_xdr.c and yp.h.

xdryp.c: gut everything except the special ypresp_all XDR function
         needed to to handle yp_all() (this one can't be created on
         the fly), and xdr_datum(), which isn't used internally by
         libc, but which as documented as being there in yp_prot.h,
         so what the hell. We now get everything else from yp_xdr.c.

yplib.c: change a few structure member names to match those found in
         yp.h instead of those declared in yp_prot.h.
1995-12-14 05:16:45 +00:00
Peter Wemm
04936d2e08 Change phkmalloc so that the page directory is now floating and allocated
via mmap() up around the shared library area.  Previously the directory
was allocated from space from it's own memory pool.  Because of the way it
was being extended on processes with large malloced data segments (ie: inn)
once the page directory was extended for some reason, it was not possible
to lower the heap size any more to return pages to the OS.
(If my understanding is correct, page directory expansion occurs at 4MB,
12MB, 20MB, 28MB, etc.)  I was seeing INN allocate a large amount of short
term memory, pushing it over the 28MB mark, and once it's transient demands
hit 28MB, it never freed it's pages and swap space again.)

I've been running this in my libc for about a month...

Also, seperate MALLOC_STATS from EXTRA_SANITY..  I found it useful to call
malloc_dump() from within INN from a ctlinnd command to see where the hell
all the memory was going.. :-)  I've left MALLOC_STATS enabled, as it has
no run-time or data storage cost.

Reviewed by: phk
1995-12-11 14:28:12 +00:00
Bill Paul
baadb8c9e4 Fix minor annoyance: have clnt_perror(), clnt_perrno() and
clnt_pcreateerror() emit strings with newlines appended like other
platforms do.
1995-12-10 17:40:18 +00:00
David Greenman
0b7a315970 Include sys/time.h, not sys/user.h.
Submitted by:	"Marc G. Fournier" <scrappy@hub.org>
1995-12-08 08:47:41 +00:00
Bruce Evans
6bf4655faa Fixed type mismatches. 1995-12-07 12:50:56 +00:00
Bill Paul
de32dbbd5d Small tweak: don't try closing /etc/netgroup if we haven't opened it yet. 1995-12-02 21:54:59 +00:00
Bruce Evans
1d064c3b2d Restored [u]cmpdi2.c which are needed for switching on [unsigned] long
long values.
1995-12-01 09:38:35 +00:00
Bruce Evans
dce5165a30 Removed cmpdi2.c from ${SRCS}. I think it is no more needed than ucmpdi2.
Restored order in ${SRCS}.
1995-11-29 15:11:43 +00:00
Bill Paul
0f98415ed4 - Make _do_ypbind() check for /var/run/ypbind.lock and attempt to flock()
it before before trying to establish a binding. If /var/run/ypbind.lock
  doesn't exist, or if it exists and isn't locked, then ypbind isn't
  running, which means NIS is either turned off or hosed.

- Have _yp_check() call yp_unbind() after it sucessfully calls yp_bind()
  to make sure it frees resources correctly. (I don't think there's really
  a memory leak here, but it seems somehow wrong to call yp_bind() without
  making a corresponding call to yp_unbind() afterwards.)

This makes the NIS code behave a little better in cases where libc makes
calls to NIS, but it isn't running correctly (i.e. there's no ypbind).

This cleans up some strange libc behavior that manifests itself if
you have the system domain name set, but aren't actually running NIS.
In this event, the getrpcent(3) code could try to call into NIS and
cause several inexplicable "clnttcp_create error: RPC program not
registered" messages to appear. This happens because _yp_check() checks
if the system domain name is set and, if it is, proceeds to call
yp_bind() to attempt to establish a binding. Since there is no
binding file (remember: ypbind isn't running, so /var/yp/binding
will be empty), _yp_dobind() will attempt to contact ypbind to
prod it into binding the domain. And because ypbind isn't running,
the code generates the 'clnttcp_create' error. Ultimately the
_yp_check() fails and the getrpcent(3) code rolls over to the /etc/rpc
file, but the error messages are annoying, and the code should be
smart enough to forgo the binding attempt when NIS is turned off.
1995-11-05 05:39:04 +00:00
Bill Paul
215032be8c Add NIS support to getservent(3) functions (getservbyport() and getservbyname()
both call getservent() to do most of the work, so we only need to modify
this file to take care of everybody).

Note that there is only one NIS services map (services.byname) even
though there are getservbyname() and getservbyport() library functions.
1995-11-04 19:07:27 +00:00
Garrett Wollman
2f7778001d Document recent changes in socket buffers and listen(2). 1995-11-03 18:34:38 +00:00
Andrey A. Chernov
f9cbdf410e Move more stuff out to XPG4
Handle negative chars inside runetype/tolower/toupper
1995-11-03 08:59:02 +00:00
Poul-Henning Kamp
d12f212098 Add #include <sys/user.h>. 1995-10-28 16:14:18 +00:00
Adam David
5f0d67bea7 misc typos 1995-10-27 16:56:53 +00:00
Andrey A. Chernov
9f23763a01 Remove unneded ctype.h 1995-10-26 22:32:00 +00:00
Andrey A. Chernov
7f3f016d8c Fix it for chars with 8bit set 1995-10-23 20:49:58 +00:00
Andrey A. Chernov
34d08e870e Treat empty encoding as "C" encoding 1995-10-23 20:20:11 +00:00
Andrey A. Chernov
377da8e867 Optimize PathLocale handling.
Handle C/POSIX/"" properly.
Don't reset collate to C when it is unnecessary
1995-10-23 20:08:24 +00:00
Andrey A. Chernov
2d542a0868 Don't reset LC_TIME to C when it isn't neccessary 1995-10-23 19:52:43 +00:00
Andrey A. Chernov
24c9187962 Use fake (empty) startup_setlocale for XPG4 1995-10-23 02:25:53 +00:00
Andrey A. Chernov
9d45c3af90 Reduce static binaries bloat by splitting out normally unused
setinvalidrune()
1995-10-23 02:13:05 +00:00
Andrey A. Chernov
350a3d3e48 Migrate from XPG4 to XPG3 (libxpg4 will be added soon)
Remove big part of my startup_setlocale hack.
Add missing manpage links.
1995-10-23 01:34:17 +00:00
Bruce Evans
3b4058284e Fixed lint from cc -Wall.
Cleaned up includes.
1995-10-22 18:43:26 +00:00
Poul-Henning Kamp
29285d6cc5 minor cleanup, #includes. 1995-10-22 14:53:58 +00:00
Poul-Henning Kamp
88640ee125 Mino cleanup, #includes & unused vars. 1995-10-22 14:53:17 +00:00
Poul-Henning Kamp
c0d41487f2 Minor cleanup, #include's and unused vars.
Added compile-time warning to an old funky function.
1995-10-22 14:52:30 +00:00
Poul-Henning Kamp
4c3af266f6 Well, cvs commit core'ed on me, I belive I have got all the locks out,
but a commit mail got lost, it's the same as for this commit:

 lib/libc/gen  confstr.c crypt.c disklabel.c fstab.c getcap.c
          getgrent.c  getgrouplist.c getpass.c getpwent.c
          initgroups.c nlist.c  psignal.c pwcache.c setmode.c
          sleep.c sysconf.c sysctl.c  syslog.c usleep.c
 lib/libc/locale  none.c read_runemagi.c setlocale.c
 lib/libc/net  gethostbydns.c getnetbydns.c getnetbynis.c
 lib/libc/nls  msgcat.c
 lib/libc/quad  Makefile.inc
 lib/libc/regex  engine.c regcomp.c regerror.c

	Minor cleanup, mostly unused vars and missing #includes.
	Limit the number of quad functions we pull in for 'i386'.
	I still belive the quad stuff should go back into gcc.
	Add compile-time warnings about crypt functions.
1995-10-22 14:51:39 +00:00
Poul-Henning Kamp
f824233e9e Remove EXTRA_SANITY, fix a unused var. 1995-10-22 14:47:00 +00:00
Poul-Henning Kamp
16252f1166 More cleanup.
Uhm, I also forgot: I took "EXTRA_SANITY" out of malloc.c
1995-10-22 14:40:55 +00:00