Commit Graph

793 Commits

Author SHA1 Message Date
Mike Barcroft
c44a27673c Restore K&R prototype. Fix other style bugs.
Reviewed by:	asmodai, bde
2001-10-27 19:37:20 +00:00
Mark Murray
6fdd5473af Diff-reduce these two.
Really, one of them needs to disappear. I'll figure out which
later.

Reported by:	bde
2001-10-27 12:49:19 +00:00
Garrett Wollman
6811ccc9b3 Resume deorbit burn sequence for <malloc.h>. Inspection of my make logs
reveals no programs in the standard build which hit the previous warning
message.  This change will NOT be merged to 4-stable.
2001-10-25 02:35:29 +00:00
Jeroen Ruigrok van der Werven
8c825c1afd Add $FreeBSD$.
Change assert() macro to print failing function name.
Change K&R function prototype wrapper to ANSI prototype.
This makes us C99 conforming.
2001-10-24 18:10:37 +00:00
Bruce Evans
4546f9029c Fixed some style bugs:
- rev.1.6: corrupt tab before strlcpy.
- rev.1.7: "From: " in vendor id.
- rev.1.8: unsorted prototype for strccasestr.
2001-10-10 07:34:47 +00:00
Andrey A. Chernov
a7ad1caca8 Implement strcasestr() which many others (f.e. Linux) already have 2001-10-10 02:19:09 +00:00
Mike Barcroft
41036d782d Add a new libc function, strnstr(3), which allows one to limit the
number of characters that are searched.  This is especially useful
with file operations and non-NUL terminated strings.

Silence from:	-audit, -hackers
MFC after:	5 days
2001-10-09 01:29:56 +00:00
Bill Paul
e6f9ad0779 Add compatibility functions for the AF_LOCAL RPC transport stuff
that used to live in RPC 4.0. This is needed for yppasswd and
rpc.yppasswdd to work correctly. Patch supplied by Martin Blapp.
2001-10-04 21:03:17 +00:00
Bruce Evans
3e9c0bd52c Fixed order of includes. <sys/cdefs.h> must be included before
<machine/ansi.h> for the definition of __signed, unless the compiler
is gcc.

Moved the declaration of socklen_t up together with the declaration of
size_t, and removed low-quality comment about this declaration.  Declaring
socklen_t in this file is normal in POSIX-1.200x, unlike declaring size_t.
2001-10-04 10:34:30 +00:00
Bruce Evans
87bc118cfc Fixed some style bugs. 2001-10-04 07:39:14 +00:00
Bruce Evans
9b68c690f1 Fixed namespace pollution:
- only declare the application symbols specified in Posix.1-200x drafts,
  not everything in <sys/types.h> and <stddef.h>.
- don't use the application symbol 'm' for an arg name.
2001-10-04 07:37:57 +00:00
David E. O'Brien
6d14a7bf04 Back out WIP that snuck in with revs 1.15[23]. 2001-10-01 21:09:21 +00:00
David E. O'Brien
3f289a0678 Merge style with NetBSD -- ANSI-C prototypes, style(9) tabing, etc. 2001-10-01 21:07:33 +00:00
David E. O'Brien
002a632d81 Merge functional changes from NetBSD. 2001-10-01 21:06:25 +00:00
David E. O'Brien
757eeda04b *** empty log message *** 2001-10-01 08:43:58 +00:00
David E. O'Brien
c937411511 RFC2349 (http://www.hypermail.org/rfcs/rfc2349.html) adds support
for negotiation of timeout and file size to the tftp protocol.  This
is required by some firmware like EFI boot managers (at least on
HP i2000 Itanium servers) in order to boot an image using tftp.  The
attached patch implements the RFC, and in doing so also implements
RFC2347; a generic tftp option extension.

PR:		30710
Submitted by:	Espen Skoglund <esk@ira.uka.de>
2001-09-27 20:50:14 +00:00
Robert Watson
7c80f09bae o Update unistd.h with the prototype for the new eaccess(2) system call.
Obtained from:	TrustedBSD Project
2001-09-21 22:50:39 +00:00
Peter Wemm
d02cf26a56 Now that the compat4x libc.so.4 binary has been updated, we can finally
switch over to using a future-proof stdin/out/err.

Note that if you run 4.x binaries on your system, you will certainly
want to update /usr/lib/compat/libc.so.4.  The easiest way is to
add "COMPAT4X= yes" in your /etc/make.conf.
2001-09-20 08:47:41 +00:00
Peter Wemm
9119623471 Userland part of nfs client/server split and cleanup. 2001-09-18 23:34:44 +00:00
Peter Wemm
c7a6361316 Stop gcc's fixincludes making an exception for this file 2001-09-10 01:15:48 +00:00
Ruslan Ermilov
8203d6510c Sort FILES. 2001-09-06 07:27:03 +00:00
Alexey Zelkin
cc30da9d14 add monetary.h as per POSIX requirement 2001-09-05 18:50:56 +00:00
David E. O'Brien
1792335469 style(9) the structure definitions. 2001-09-05 01:36:46 +00:00
Mike Barcroft
9f5709b101 Revert previous delta; <arpa/inet.h> isn't quite ready to stop including
<sys/types.h>.
2001-08-31 03:29:48 +00:00
Mike Barcroft
c3ab2e6bc0 o Deprecate byteorder(3) prototypes from <sys/types.h>, these are
now prototyped indirectly in <arpa/inet.h>.
o Deprecate in_addr_t and in_port_t typedefs in <sys/types.h>, these
  are now typedef'd in <arpa/inet.h>.

Discussed with:	bde
PR:		29946
2001-08-31 03:12:01 +00:00
Dima Dorfman
e6063dd1a6 Implement getpeereid(3), a front-end to the LOCAL_PEERCRED
socket option for the Unix domain.  It's weaker than the
socket option (this only returns the uid and gid, while the
socket opt. can return the entire group list), and is
implemented mostly for compatibility with OpenBSD.
2001-08-17 22:09:15 +00:00
Peter Wemm
2b618987fe Rip out the old __stdin/out/err stuff. It was completely 100% useless. :-(
It was foiled because of dynamic copy relocations that caused compile-time
space to be reserved in .bss and at run time a blob of data was copied to
that space and everything used the .bss version..  The problem is that
the space is reserved at compile time, not runtime... So we *still* could
not change the size of FILE.  Sigh.  :-(

Replace it with something that does actually work and really does let us
make 'FILE' extendable.  It also happens to be the same as Linux does in
glibc, but has the slight cost of a pointer.  Note that this is the
same cost that 'fp = fopen(), fprintf(fp, ...); fclose(fp);' has.
Fortunately, actual references to stdin/out/err are not all that common
since we have implicit stdin/out/err-using versions of functions
(printf() vs. fprintf()).
2001-08-13 21:48:44 +00:00
Ruslan Ermilov
8af1452cf8 Removed duplicate VCS ID tags, as per style(9). 2001-08-13 14:06:34 +00:00
Jeroen Ruigrok van der Werven
a75b8f47d1 Remove comment, which didn't even help anyway.
Submitted by:	bde, long ago
2001-08-13 13:29:29 +00:00
Warner Losh
e54b5dd9ff Make the name parameter const char *. 2001-08-11 05:16:00 +00:00
Mike Heffner
75dc5f1a82 Rename the GLOB_MAXPATH flag of glob(3) to GLOB_LIMIT to be compatible
with NetBSD and OpenBSD. glob(3) will now return GLOB_NOSPACE with
errno set to 0 instead of GLOB_LIMIT when we match more than `gl_matchc'
patterns. GLOB_MAXPATH has been left as an alias of GLOB_LIMIT to
maintain backwards compatibility.

Reviewed by:	sheldonh, assar
Obtained from:	NetBSD/OpenBSD
2001-07-29 00:52:37 +00:00
Mike Barcroft
e5c24b8ebc Remove namespace pollution.
PR:		14327
Reviewed by:	des
Approved by:	des
MFC after:	7 days
2001-07-22 18:10:08 +00:00
Jason Evans
aa33517e94 Implement pthread_attr_[gs]etguardsize(). Non-default-size stacks used to
be malloc()ed, but they are now allocated using mmap(), just as the
default-size stacks are.  A separate cache of stacks is kept for
non-default-size stacks.

Collaboration with:	deischen
2001-07-20 04:23:11 +00:00
David E. O'Brien
115fef5637 VCS ID fixup 2001-07-10 17:50:46 +00:00
Ian Dowse
32de72d27f Add a new clnt_control() request `CLSET_CONNECT' that controls
whether or not connect(2) is used for UDP client sockets. The default
is not to connect(), so existing clients will see no change in
behaviour.

The use of connect(2) for UDP clients has a number of advantages:
only replies from the intended address are received, and ICMP errors
pertaining to the connection are reported back to the application.
2001-06-23 19:43:21 +00:00
Garrett Wollman
37336173d3 After one too many PRs on the subject, bite the bullet and define IOV_MAX
and its associated constants.  Implement _SC_IOV_MAX in the usual way.
Be a bit sloppy about the namespace question; this should get cleared up
in time for 5.0.

MFC after:	1 month
2001-06-18 20:24:54 +00:00
Peter Wemm
766ea92b74 Revise wording of osreldate.h vs kernel warning to make it clear that it
is a userland-only header.
2001-06-17 01:20:25 +00:00
Ruslan Ermilov
d28011e556 Added skeleton <complex.h> (aligned with the POSIX.1-200x), mostly
to fix the "-nostdinc WARNS=X" breakage caused by broken prototypes
for cabs() and cabsl() in <math.h>.

Reimplemented cabs() and cabsl() using new complex numbers types and
moved prototypes from <math.h> to <complex.h>.
2001-06-13 15:16:30 +00:00
Ruslan Ermilov
589ee357a4 Complete prototype for fts_compar. 2001-06-13 14:59:57 +00:00
Hajimu UMEMOTO
ce6282db3b Implement EDNS0 support, as EDNS0 support will be made mandatory for
IPv6 transport-ready resolvers/DNS servers.  Need careful configuration
when enable it. (default config is not affected).
See manpage for details.

XXX visible symbol __res_opt() is added, however, it is not supposed to be
called from outside, libc minor is not bumped.

Obtained from:	KAME/NetBSD
2001-06-10 20:25:24 +00:00
David E. O'Brien
fdd4e11d31 Update copyright. 2001-06-09 05:22:31 +00:00
Jonathan Lemon
86663b4425 Fix previous commit which inadverdently deleted a section. 2001-06-07 05:04:53 +00:00
Jonathan Lemon
88d74af548 Relocate IPFilter from sys/netinet to sys/contrib/ipfilter. 2001-06-07 04:06:21 +00:00
Joerg Wunsch
4dd07260ca Round #2 of the sys/isa/ic/ => sys/dev/ic/ move: install sys/dev/ic
as /usr/include/dev/ic.
2001-06-04 21:15:05 +00:00
Poul-Henning Kamp
c3154730b9 Remove MFS. 2001-05-29 20:26:51 +00:00
Robert Nordier
0f639cc8b0 Drop nested __P(). This trips up Supelec's dcc. 2001-05-27 19:57:36 +00:00
Ruslan Ermilov
8a8402d3a5 - sys/n[tw]fs moved to sys/fs/n[tw]fs
- /usr/include/n[tw]fs moved to /usr/include/fs/n[tw]fs
2001-05-26 11:57:45 +00:00
David E. O'Brien
f2e34a452a Include elf32.h and elf64.h to be more code compatable with Solaris. 2001-05-25 21:46:22 +00:00
Ruslan Ermilov
1166fb516b - sys/msdosfs moved to sys/fs/msdosfs
- msdos.ko renamed to msdosfs.ko
- /usr/include/msdosfs moved to /usr/include/fs/msdosfs
2001-05-25 08:14:14 +00:00
David E. O'Brien
640f0e5d3c Back out rev 1.4 (wint_t and mbstate_t) as I am tired of the complaints.
The STLport will probably become broken again, but I'll work on fixing it
later.

I wish someone would explain why the NetBSD Cirtus branch has the types
in their stddef.h...

Requested by:	bde, ru
PR:		27606
Submitted by:	Naohiko Tsuji <yakisoba@f2.dion.ne.jp>
2001-05-24 19:29:15 +00:00
Ruslan Ermilov
c260831833 Backout (almost) revision 1.137 changes.
Removal of LSYMSUBDIRS was a regression.

The purpose of LSYMSUBDIRS is to export only those /sys headers in the
SHARED=symlinks case that are also visible in the SHARED=copies case.

Requested by:	bde
2001-05-23 16:49:02 +00:00
Ruslan Ermilov
6949472556 Argh, unbreak SHARED=copied case. 2001-05-23 15:28:53 +00:00
Ruslan Ermilov
99d300a1ec - FDESC, FIFO, NULL, PORTAL, PROC, UMAP and UNION file
systems were repo-copied from sys/miscfs to sys/fs.

- Renamed the following file systems and their modules:
  fdesc -> fdescfs, portal -> portalfs, union -> unionfs.

- Renamed corresponding kernel options:
  FDESC -> FDESCFS, PORTAL -> PORTALFS, UNION -> UNIONFS.

- Install header files for the above file systems.

- Removed bogus -I${.CURDIR}/../../sys CFLAGS from userland
  Makefiles.
2001-05-23 09:42:29 +00:00
Ruslan Ermilov
7ec00975de Get rid of LSYMSUBDIRS by merely setting up symlinks to LNOHEADERDIRS. 2001-05-21 12:37:04 +00:00
Brian Somers
4be854757b Back out previous commit. digiio.h has moved to /usr/include/sys 2001-05-19 09:29:12 +00:00
David E. O'Brien
ada3b4c366 Add mbstate_t and wint_t. 2001-05-18 05:50:26 +00:00
Brian Somers
cf7134be6c Install /sys/dev/digi/digiio.h as /usr/include/dev/digi/digiio.h
I use the (new) DEVFILES variable rather than LSUBDIRS because
only the public interface (digiio.h) should be installed.
2001-05-17 01:42:34 +00:00
Ruslan Ermilov
c424b7d0c6 Install wchar.h and wctype.h.
Forgotten by:	tshiozak
2001-05-16 11:38:18 +00:00
Dima Dorfman
cd18ccdc30 Introduce getprogname(3) and setprogname(3) library calls. These get
and set __progname, respectively.

Discussed on:	-arch (Feb 2001), -audit
Reviewed by:	-audit
Approved by:	kris
Obtained from:	(mostly) NetBSD
2001-05-15 23:41:01 +00:00
Takuya SHIOZAKI
f3de575bc4 adapt to FreeBSD.
- add #define NULL 0 instead of sys/null.h.
- enable locale-insensitive functions:
	wcscat.c wcschr.c wcscmp.c wcscpy.c wcscspn.c wcslcat.c wcslcpy.c
        wcslen.c wcsncat.c wcsncmp.c wcsncpy.c wcspbrk.c wcsrchr.c wcsspn.c
	wcsstr.c wmemchr.c wmemcmp.c wmemcpy.c wmemmove.c wmemset.c
- disable some locale-sensitive functions defined in wchar.h temporarily:
	mbrlen mbrtowc mbsinit mbsrtowcs wcrtomb wcsrtombs wcwidth wcswidth
- disable all functions defined in wctype.h temporarily:
	is* tow*
2001-05-15 20:28:48 +00:00
Takuya SHIOZAKI
95a4049a9f initial import of wchar.h and wctype.h
Obtained from:	NetBSD and Citrus XPG4DL
2001-05-15 19:35:57 +00:00
David E. O'Brien
385789f562 Add elf.h header back, its existance is an SVR4-ELF tradition.
Our ELF hints bits are still a seperate file.

Requested by:	jdp
2001-05-06 16:39:57 +00:00
David E. O'Brien
5dc0b7cdd3 Add this header back, its existance is an SVR4-ELF tradition.
Our ELF hints bits are still a seperate file.

Requested by:	jdp
2001-05-05 19:40:26 +00:00
David E. O'Brien
5e6220d9d0 * include/elf.h has been repo copied to include/elf-hints.h, and it no
longer includes machine/elf.h.
* consumers of elf.h now use the minimalist elf header possible.

This change is motivated by Binutils 2.11.0 and too much clashing over
our base elf headers and the Binutils elf headers.
2001-05-02 23:56:21 +00:00
Andrey A. Chernov
99596f82de Move sranddev() to !ANSI_SOURCE !POSIX_SOURCE section
Pointed out by: bde
2001-04-23 09:32:06 +00:00
Andrey A. Chernov
cb541d8f97 Add sranddev() prototype 2001-04-23 02:29:51 +00:00
David E. O'Brien
ea88c01d6e Style(9) fixes:
* get rid of space (0x20) before tab (^I)
* indent with ^I, not 0x20
* continuation line for prototypes is for 0x20's past function's name col.
* etc.
2001-04-22 01:56:09 +00:00
Alfred Perlstein
603c86672c Implement client side NFS locks.
Obtained from: BSD/os
Import Ok'd by: mckusick, jkh, motd on builder.freebsd.org
2001-04-17 20:45:23 +00:00
Kris Kennaway
2b77cdeac1 I think this was supposed to be __const like in NetBSD: I have no idea
why I changed it to const.

Noticed by:	David Wolfskill <david@catwhisker.org>
2001-04-17 18:16:46 +00:00
Kris Kennaway
3d09054934 Add fmtcheck(), a function for checking consistency of format string
arguments where the format string is obtained from user data, or
otherwise difficult to verify statically.

Example usage:

printf(fmtcheck(user_format, standard_format), arg1, arg2);

checks the format string user_format for consistency (same number/order/
type of format operators) with standard_format.  If they differ,
standard_format is used instead to avoid potential crashes or security
violations.

Obtained from:  NetBSD
Reviewed by:    -arch
2001-04-17 07:59:52 +00:00
Boris Popov
6c9f45bdde Actually install include/fs/smbfs and include/netsmb directories. 2001-04-11 09:00:09 +00:00
Poul-Henning Kamp
5b32a38a1a It's not CUT (the french would accept that back in 1879) and TUC wasn't
palatable to the rest of the world.  UTC was the compromise.

PR:		26238
Submitted by:	Ying-Chieh Liao <ijliao@terry.dragon2.net>
2001-03-31 07:24:35 +00:00
Bill Paul
65d3c627a5 Add a CLSET_ASYNC command, which allows us to (ab)use the clnt_dg transport
to make asynchronous RPCs. This is needed to help fix ypbind, which can no
longer override the clnt_dg_call() method (formerly the clntudp_call()
method) due to all the internal descriptor locking code in TI-RPC. Turning
on this flag allows us to send an RPC request, then return immediately,
and handle a reply later, rather than being forced to do the request
and reply in a single function call.

Also fix a byte ordering bug: when clnt_dg_call() increments the XID
prior to transmitting a request, it uses the raw value, which is wrong.
The XID is stored in network byte order, i.e. big-endian. The CLSET_XID
and CLGET_XID commands in clnt_dg_control() use ntohl()/htonl() to get
the byte ordering right, but because clnt_dg_call() does not do this,
using CLSET_XID/CLGET_XID doesn't actually work, unless you're on a
big endian host, which we aren't (yet). Fix clnt_dg_call() to byte swap
properly when doing the increment.
2001-03-27 21:27:33 +00:00
Alfred Perlstein
8f15078110 give the "netgrent" functions a home in netdb.h 2001-03-27 09:49:03 +00:00
Alfred Perlstein
40c10ffdbd const'ify 2001-03-27 09:43:09 +00:00
Alfred Perlstein
1e799f5341 fix: text following `#else' violates ANSI standard
Pointed out by: ${BDECFLAGS}
2001-03-26 00:35:23 +00:00
Hajimu UMEMOTO
2da24fa6e9 IPv4 address is not unsigned int. This change introduces in_addr_t.
PR:		9982
Adviced by:	des
Reviewed by:	-alpha and -net (no objection)
Obtained from:	OpenBSD
2001-03-23 18:59:31 +00:00
Alfred Perlstein
cc74aaddad change callrpc() from taking "char *" args, I'm quite sure they really meant
to use "void *".

remove a duplicate prototype for callrpc() from libexec/ypxfr/ypxfr_extern.h
2001-03-23 16:14:49 +00:00
Alfred Perlstein
922ed94923 forgot prototyle for __rpc_get_local_uid() 2001-03-22 18:44:57 +00:00
Alfred Perlstein
87800257b0 Unbreak LINT.
because rpcb_clnt.h is generated during buildworld and only installed into
/usr/include/rpc (and not present in src/include/rpc) we can fix it
by simply not including it when _KERNEL is defined.

this isn't the most elegant, way and might deserve some revisiting later.

Pointed out by: bde
2001-03-20 10:27:03 +00:00
Alfred Perlstein
edea2cc391 The TI-RPC spammed over a '#ifdef _KERNEL' hack for the xdrproc_t typedef
revert the spammage

Pointed out by: bde
2001-03-20 08:26:22 +00:00
Alfred Perlstein
3e86de8d2c comment out #pragma directive containing Sun SCM tags 2001-03-20 08:20:50 +00:00
Alfred Perlstein
f91b492ae4 Add missing comma when KERBEROS is defined. 2001-03-19 19:36:11 +00:00
Jonathan Lemon
bae8632f82 Introduce the GLOB_MAXPATH flag, which allows the user to limit the
number of paths which glob(3) will return.  Remove the hardcoded limit
from the last commit, which restores the previous unbounded behavior.

Document the new flag in the manual page.
2001-03-19 19:10:06 +00:00
Alfred Perlstein
8360efbd6c Bring in a hybrid of SunSoft's transport-independent RPC (TI-RPC) and
associated changes that had to happen to make this possible as well as
bugs fixed along the way.

  Bring in required TLI library routines to support this.

  Since we don't support TLI we've essentially copied what NetBSD
  has done, adding a thin layer to emulate direct the TLI calls
  into BSD socket calls.

  This is mostly from Sun's tirpc release that was made in 1994,
  however some fixes were backported from the 1999 release (supposedly
  only made available after this porting effort was underway).

  The submitter has agreed to continue on and bring us up to the
  1999 release.

  Several key features are introduced with this update:
    Client calls are thread safe. (1999 code has server side thread
    safe)
    Updated, a more modern interface.

  Many userland updates were done to bring the code up to par with
  the recent RPC API.

  There is an update to the pthreads library, a function
  pthread_main_np() was added to emulate a function of Sun's threads
  library.

  While we're at it, bring in NetBSD's lockd, it's been far too
  long of a wait.

  New rpcbind(8) replaces portmap(8) (supporting communication over
  an authenticated Unix-domain socket, and by default only allowing
  set and unset requests over that channel). It's much more secure
  than the old portmapper.

  Umount(8), mountd(8), mount_nfs(8), nfsd(8) have also been upgraded
  to support TI-RPC and to support IPV6.

  Umount(8) is also fixed to unmount pathnames longer than 80 chars,
  which are currently truncated by the Kernel statfs structure.

Submitted by: Martin Blapp <mb@imp.ch>
Manpage review: ru
Secure RPC implemented by: wpaul
2001-03-19 12:50:13 +00:00
Andrey A. Chernov
8957c348ee Add D_MD_ORDER (local extension) to get month/day order from locale 2001-03-19 11:53:34 +00:00
Hajimu UMEMOTO
69b58b037c Nuke non-standard EAI_RESNULL. 2001-03-17 14:25:23 +00:00
David E. O'Brien
8454c72c24 Move _PATH_DEFTAPE to <paths.h> to remove all the duplication of definitons,
and remove leading `r'(aw) from it.
2001-03-08 09:04:40 +00:00
Alfred Perlstein
86e03b89bb mark pthread_exit() as non-returning.
Requested by: Farooq Mela <fmela0@sm.socccd.cc.ca.us>
2001-03-04 22:17:52 +00:00
Daniel Eischen
45d8008748 Hide the definition of struct __sFILEX and add the needed
lock definitions to it.  flockfile state is now allocated
along with the rest of FILE.  This eliminates the need for a
separate allocation of flockfile state as well as eliminating
the mutex/lock used to serialize its allocation.
2001-03-01 05:22:14 +00:00
David E. O'Brien
4c0440cb86 Impliment the ISO-C99 strto[u]ll()
and rewrite strto[u]q() in terms of it.
2001-02-27 13:33:07 +00:00
Hajimu UMEMOTO
928268064f Enable AI_ADDRCONFIG as a valid flag of getaddrinfo(3). Some
applications specify AI_ADDRCONFIG and fail to run under FreeBSD.
Latest mews is known.  Now, getaddrinfo(3) behaves according to
AI_ADDRCONFIG.
2001-02-19 13:13:51 +00:00
Peter Wemm
44cde775ae Be extra certain that "#include <osreldate.h>" must not be used in
kernel code.
2001-02-18 20:44:06 +00:00
Warner Losh
91e1be28dc Fix the current libc breakage in current:
o Back out the __std* stuff.  Can't figure out how to do this right now,
  so we'll save it for late.
o use _up as a pointer for extra fields that we need to access.
o back out the libc major version bump.

Submitted by: green
reviewed by: peter, imp, green, obrien (to varying degrees).

We'll fix the "how do we stop encoding sizeof(FILE) in binaries" part
later.
2001-02-16 06:11:22 +00:00
Hajimu UMEMOTO
ad9fdc8f4d Correct 2nd argument of getnameinfo(3) to socklen_t.
Reviewed by:	itojun
2001-02-15 10:35:55 +00:00
Peter Wemm
ff9dc074b5 Commit a libc fix going by the current state of the version numbering
bikeshed in -arch.  It isn't quite over, but it has been well established
that this can be adjusted or refined.  But we do seem to have consensis
on a major bump of some sort.  After this, it should reasonably safe
to build world again.

This change is to get rid of __sF[] and use seperate __stdin/out/err
handles.  This means we can pad on extra bits onto the end of FILE
at will without going through this all over again.  __sF[] was evil
because it compiled the sizeof(FILE) into every stdio using program.

Asbestos suit on: check!
Peril sensitive sunglasses on: check!
*gulp!*
2001-02-14 05:00:20 +00:00
Peter Wemm
56f98998e9 It sounded like a good idea at the time. The previous change breaks
FILE *buffer = stdout;
so back it out for now.
2001-02-12 03:31:23 +00:00
Peter Wemm
9b8ff47f40 Take advantage of the current libc sizeof(FILE) breakage (__sF[]) and
try a hopefully more robust stdin/stdout/stderr.  This costs an indirect
pointer fetch, but saves us from changes in 'FILE'.  The __stdin stuff
is there to not pollute application name space if the application does
not use <stdio.h> and also in case something depended on the current
behavior where stdin etc was a #define.

Reviewed by:	eischen, dillon
2001-02-12 02:50:30 +00:00
Daniel Eischen
5b62961a49 libc MT-safety, part 2.
Add a lock to FILE and define an additional flag.
2001-02-11 22:04:18 +00:00
Alexey Zelkin
2eeaef6eea add langinfo.h 2001-02-08 17:14:28 +00:00
Alexey Zelkin
60e1d74ff8 Add SUSv2 compatible nl_langinfo() function. It still need some work, but
this is already usable one.
2001-02-08 17:12:03 +00:00
Jeroen Ruigrok van der Werven
5728844663 Fix some nits:
- whitespace: incorrect usage of tab or space
	- removal of comments which served either no purpose or were
	  misleading

Submitted by:	bde [a while ago]
2001-02-06 23:39:06 +00:00
Jeroen Ruigrok van der Werven
a3573c6679 Fix typo: compatability -> compatibility.
Compatability is not an existing english word.

Add $FreeBSD$.
2001-02-06 12:04:54 +00:00
Jeroen Ruigrok van der Werven
9a01d32bfd Fix typo: seperate -> separate.
Seperate does not exist in the english language.

Submitted to look at by:	kris
2001-02-06 10:39:38 +00:00
Bruce Evans
8d6ca77c4c Declare strunvisx(). 2001-02-06 01:15:32 +00:00
Daniel Eischen
f9447cd112 Add a lock to DIR to make telldir and friends MT-safe.
Clean up stdio.h a bit and remove _THREAD_SAFE.  Some of the
usual macros getc, putc, getchar, putchar are no longer macros.

Approved by:	-arch
2001-01-24 13:01:47 +00:00
Peter Wemm
0b06558520 Move MD <machine/if_wavelan_ieee.h> to MI <dev/wi/if_wavelan_ieee.h> 2001-01-09 00:50:45 +00:00
Sheldon Hearn
3e27dc3164 Remove struct.h, which has been punted into the Attic. 2001-01-03 12:35:39 +00:00
Poul-Henning Kamp
4d25a384ce Finally put this mistake to rest. 2001-01-03 10:04:45 +00:00
Daniel Eischen
5bbc321312 Change prototype to getlogin_r to reflect recent change to its
implementation (conformance to '96 POSIX standard).
2001-01-01 13:35:04 +00:00
Poul-Henning Kamp
fabacd3a11 Use TAILQ instead of CIRCLEQ. 2000-12-29 20:25:01 +00:00
Jason Evans
d57caa9b95 Remove prototypes for pthread_attr_[gs]etfloatstate(), which we don't
implement.
2000-12-28 18:46:21 +00:00
Daniel Eischen
10d1cba0bf Move telldir position recording type definitions and prototypes
to "telldir.h" in order to prevent namespace pollution in
<dirent.h> (which was including <sys/queue.h>).

Add $FreeBSD$ to rewinddir.c and seekdir.c.
2000-12-11 04:00:36 +00:00
David E. O'Brien
1a37aa566b Add `_PATH_DEVZERO'.
Use _PATH_* where where possible.
2000-12-09 09:35:55 +00:00
Daniel Eischen
9b8551d0a5 Add a LIST_HEAD to DIR for a queue of telldir positions.
Also add a location count (used as the magic for telldir)
to DIR.  A future change will also add a mutex/lock.
2000-12-06 03:14:28 +00:00
Poul-Henning Kamp
82e078d8f9 Make <struct.h> #error instead of #warn that it is going away on jan 1st. 2000-12-01 22:15:56 +00:00
Alfred Perlstein
702665c754 remove unneeded sys/ucred.h include 2000-11-30 18:33:02 +00:00
Jeroen Ruigrok van der Werven
e5c020bf4f Fix stdbool.h to actually work as advertised.
PR:		22936
Submitted by:	Donald J. Maddox <Donald.J.Maddox@cae88-102-101.sc.rr.com>
		bde
2000-11-29 14:41:00 +00:00
Poul-Henning Kamp
798c1fd885 Make it possible to override the function which writes messages to
stderr in case of warnings and errors.

Rename malloc_options to have a leading underscore, I belive I have been
told that is more correct namespace wise.
2000-11-26 10:30:18 +00:00
Poul-Henning Kamp
46aa3347cb Convert all users of fldoff() to offsetof(). fldoff() is bad
because it only takes a struct tag which makes it impossible to
use unions, typedefs etc.

Define __offsetof() in <machine/ansi.h>

Define offsetof() in terms of __offsetof() in <stddef.h> and <sys/types.h>

Remove myriad of local offsetof() definitions.

Remove includes of <stddef.h> in kernel code.

NB: Kernelcode should *never* include from /usr/include !

Make <sys/queue.h> include <machine/ansi.h> to avoid polluting the API.

Deprecate <struct.h> with a warning.  The warning turns into an error on
01-12-2000 and the file gets removed entirely on 01-01-2001.

Paritials reviews by:   various.
Significant brucifications by:  bde
2000-10-27 11:45:49 +00:00
Brian Somers
ebe53e9e4e Add netnatm to LDIRS
Submitted by:	Makoto MATSUSHITA <matusita@jp.FreeBSD.org>
2000-10-16 07:00:18 +00:00
David Malone
fc39509245 Cleanup of bitstring.h:
1) Add FreeBSD: tag.
2) Add parenthesis around macro args.
3) Add parenthesis around macros which are expressions.
4) Add do { ... } while (0) around macros which are compound statements.
5) Sync bitstr_size and bit_alloc with neater versions from NetBSD.
6) Fix bit_ffs and bit_ffc so that they don't search off the end of the
	bitstirng.
7) Try to avoid rightshifting signed ints.

I didn't take NetBSD's version directly as the macros are significantly
slower for long bitstrings. Bruce reviewed a previous version of
this patch.

PR:		21204
Submitted by:	bob@immure.com
Reviewed by:	bde
2000-10-09 12:34:51 +00:00
John Polstra
362a3eadeb Add a definition for RTLD_DEFAULT. 2000-09-19 04:24:50 +00:00
John Polstra
0824e46a71 Update the prototype for "r_brk" to correspond with the change in
"src/libexec/rtld-elf/rtld.c" revision 1.48.  This eliminates a
warning when building the dynamic linker, and it doesn't seem to
hurt anything else.
2000-09-18 20:40:32 +00:00
Jeroen Ruigrok van der Werven
8cf0402e5d Welcome stdbool.h. A header file from the ANSI C99 specification.
It defines the boolean values.
2000-09-16 07:28:44 +00:00
Andrey A. Chernov
40a9e71856 Use MTREE_FOLLOWS_SYMLINKS option
This is part of whole subsystem fixing

Reviewed by:	imp
2000-09-15 08:08:04 +00:00
Ruslan Ermilov
3e8d5c239e There is no reason to clobber ${DESTDIR}/usr/include/{isofs,ufs,dev}
in SHARED=copies case since all symbolic links previously created by
SHARED=symlinks install have already been removed to that point.

PR:		misc/21150
2000-09-14 12:12:23 +00:00
Peter Wemm
9bb715b7fd I have not tested this to completion yet, but this appears to fix world.
Add nsswitch.h to the list of includes installed.
2000-09-07 00:10:02 +00:00
Jacques Vidrine
248aee623c Add nsswitch support. By creating an /etc/nsswitch.conf file, you can
configure FreeBSD so that various databases such as passwd and group can be
looked up using flat files, NIS, or Hesiod.

= Hesiod has been added to libc (see hesiod(3)).

= A library routine for parsing nsswitch.conf and invoking callback
  functions as specified has been added to libc (see nsdispatch(3)).

= The following C library functions have been modified to use nsdispatch:
    . getgrent, getgrnam, getgrgid
    . getpwent, getpwnam, getpwuid
    . getusershell
    . getaddrinfo
    . gethostbyname, gethostbyname2, gethostbyaddr
    . getnetbyname, getnetbyaddr
    . getipnodebyname, getipnodebyaddr, getnodebyname, getnodebyaddr

= host.conf has been removed from src/etc.  rc.network has been modified
  to warn that host.conf is no longer used at boot time.  In addition, if
  there is a host.conf but no nsswitch.conf, the latter is created at boot
  time from the former.

Obtained from:	NetBSD
2000-09-06 18:16:48 +00:00
Brian Somers
9feac5c218 Move setproctitle() from libutil to libc (after a repo-copy)
and bump __FreeBSD_version to 500012 to mark the occasion.

setproctitle() is prototyped in unistd.h as opposed to stdlib.h
where OpenBSD and NetBSD have it.

Reviewed by: peter
2000-09-02 01:51:36 +00:00
Dag-Erling Smørgrav
1250db8139 Import XPG4-compliant basename(3) and dirname(3) from OpenBSD.
The man pages need some adjustments.

PR:		12960, 12962
Submitted by:	James Howard <howardjp@wam.umd.edu>
Obtained from:	OpenBSD
2000-08-31 15:56:15 +00:00
Brian Feldman
04c9749ff0 Add working and easy crypt(3)-switching. Yes, we need a whole new API
for crypt(3) by now.  In any case:

Add crypt_set_format(3) + documentation to -lcrypt.
Add login_setcryptfmt(3) + documentation to -lutil.
Support for switching crypt formats in passwd(8).
Support for switching crypt formats in pw(8).

The simple synopsis is:
edit login.conf; add a passwd_format field set to "des" or "md5"; go nuts :)

Reviewed by:	peter
2000-08-22 02:15:54 +00:00
John Baldwin
0e8911b395 Revert gratuitous whitespace changes from revisions 1.111 and 1.112. 2000-08-17 07:51:48 +00:00
Peter Wemm
253fafca68 Add a prototype for rfork_thread().
pid_t rfork_thread(int forkflags, void *stack, int (*func)(void *arg),
                   void *arg);
A new process is created, presumably using RFMEM shared address space.
The child process switches to the supplied stack, which is set up with a
function call frame.  The function is called with the supplied arguement.
If the function returns, the return value will be used with _exit(2).
2000-07-29 11:53:35 +00:00
Marcel Moolenaar
11017a687b Backout addition of -L switch to mtree. Using -L breaks the
build process in too many cases. Adding mtree to bootstrap-tools
to solve this breaks the upgrade path because mtree needs a
libc that has strtofflags and fflagstostr.
2000-07-23 16:33:00 +00:00
Nick Sayer
e9e8de0698 Back out 1.15. It caused more harm than good. Something, however,
must be done to fix this situation.

Submitted by: bde
2000-07-21 14:49:09 +00:00
Andrey A. Chernov
043ada1051 Add -L to mtree 2000-07-16 08:19:49 +00:00
Alfred Perlstein
e31830e941 fix spelling errors.
Pointed out by: bde
2000-07-07 16:52:24 +00:00
Alfred Perlstein
55241422d6 cleanup the tsearch import.
remove (comment out) functions defined or depricated elsewhere:
  bsearch, lfind, lsearch, insque, remque

change hcreate to take a size_t rather than uint (essentially the same)

since hcreate/hdestroy are now in <search.h>, remove private search.h
in lib/libc/db/hash/

add $FreeBSD tags to hsearch.c
2000-07-06 20:04:34 +00:00
Jun-ichiro itojun Hagino
23ba01423e add getifaddrs(3) from bsdi. this is a magic function which lets you grab
interface addresses in a portable manner, without headache of SIOCGIFCONF
or sysctl.  it is in bsdi/openbsd/netbsd already.
from kame tree (actually, mandatory for latest kame tree).
2000-07-05 02:13:17 +00:00
Dan Moschuk
e63a7af508 Add URI encoding to the vis/unvis routines courtesy of VIS_HTTPSTYLE.
Since alex is a -doc committer, he can update his own manpage. :-)

Also add $FreeBSD$ while I'm here.

Submitted by: alex
2000-07-01 15:55:49 +00:00
Alfred Perlstein
64566a3e2a bring in binary search tree code.
Obtained from: NetBSD
2000-07-01 06:55:11 +00:00
Nick Sayer
cbe8602290 Moving forward on my commitment to always make at least one commit from
a terminal room of any conference I attend....

Fix xdrproc_t prototype. () instead of (...) breaks C++ programs.
2000-06-22 01:46:25 +00:00
Josef Karthauser
c5bb91d1b2 Add strtofflags and fflagstostr to libc. 2000-06-17 11:55:57 +00:00
Jake Burkholder
e39756439c Back out the previous change to the queue(3) interface.
It was not discussed and should probably not happen.

Requested by:		msmith and others
2000-05-26 02:09:24 +00:00
Jake Burkholder
740a1973a6 Change the way that the queue(3) structures are declared; don't assume that
the type argument to *_HEAD and *_ENTRY is a struct.

Suggested by:	phk
Reviewed by:	phk
Approved by:	mdodd
2000-05-23 20:41:01 +00:00
Peter Wemm
f612e24f9e Install /usr/include/dev/ppbus as well as dev/usb 2000-05-19 22:08:18 +00:00
Bruce Evans
80a07932e7 Fixed missing consts for function parameters, so that the code matches
the man page and POSIX.1.  Fixed nearby misformatting.  Fixed a missing
prototype.
2000-05-11 15:57:17 +00:00
John Baldwin
bde8875a06 Finish moving all IEEE fp types to be the same on all arch's. 2000-05-10 19:41:40 +00:00
David E. O'Brien
8d1d19d347 fp_except => fp_except_t for consistancy with the i386 and the tradition
C methoid of nameing types.
2000-05-10 19:00:45 +00:00
Jonathan Lemon
83a15ece20 Revert previous commit, and remove the <event.h> symlink. As this is
a system-specific extension, not a standardized interface, it should
be located with the sys/ includes.

Requested by:	wollman
2000-04-18 17:00:22 +00:00
Jonathan Lemon
6fad667de2 Create <event.h> -> <sys/event.h> link that I forgot earlier.
Reminded by:	ache
2000-04-16 22:31:49 +00:00
Ruslan Ermilov
3021afb53e The idea always was that `make copies' should undo the
`make symlinks' job, but it got broken in rev 1.109.

Restore the correct behaviour.
2000-04-06 07:33:29 +00:00
Jason Evans
60ad8853e0 Do not conditionalize function prototype definition for functions we
implement.

Noticed by:	Thimble Smith <tim@mysql.com>
Approved by:	jkh
2000-02-20 07:40:25 +00:00
David E. O'Brien
f506ed7467 There is a problem in that one cannot use ctype.h at the same time as parts
of the C++ stdlib.  Our ctype.h uses symbols of the form _<X> to denote the
various character classes.  Our ctype.h also extends the usual ctype.h
offering by adding the "_T" (special) class.  Problem is parts of the STL
also use the symbol "_T" as its parameterized type.  These two uses are
incompatible.

Thus change the form of the symbols used in ctype to something that fixes
the current problem and is less likely to cause conflicts in the future.

Requested by:	Tomoaki NISHIYAMA <tomoaki@biol.s.u-tokyo.ac.jp>
Ok'ed by:	JKH
2000-02-08 07:43:26 +00:00
Yoshinobu Inoue
12cefbcc20 Change IPv6 address scope delimeter from '@' to '%' as recent KAME change.
'@' conflicts with existing notations such as user@host, so '%' is better.

Approved by: jkh

Obtained from: KAME project
2000-02-08 05:12:45 +00:00
Josef Karthauser
418d67b0d9 Revert part of the last commit, remove {g|s}etflags from the libc
interface, and statically link them to the programs using them.
These functions, upon reflection and discussion, are too generically
named for a library interface with such specific functionality.
Also the api that they use, whilst ok for private use, isn't good
enough for a libc function.

Additionally there were complications with the build/install-world
process.  It depends heavily upon xinstall, which got broken by
the change in api, and caused bootstrap problems and general mayhem.

There is work in progress to address future problems that may be
caused by changes in install-chain tools, and better names for
{g|s}etflags can be derived when some future program requires them.
For now the code has been left in src/lib/libc/gen (it started off
in src/bin/ls).

It's important to provide library functions for manipulating file
flag strings if we ever want this interface to be adopted outside
of the source tree, but now isn't necessarily the right moment
with 4.0-release just around the corner.

Approved:	jkh
2000-02-05 18:42:36 +00:00
Yoshinobu Inoue
e3be4d7b7e sync iruserok() extension API with other BSDs
Some of rcmd related function is need to be updated to
  support IPv6. Some of them are already updated as standard
  document. But there is also several de-facto functions and
  they are not listed in standard documents.
  They are,

    iruserok()  (used by rlogind, rshd)
    ruserok()   (used by kerberos, etc)

  KAME package updated those functions in original way.

    iruserok_af()
    ruserok_af()

  But recently there was discussion on IETF IPng mailing
  list about how to sync those API, and it is decided,

    -Those function is not standard and not documented.
    -But let BSDs sync their API as de-facto.

  And after some discussion, it is announced that

    -add update to iruserok() as iruserok_sa()
    -no ruserok() API change(it is only updated internaly)

So I sync those API before 4.0 is released.
The changes are,
   -prototype changes
   -ruserok() internal update (use iruserok_sa() inside)
   -removal of ruserok_af()
   -change iruserok_af() as static functioin, and also prefix the name with __.
   -add iruserok_sa() (Just call __iruserok_af() inside)
   -adding flag AI_ALL to getipnodebyaddr() called from __icheckhost().
    This is necessary to support IPv4 communication via AF_INET6 socket
    could be correctly authenticated via iruserok_sa()
   -irusreok_af() call is replaced to iruserok_sa() call
    in rlogind, and rshd.

Approved by: jkh
2000-02-01 15:55:56 +00:00
John Polstra
8a889bcb26 Add a #define for RTLD_LOCAL as required by the Single Unix
Specification.
2000-01-29 01:53:35 +00:00
Josef Karthauser
18c0eeddf7 Historically file flags (schg, uschg, etc) have been converted from
string to u_long and back using two functions, flags_to_string and
string_to_flags, which co-existed with 'ls'.  As time has progressed
more and more other tools have used these private functions to
manipulate the file flags.

Recently I moved these functions from /usr/src/bin/ls to libutil,
but after some discussion with bde it's been decided that they
really ought to go in libc.

There are two already existing libc functions for manipulating file
modes:  setmode and getmode.  In keeping with these flags_to_string
has been renamed getflags and string_to_flags to setflags.

The manual page could probably be improved upon ;)
2000-01-27 21:17:01 +00:00
Peter Wemm
4ba5197729 Sigh. Really fix it this time. It seems the first time through the
run it would modify the source tree, causing it to fail the second
time around. Sigh.
2000-01-26 17:38:51 +00:00
Peter Wemm
400dc95012 Fix world breakage (kdump, truss) causes by rev 1.107 (adding dev/usb).
It was creating ${.OBJDIR}/${MACHINE}/usr/include/dev -> .../sys/dev
and mkioctls would descend that and saw *all* of src/sys/dev/*/*.h,
not just dev/usb/*.h.  It then choked on the dpt includes.
2000-01-26 17:12:09 +00:00
Yoshinobu Inoue
469bed11ef bindresvport related changes
-changed bindresvport2 to bindresvport_sa
 -merged the man into bindresvport.3

All discussion between Jean-Luc Richier <Jean-Luc.Richier@imag.fr>,
Theo de Raadt <deraadt@cvs.openbsd.org>, itojun, is reflected to
this code. (Actually Theo de Raadt write the code simultaneously as the
discussion change.)
2000-01-26 09:02:42 +00:00
Yoshinobu Inoue
0cac72f42c several tcp apps IPv6 update
-inetd
 -rshd
 -rlogind
 -telnetd
 -rsh
 -rlogin

Reviewed by: freebsd-arch, cvs-committers
Obtained from: KAME project
2000-01-25 14:52:10 +00:00
Nick Hibma
fcc56d9930 Install the USB include files in /usr/include/dev/usb.
We should still sort out some way of avoiding the clutter. Not all files
should be there.

Prompted by:   Louis A. Mamakos <louie@TransSys.COM>
2000-01-25 09:24:23 +00:00
Peter Wemm
d60809caa9 Add prototypes for [sg]etres[ug]id(). 2000-01-17 13:32:55 +00:00
Bruce Evans
a5341e911c Fixed disordering, misformatting, and duplicate declaration of
iruserok_af() in previous commit.
2000-01-14 15:43:27 +00:00
Yoshinobu Inoue
42b4f28ebd libc rcmd update for IPv6.
A new function bindresvport2(), AF independent version of bindresvport()
is also added.

Reviewed by: sumikawa
Obtained from: KAME project
2000-01-13 15:09:48 +00:00
Daniel Eischen
3eadb69d1f Make sched_param parameter a const to comply with POSIX and SUSv2 specs.
This doesn't need to be applied to stable, because somehow -stable seems
to have gotten it right.

Reviewed by:	jasone
2000-01-10 04:14:08 +00:00
John Polstra
4fba53a082 Remove the comment warning that the dllockinit() interface might
change.  I have decided that the interface is general enough to
last.
2000-01-09 20:57:21 +00:00
Peter Wemm
c447342094 Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL"
is an application space macro and the applications are supposed to be free
to use it as they please (but cannot).  This is consistant with the other
BSD's who made this change quite some time ago.  More commits to come.
1999-12-29 05:07:58 +00:00
John Polstra
3600eb76c6 Work around an assert failure in the dynamic linker's default thread
locking functions.  If an application loads a shared object with
dlopen() and the shared object has an init function which requires
lazy binding, then _rtld_bind is called when the thread is already
inside the dynamic linker.  This leads to a recursive acquisition
of the lock, which I was not expecting -- hence the assert failure.

This work-around makes the default locking functions handle recursive
locking.  It is NOT the correct fix -- that should be implemented
at the generic locking level rather than in the default locking
functions.  I will implement the correct fix in a future commit.

Since the dllockinit() interface will likely need to change, warn
about that in both the man page and the header file.
1999-12-28 04:38:17 +00:00
Yoshinobu Inoue
7d56d3747c Getaddrinfo(), getnameinfo(), and etc support in libc/net.
Several udp and raw apps IPv6 support.

Reviewed by: freebsd-arch, cvs-committers
Obtained from: KAME project
1999-12-28 02:37:14 +00:00
John Polstra
d3980376e8 Add a new function dllockinit() for registering thread locking
functions to be used by the dynamic linker.  This can be called by
threads packages at start-up time.  I will add the call to libc_r
soon.

Also add a default locking method that is used up until dllockinit()
is called.  The default method works by blocking SIGVTALRM, SIGPROF,
and SIGALRM in critical sections.  It is based on the observation
that most user-space threads packages implement thread preemption
with one of these signals (usually SIGVTALRM).

The dynamic linker has never been reentrant, but it became less
reentrant in revision 1.34 of "src/libexec/rtld-elf/rtld.c".
Starting with that revision, multiple threads each doing lazy
binding could interfere with each other.  The usual symptom was
that a symbol was falsely reported as undefined at start-up time.
It was rare but not unseen.  This commit fixes it.
1999-12-27 04:44:04 +00:00
Bruce Evans
de7067ac25 Fixed missing declaration of ctermid_r(3). 1999-12-23 16:33:12 +00:00
Bruce Evans
c6dfd71a9f Fixed missing declaration of getlogin_r(3). 1999-12-23 16:06:12 +00:00
Bruce Evans
dea750ae4c Fixed missing declaration of rand_r(3). 1999-12-23 15:58:20 +00:00
Bruce Evans
19fa8f60e9 Fixed missing declaration of getdents(2). 1999-12-23 15:52:13 +00:00
Jason Evans
386812d440 Fix some minor POSIX/SUSv2 compliance nits.
PR:		kern/11982
1999-12-18 01:00:42 +00:00
Alexey Zelkin
94da96bf18 Back up following macros by functions: ishexnumber, isideogram, isnumber,
isphonogram, isrune, isspecial. Fix ordering.

Reviewed by: bde
1999-12-17 15:12:21 +00:00
Jason Evans
346b6c5db8 Move POSIX feature constants from pthread.h to unistd.h, as required by
1003.1c-1995.

Undefine _POSIX_THREAD_SAFE_FUNCTIONS, since we do not implement all of the
necessary interfaces.  At least getgrgid_r(), getrnam_r(), getpwuid_r(),
getpwnam_r(), getc_unlocked(), getchar_unlocked(), putc_unlocked(),
and putchar_unlocked() are missing.  Due to a likely typo in 1003.1c-1995,
we are not technically allowed to define _POSIX_THREADS without defining
_POSIX_THREAD_SAFE_FUNCTIONS, but either way we're non-compliant, so I'm
leaving _POSIX_THREADS defined.

PR:		bin/8281
1999-12-16 21:53:39 +00:00
Marcel Moolenaar
15f3c66cd2 Revert previous commit.
Requested by: bde
1999-12-09 09:35:36 +00:00
Marcel Moolenaar
02cca88299 Remove support for symlinks instead of copies. This also avoids
using mtree. Space is being saved by other means.
1999-12-08 13:47:30 +00:00
Peter Wemm
5af7944d91 Create a symlink for <machine/joystick.h>, like soundcard.h 1999-12-05 21:34:09 +00:00
Semen Ustimenko
5bf4211543 Added ntfs subdir to be filled. 1999-12-03 20:22:45 +00:00
Alfred Perlstein
8b6c02f328 style fixes, remove extra braces.
readdir_r is not POSIX according to POSIX_SOURCE, bruce says:
> readdir_r() is in the _POSIX_SOURCE section, but is not a POSIX.1-1990
> function.  It's POSIX.1-1996 so it should be under a different feature
> test which we don't support yet.

make sure errno is saved so that its contents are cleared unless
necessary.

Submitted by: bde
1999-11-29 19:12:50 +00:00
Alfred Perlstein
7285bccf1a add pthread_cancel, obtained from OpenBSD.
eischen (Daniel Eischen) added wrappers to protect against cancled
threads orphaning internal resources.

the cancelability code is still a bit fuzzy but works for test
programs of my own, OpenBSD's and some examples from ORA's books.

add readdir_r to both libc and libc_r

add some 'const' attributes to function parameters

Reviewed by: eischen, jasone
1999-11-28 05:38:13 +00:00
Andrey A. Chernov
3cc1fd63ff Add FNM_FILE_NAME - GNU alias to FNM_PATHNAME
Move all excepting NOESCAPE,PATHNAME,PERIOD under !defined(_POSIX_SOURCE)
1999-11-21 17:32:45 +00:00
Jonathan Lemon
fd9ec25aaa Add missing netinet6.
Detected by:	make world
1999-11-05 18:49:00 +00:00
Julian Elischer
4cf49a4355 Whistle's Netgraph link-layer (sometimes more) networking infrastructure.
Been in production for 3 years now. Gives Instant Frame relay to if_sr
and if_ar drivers, and PPPOE support soon. See:
ftp://ftp.whistle.com/pub/archie/netgraph/index.html
for on-line manual pages.

Reviewed by: Doug Rabson (dfr@freebsd.org)
Obtained from:  Whistle CVS tree
1999-10-21 09:06:11 +00:00
Boris Popov
f24bb3a4b3 Make libncp actually compiled.
Reviewed by:	mdodd
1999-10-14 06:40:46 +00:00
Peter Wemm
56638eb686 Complete move of kvm.h to lib/libkvm so it's self contained. 1999-10-04 14:59:37 +00:00
Marcel Moolenaar
e1a1647870 Link ucontext.h to sys/ucontext.h
Pointed out by: bde
1999-10-03 15:12:26 +00:00
Marcel Moolenaar
9102cd0abd Remove the inline versions of sigaddset, sigdelset, sigemptyset,
sigfillset and sigismember.

Submitted by: bde
1999-10-02 19:33:23 +00:00
Marcel Moolenaar
3cf3c5d9dd sigset_t change (part 5 of 5)
-----------------------------

Most of the userland changes are in libc. For both the alpha
and the i386 setjmp has been changed to accomodate for the
new sigset_t. Internally, libc is mostly rewritten to use the
new syscalls. The exception is in compat-43/sigcompat.c

The POSIX thread library has also been rewritten to use the
new sigset_t. Except, that it currently only handles NSIG
signals instead of the maximum _SIG_MAXSIG. This should not
be a problem because current applications don't use any
signals higher than NSIG.

There are version bumps for the following libraries:
  libdialog
  libreadline
  libc
  libc_r
  libedit
  libftpio
  libss

These libraries either a) have one of the modified structures
visible in the interface, or b) use sigset_t internally and
may cause breakage if new binaries are used against libraries
that don't have the sigset_t change. This not an immediate
issue, but will be as soon as applications start using the
new range to its fullest.

NOTE: libncurses already had an version bump and has not been
      given one now.

NOTE: doscmd is a real casualty and has been disconnected for
      the moment. Reconnection will eventually happen after
      doscmd has been fixed. I'm aware that being the last one
      to touch it, I'm automaticly promoted to being maintainer.
      According to good taste this means that I will receive a
      badge which either will be glued or mechanically stapled,
      drilled or otherwise violently forced onto me :-)

NOTE: pcvt/vttest cannot be compiled with -traditional. The
      change cause sys/types to be included along the way which
      contains the const and volatile modifiers. I don't consider
      this a solution, but more a workaround.
1999-09-29 15:18:46 +00:00
Peter Wemm
2c62730ab2 Zap $Revision$ 1999-09-05 17:43:31 +00:00
Peter Wemm
c08e808e2a Only install backwards compat symlink for <machine/soundcard.h> if using
the default SHARED=copies, otherwise the kernel source tree gets modified
if /usr/include/machine is a symlink to the source tree (which is not the
case by default).  Nothing in our src tree uses <machine/soundcard.h>.

Pointed out by:	bde
1999-09-05 07:58:28 +00:00
Peter Wemm
df791b1e94 Install a symlink for <machine/soundcard.h> -> <sys/soundcard.h> rather
than having stubs.  (OK'ed by dfr)
1999-09-04 15:44:44 +00:00
John Polstra
30f6d5b508 Add definition for RTLD_GLOBAL, which is soon to be supported. 1999-08-30 00:50:12 +00:00
Peter Wemm
a1a4f1a0d8 $Header$ -> $FreeBSD$ 1999-08-28 05:11:36 +00:00
Peter Wemm
a4add9a9b1 $Id$ -> $FreeBSD$ 1999-08-27 23:45:13 +00:00
Matthew N. Dodd
90cc1fbc53 Add 2 functions: el_data_set() and el_data_get() which do what you
would expect.  (Allow user data to be associated with an EditLine context).

As this changes no existing interfaces and doesn't alter any structs
visable to the user I've been told that its not necessary to bump
the version of the library.
1999-08-20 01:17:12 +00:00
Warner Losh
c0344bf061 Add prototypes for strl* functions
Forgotten by: imp
Reported by: bde
1999-08-16 06:53:13 +00:00
Ralf S. Engelschall
026cb3a62c Cleanups to the pthread header files.
Submitted by:   Ralf S. Engelschall <rse@engelschall.com>
Reviewed by:    John Birrell <jb@cimlogic.com.au>
1999-07-31 08:36:07 +00:00
Daniel Eischen
5b90d09f8a Hide pthread cancellation routines behind #ifdef NOT_YET. They are
not currently supported.  Also corrected the declaration for
pthread_testcancel which incorrectly returned int when POSIX and
SUSv2 both say it should be void.

Submitted by:	Ralf S. Engelschall <rse@engelschall.com>
Reviewed by:	John Birrell <jb@freebsd.org>
1999-07-27 03:29:01 +00:00
Hidetoshi Shimokawa
f2fd63aff2 Make profil() 64bit-safe for alpha.
uintfptr_t may be better for offset, but we must wait until
the definition of uintfptr_t moves from machine/profile.h.

Reviewed by: bde
1999-07-16 06:28:55 +00:00
Steve Price
47fe9db9e6 Allow fpsetmask(3) and friends to be used from a C++ program on the Alpha.
Reviewed by:	dfr
1999-06-22 17:08:25 +00:00
Sheldon Hearn
1e61f70124 Add missing declarations.
PR:	12058
Submitted by:	Mikhail Teterin <mi@aldan.algebra.com>
1999-06-21 17:07:20 +00:00
Peter Wemm
f05a568074 Change an internal variable from "class" to "ns_class" for C++'s benefit.
Apparently BIND-8.2.1 uses ns_class.

Submitted by: John Plevyak <jplevyak@inktomi.com>
1999-06-04 22:38:27 +00:00
Peter Wemm
78121e79aa Add a strsignal(3) (like strerror(3)) for libc compatability with other
systems. NetBSD, Linux, SVR4 etc all have it.
1999-05-18 04:48:58 +00:00
Bruce Evans
95b2e7ca5b Restored rev.1.11 which was clobbered by rev.1.12 (translated to `C'). 1999-05-11 07:28:53 +00:00
Jordan K. Hubbard
da8f43d1fc Protect declarations for C++ users.
Submitted by:	Richard Wiwatowski <rjwiwat@ozemail.com.au>
1999-05-08 05:50:07 +00:00
Jacques Vidrine
958ab463b8 16 characters for the device name in /etc/dumpdates is not long
enough, particularly when using vinum.  Allow 32 characters
(arbitrary, I know) instead.

PR:	bin/11433
1999-05-08 01:08:56 +00:00
Mark Murray
0feb57945e Part of routed upgrade.
Submitted by:	 Vernon Schryver <vjs@calcite.rhyolite.com>
1999-05-02 13:20:38 +00:00
John Polstra
6d30b16752 Back out my change from 6 April PDT that added a new dlversion()
function.  It was an ill-considered feature.  It didn't solve the
problem I wanted it to solve.   And it added Yet Another Version
Number that would have to be maintained at every release point.
I'm nuking it now before anybody grows too fond of it.
1999-04-22 01:54:38 +00:00
Bruce Evans
34597fa67f Oops, the previous log message should have been:
Include <machine/ansi.h> so that this file is self-sufficient again.
Rev.1.6 doesn't do this as claimed unless <nlist.h> has nonstandard
pollution.

Cleaned up includes.
1999-04-10 03:49:43 +00:00
Bruce Evans
95a7753b24 Declare mkstemps(). 1999-04-09 15:06:56 +00:00
John Polstra
14f5fa0596 Add a new function dlversion() which returns the version number of
the dynamic linker in the same form as __FreeBSD_version.  This is
mainly intended for checking the dynamic linker version during a make
world.
1999-04-07 02:43:11 +00:00
Dmitrij Tejblum
3a41a9b759 Add prototypes for pread and pwrite. 1999-04-04 21:47:53 +00:00
John Birrell
b847980f15 o Runnable threads are now maintained in priority queues. The
implementation requires two things:

      1.) The priority queues must be protected during insertion
          and removal of threads.  Since the kernel scheduler
          must modify the priority queues, a spinlock for
          protection cannot be used.   The functions
          _thread_kern_sched_defer() and _thread_kern_sched_undefer()
          were added to {un}defer kernel scheduler activation.

      2.) A thread (active) priority change can be performed only
          when the thread is removed from the priority queue.  The
          implementation uses a threads active priority when
          inserting it into the queue.

    A by-product is that thread switches are much faster.  A
    separate queue is used for waiting and/or blocked threads,
    and it is searched at most 2 times in the kernel scheduler
    when there are active threads.  It should be possible to
    reduce this to once by combining polling of threads waiting
    on I/O with the loop that looks for timed out threads and
    the minimum timeout value.

  o Functions to defer kernel scheduler activation were added.  These
    are _thread_kern_sched_defer() and _thread_kern_sched_undefer()
    and may be called recursively.  These routines do not block the
    scheduling signal, but latch its occurrence.  The signal handler
    will not call the kernel scheduler when the running thread has
    deferred scheduling, but it will be called when running thread
    undefers scheduling.

  o Added support for _POSIX_THREAD_PRIORITY_SCHEDULING.  All the
    POSIX routines required by this should now be implemented.
    One note, SCHED_OTHER, SCHED_FIFO, and SCHED_RR are required
    to be defined by including pthread.h.  These defines are currently
    in sched.h.  I modified pthread.h to include sched.h but don't
    know if this is the proper thing to do.

  o Added support for priority protection and inheritence mutexes.
    This allows definition of _POSIX_THREAD_PRIO_PROTECT and
    _POSIX_THREAD_PRIO_INHERIT.

  o Added additional error checks required by POSIX for mutexes and
    condition variables.

  o Provided a wrapper for sigpending which is marked as a hidden
    syscall.

  o Added a non-portable function as a debugging aid to allow an
    application to monitor thread context switches.  An application
    can install a routine that gets called everytime a thread
    (explicitly created by the application) gets context switched.
    The routine gets passed the pthread IDs of the threads that are
    being switched in and out.  I found this useful, but we can
    get rid of it if you want.

Submitted by: Dan Eischen <eischen@vigrid.com>
1999-03-23 05:11:30 +00:00
Poul-Henning Kamp
7f29144bc9 Nuke old copies of /usr/include/timepps.h 1999-03-22 12:58:15 +00:00
Poul-Henning Kamp
8b2de66177 Remove <timepps.h> here as well.
You will need to manually rip it from /usr/include if it gives you any
trouble.
1999-03-11 15:12:28 +00:00
Poul-Henning Kamp
d492694916 removed from PPS-API draft 1999-03-11 15:07:09 +00:00
Bruce Evans
1b768d384a Use __i386__ instead of i386 in an ifdef. 1999-03-05 18:15:05 +00:00
Dmitrij Tejblum
7307d07db6 Added functions fseeko() and ftello() (from susv2).
Fixed fgetpos() and fsetpos() for offsets > 2GB.

PR:		8637
Submitted by:	 Dan Nelson <dnelson@emsphone.com> (adjusted by me a little)
1999-02-08 21:32:38 +00:00
Bruce Evans
45908a6a19 Removed evil typedef kvm_swap_t and all uses of it (not many).
Hoped for by:	wollman
1999-01-27 11:29:15 +00:00
Matthew Dillon
b8808468dd Oops, forgot this. Needed by libkvm. 1999-01-23 04:58:35 +00:00
John Polstra
5d00b6ccba Add a prototype for strtok_r(). 1999-01-20 21:21:26 +00:00
Dag-Erling Smørgrav
a135bdb9a0 Use the correct type for uid and gid in struct passwd. Document it. 1999-01-18 02:14:20 +00:00
Dmitrij Tejblum
f7393eced7 Install <sys/aio.h> as <aio.h>. 1999-01-17 22:35:09 +00:00
John Polstra
1c3cb5788b Instead of a wrapper <linker_set.h>, use a symlink to
<sys/linker_set.h>.

Submitted by:	bde
1999-01-14 19:52:38 +00:00
John Polstra
a528ae5332 Add a wrapper <linker_set.h> for <sys/linker_set.h>, so that
userland programs can use linker sets.
1999-01-14 05:53:54 +00:00
Mike Smith
10332f3227 optreset is a POSIX extension, make it visible in POSIX_SOURCE scope.
Submitted by:	 Andrzej Bialecki <abial@nask.pl>
1999-01-11 11:32:35 +00:00
Satoshi Asami
16ceea1b93 Move nologin from /etc to /var/run. This means one less file that has
to be written to /etc.

The only essential change is in paths.h, so any third-party software
written correctly will pick it up in the next rebuild.

Reviewed by:	the committers list (actually an old version)
1999-01-11 09:07:42 +00:00
Mike Smith
a79658408c POSIX introduced optreset to deal with multiple invocations
of getopt (as in, multiple input lines :). This is documented in the
man page and is used in the code, but unistd.h and stand.h do not
declare it. Incidentally, it prevents me fixing a bug in loader's
code... :-)

PR:		misc/9373
Submitted by:	"Daniel C. Sobral" <dcs@newsguy.com>
1999-01-11 06:01:29 +00:00
Dmitrij Tejblum
de16000123 Make ctime_r, asctime_r, gmtime_r, and localtime_r available in libc. 1999-01-04 20:45:20 +00:00
Doug Rabson
b7f762137a Implement fpsetmask() and other fp*() functions. Programs should use
#include <ieeefp.h>

to access these functions instead of the i386 specific

	#include <machine/floatingpoint.h>

Submitted by: Hidetoshi Shimokawa <simokawa@sat.t.u-tokyo.ac.jp>
1998-12-23 11:50:52 +00:00
Dmitrij Tejblum
68626e8df3 Install <sys/inttypes.h> as <inttypes.h>. 1998-12-19 00:21:13 +00:00
Dmitrij Tejblum
8252a465b9 Little reorganization:
- created internal names for fixed-size integral types, like __int32_t. They
  will be used to make several headers self-sufficient.
- <stdlib.h> don't include <machine/types.h> anymore.
- created <sys/inttypes.h>, which can be used as <inttypes.h>.
- declaration of uoff_t and ufs_daddr_t moved to <sys/types.h>.

Reviewed by:	bde
1998-12-19 00:02:34 +00:00
Bruce Evans
b245b90a64 Declare size_t and ssize_t if they are not already declared, so that
<kvm.h> is self-sufficient again.

Moved typedefs and forward struct declarations out of __BEGIN_DECLS/
__END_DECLS.

Don't comment out the prototype for kvm_uread().  This was a 4 year
old kludge for previous breakage of self-sufficiency.  The prototypwe
was broken instead.

Fixed bitrot (const poisoning) in the type of kvm_uread().

Fixed order of the declaration of kvm_uread().
1998-12-16 18:59:47 +00:00
Dmitrij Tejblum
c1b7af8ac3 Make this protototype of mmap return void *, like two other copies. 1998-12-14 19:23:16 +00:00
Archie Cobbs
17640fbe70 Make rcsid a const char[] instead of char[] to avoid compiler warnings 1998-12-06 08:15:08 +00:00
Eivind Eklund
07bab7c6a4 Add support for pthread_mutexattr_settype(). As a side effect of
testing this, fix MUTEX_TYPE_COUNTING_FAST.  Recursive locks now work.
1998-11-28 23:52:58 +00:00
Bruce Evans
ba924eaf7c Don't forget to use the appropriate __printf*like attribute for verr*
and vwarn*.

Sorted attributes.

UnFrom'ed vendor id.
1998-11-22 05:12:27 +00:00
Dima Ruban
689c44c5b3 64bit clean now 1998-11-08 08:27:16 +00:00
John Polstra
7fd62c59f5 Add support for -Wformat consistency checking between format strings
and their argument lists for the err(3) family of functions.  Note,
I intentionally used __printflike instead of __printf0like for
warnx.  Although a NULL format string is legal for that function, it
doesn't make any sense.
1998-10-29 22:18:47 +00:00
Dima Ruban
97b465b142 64bit fixes.
(Note: ``dump'' doesn't work on alpha yet. Apparently there's a problem
somewhere is the physio() area)

Submitted by:	myself && Matt Dillon.
1998-10-27 04:01:19 +00:00
Dima Ruban
e9b30c621d make talk/talkd work on alpha. 1998-10-20 07:07:07 +00:00
Bruce Evans
996997fdef Don't even think about using a sysctl to build osreldate.h, since this
breaks cross-builds.  Just depend on ${.CURDIR}/../sys/conf/newvers.sh
existing.

Don't override the (correct) defaults for the depend, lint or tags target.

In LDIRS: fixed order-rot.  Don't comment out dead networking directories;
remove them.
1998-10-17 15:52:48 +00:00
Jordan K. Hubbard
eecd46375c Move auth.conf path in here. Doesn't affect published interface. 1998-10-09 07:34:47 +00:00