Commit Graph

882 Commits

Author SHA1 Message Date
ru
f5faaf6181 Rename includes' to buildincludes'.
Rename `incsinstall' to `installincludes'.
Make `includes' a -j safe shortcut for `buildincludes' + `installincludes'.
`buildincludes' and `installincludes' are SUBDIR friendly, if run directly.
2002-05-15 16:19:54 +00:00
phk
3ea593e0da Use explicitly sized fields for the tape format definition.
Sponsored by:	DARPA & NAI Labs.
2002-05-14 06:59:55 +00:00
ru
59049318b6 Added new bsd.incs.mk which handles installing of header files
via INCS.  Implemented INCSLINKS (equivalent to SYMLINKS) to
handle symlinking include files.  Allow for multiple groups of
include files to be installed, with the powerful INCSGROUPS knob.
Documentation to follow.

Added standard `includes' and `incsinstall' targets, use them
in Makefile.inc1.  Headers from the following makefiles were
not installed before (during `includes' in Makefile.inc1):

	kerberos5/lib/libtelnet/Makefile
	lib/libbz2/Makefile
	lib/libdevinfo/Makefile
	lib/libform/Makefile
	lib/libisc/Makefile
	lib/libmenu/Makefile
	lib/libmilter/Makefile
	lib/libpanel/Makefile

Replaced all `beforeinstall' targets for installing includes
with the INCS stuff.

Renamed INCDIR to INCSDIR, for consistency with FILES and SCRIPTS,
and for compatibility with NetBSD.  Similarly for INCOWN, INCGRP,
and INCMODE.

Consistently use INCLUDEDIR instead of /usr/include.

gnu/lib/libstdc++/Makefile and gnu/lib/libsupc++/Makefile changes
were only lightly tested due to the missing contrib/libstdc++-v3.
I fully tested the pre-WIP_GCC31 version of this patch with the
contrib/libstdc++.295 stuff.

These changes have been tested on i386 with the -DNO_WERROR "make
world" and "make release".
2002-05-12 16:01:00 +00:00
des
6f8960d18d Add some more commonly-used directories and files.
Sponsored by:	DARPA, NAI Labs
2002-05-08 00:37:50 +00:00
des
e48f76df85 Spell void * as void * rather than caddr_t. This is complicated by the
fact that caddr_t is often misspelled as char *.

Sponsored by:	DARPA, NAI Labs
2002-04-28 15:18:50 +00:00
phk
06842004ed Constify _malloc_options. 2002-04-24 16:49:36 +00:00
mux
a207e41bef Rework the kernel environment subsystem. We now convert the static
environment needed at boot time to a dynamic subsystem when VM is
up.  The dynamic kernel environment is protected by an sx lock.

This adds some new functions to manipulate the kernel environment :
freeenv(), setenv(), unsetenv() and testenv().  freeenv() has to be
called after every getenv() when you have finished using the string.
testenv() only tests if an environment variable is present, and
doesn't require a freeenv() call. setenv() and unsetenv() are self
explanatory.

The kenv(2) syscall exports these new functionalities to userland,
mainly for kenv(1).

Reviewed by:	peter
2002-04-17 13:06:36 +00:00
mike
fe729d99de Include <sys/_types.h>. This should have been part of the previous
revision.
2002-04-15 03:33:27 +00:00
mike
4b145d739f Add support for X/Open.
PR: 37078
2002-04-15 03:21:21 +00:00
des
06b809501b (ab)use unused bits in the pw_fields member of struct passwd to record
the source of the data contained in the structure.

Sponsored by:	DARPA, NAI Labs
2002-04-14 22:24:55 +00:00
mike
04f18ad12c Be more strict about exposing BSD-specific functions when a standard
has been requested.

Unconditionalize the definition of INET_ADDRSTRLEN and
INET6_ADDRSTRLEN.  Doing this helps expose bogus redefinitions in 3rd
party software.
2002-04-10 10:51:53 +00:00
mike
1802268e80 o Move some function prototypes from <string.h> to the newly rewritten
<strings.h>, based on POSIX.1-2001's requirements.
o Add 'restrict' qualifier (spelled '__restrict') to functions in
  <string.h>, as per C99 and POSIX.1-2001.
o Properly expose new POSIX.1-2001 functions in <string.h>.
2002-04-04 05:41:57 +00:00
ru
fc9f470859 Don't clobber headers that we didn't create.
Noticed by:	bde
Reviewed by:	bde
2002-04-03 17:29:20 +00:00
phk
1bcafdd129 Remove the disktab.h include file from the build. 2002-04-01 20:20:16 +00:00
phk
c4b43c0b29 This file is entirely bogus. 2002-04-01 20:03:31 +00:00
mike
beecc37c73 o Implement <sys/_types.h>, a new header for storing types that are
MI, not required to be a fixed size, and used in multiple headers.
  This will grow in time, as more things move here from <sys/types.h>
  and <machine/ansi.h>.
o Add missing type definitions (uint16_t and uint32_t) to
  <arpa/inet.h> and <netinet/in.h>.
o Reduce pollution in <sys/types.h> by using `#if _FOO_T_DECLARED'
  widgets to avoid including <sys/stdint.h>.
o Add some missing type definitions to <unistd.h> and note the ones
  that still need to be added.
o Make use of <sys/_types.h> primitives in <grp.h> and <sys/types.h>.

Reviewed by:	bde
2002-04-01 08:12:25 +00:00
ru
f6da61bcc9 Install sys/security/lomac/*.h to /usr/include/security/lomac/.
Install sys/<arch>/include/pc/*.h to /usr/include/machine/pc/.

PR:		docs/29534

Install sys/netatm/*/*.h to /usr/include/netatm/*/.

Don't install compatibility symlinks for <machine/soundcard.h>
and <machine/joystick.h>.  Three years is enough to be aware of
the change, and these weren't visible in the SHARED=symlinks
case.

Back out include/Makefile,v 1.160 that was a null change anyway
due to the bug in the path, and we now don't want to install
these headers because they would otherwise be invisible in the
SHARED=symlinks case.

Don't install IPFILTER headers.  Userland utilities fetch them
directly, and they were not visible in the SHARED=symlinks case.

Resurrect SHARED=symlinks in Makefile.inc1.

PR:		bin/28002

Prodded by:	bde
MFC after:	2 weeks
2002-03-26 16:05:14 +00:00
bde
aff482e88f Join continuation lines that fit in 80 columns after removal of __P(()). 2002-03-26 01:37:03 +00:00
bde
2c14ede5e3 Fixed some style bugs in the removal of __P(()). Some function parameter
lists were outdented to column 0.
2002-03-26 01:35:05 +00:00
imp
4670ab14a9 Missed a __P in a .x file, remove it anyway 2002-03-24 01:11:49 +00:00
imp
300518c0a1 Breath deep and take __P out of the system include files.
# This appears to not break X11, but I'm having problems compiling the
# glide part of the server with or without this patch, so I can't tell
# for sure.
2002-03-23 17:24:55 +00:00
alfred
a36618aaa6 rename 'enum res' and 'struct status' to 'enum sm_res' and 'struct sm_status'
to avoid -Wshadow warnings in consumers of its generated header files.
2002-03-22 19:43:21 +00:00
alfred
a28390a969 Constify the first arg to callrpc(3). 2002-03-22 19:19:32 +00:00
imp
9c371e01e9 const poison just like NetBSD. 2002-03-22 02:43:01 +00:00
imp
bb8112f72f Make user_from_uid and group_from_gid return const char *, just like
NetBSD.  Update man page to reflect this.
2002-03-22 02:35:47 +00:00
ru
dea7dd81b7 Replaced hacks in sbin/Makefile,v 1.99 and usr.sbin/Makefile,v 1.217
with the NO_IPFILTER make.conf(5) knob.

(So that we can "make the-rest-of-the-world" again.)
2002-03-21 09:15:39 +00:00
obrien
ded92cd9de Tokens after #endif are not strict ISO. 2002-03-13 10:29:06 +00:00
mike
b9910027dd o Add INET_ADDRSTRLEN and INET6_ADDRSTRLEN defines to <arpa/inet.h>
for POSIX.1-2001 conformance.
o Add magic to <netinet/in.h> and <netinet6/in6.h> to prevent
  redefining INET_ADDRSTRLEN and INET6_ADDRSTRLEN.
o Add a note about missing typedefs in <arpa/inet.h>.
2002-03-10 06:42:27 +00:00
mike
b8cc0d1207 o Don't require long long support in bswap64() functions.
o In i386's <machine/endian.h>, macros have some advantages over
  inlines, so change some inlines to macros.
o In i386's <machine/endian.h>, ungarbage collect word_swap_int()
  (previously __uint16_swap_uint32), it has some uses on i386's with
  PDP endianness.

Submitted by:	bde

o Move a comment up in <machine/endian.h> that was accidentially moved
  down a few revisions ago.
o Reenable userland's use of optimized inline-asm versions of
  byteorder(3) functions.
o Fix ordering of prototypes vs. redefinition of byteorder(3)
  functions, so that the non-GCC (libc asm) case has proper
  prototypes.
o Add proper prototypes for byteorder(3) functions in <sys/param.h>.
o Prevent redundant duplicate prototypes by making use of the
  _BYTEORDER_PROTOTYPED define.
o Move the bswap16(), bswap32(), bswap64() C functions into MD space
  for platforms in which asm versions don't exist.  This significantly
  reduces the complexity of some things at the cost of duplicate code.

Reviewed by:	bde
2002-03-09 21:02:16 +00:00
green
ae1158ed72 Synch with OpenBSD (style). 2002-03-08 20:52:52 +00:00
mike
c72c50ab95 Use a integral type that doesn't require <sys/types.h>. This
accomplishes the goal of actually making <grp.h> independent of other
headers for the definition of its types.

Pointy hat to:	mike
2002-03-08 03:09:46 +00:00
mike
d20627ce9b Rather than include namespace pollution in <grp.h> in order to declare
`gid_t', use the canonical protection scheme to define a type in two or
more headers.  This brings <grp.h> closer to POSIX.1-2001 conformance.
2002-02-26 19:43:03 +00:00
sobomax
c70d19ad22 Per POSIX <grp.h> doesn't require <sys/types.h>.
Submitted by:	ache
2002-02-25 17:20:40 +00:00
sobomax
8b1c00e3bc Backout rev.1.5 - it seems that it's posixly correct that the program
needs to include <sys/types.h> before <grp.h>.

Submitted by:	fjoe, sheldonh
		David Malone <dwmalone@maths.tcd.ie>
2002-02-25 13:55:47 +00:00
sobomax
916123866f In rev.1.4 type of (group)->gr_gid was changes from (int) to (gid_t),
so that <sys/types.h> is now required. Add it, otherwise it breaks
some ports.

Submitted by:	Joe Marcus Clarke <marcus@marcuscom.com>
2002-02-25 13:24:02 +00:00
mike
bcee06d42c o Move NTOHL() and associated macros into <sys/param.h>. These are
deprecated in favor of the POSIX-defined lowercase variants.
o Change all occurrences of NTOHL() and associated marcros in the
  source tree to use the lowercase function variants.
o Add missing license bits to sparc64's <machine/endian.h>.
  Approved by: jake
o Clean up <machine/endian.h> files.
o Remove unused __uint16_swap_uint32() from i386's <machine/endian.h>.
o Remove prototypes for non-existent bswapXX() functions.
o Include <machine/endian.h> in <arpa/inet.h> to define the
  POSIX-required ntohl() family of functions.
o Do similar things to expose the ntohl() family in libstand, <netinet/in.h>,
  and <sys/param.h>.
o Prepend underscores to the ntohl() family to help deal with
  complexities associated with having MD (asm and inline) versions, and
  having to prevent exposure of these functions in other headers that
  happen to make use of endian-specific defines.
o Create weak aliases to the canonical function name to help deal with
  third-party software forgetting to include an appropriate header.
o Remove some now unneeded pollution from <sys/types.h>.
o Add missing <arpa/inet.h> includes in userland.

Tested on:	alpha, i386
Reviewed by:	bde, jake, tmm
2002-02-18 20:35:27 +00:00
deischen
416a72d401 Oops, forgot to commit this (s/ucontext_t/struct __ucontext/). 2002-02-17 19:21:42 +00:00
imp
f58558abb7 Move user_from_uid to pwd.h
Move group_from_gid to grp.h
Remove from stdlib.h
Make the prototypes match the code
Fix rm and mv to include new files.

NetBSD has these defined in those files, and others too that I've not
done.

Approved by: terminal room kabal
Reviewed by: jhb, phk
2002-02-14 01:59:47 +00:00
imp
3a8afc4039 Revert 1.29. It breaks the build. Will figure out a better way to do
this that doesn't break things.
2002-02-13 10:11:38 +00:00
imp
15780b0116 Make the user_from_uid and group_from_gid prototypes match the actual
function definitions.
2002-02-13 09:33:00 +00:00
des
0f2cb9b020 Apply the following mechanical transformations in preparation for
ansification and constification:

    s{\s+__P\((\(.*?\))\)}{$1}g;
    s{\(\s+}{\(}g;
    s{\s+\)}{\)}g;
    s{\s+,}{,}g;
    s{(\s+)(for|if|switch|while)\(}{$1$2 \(}g;
    s{return ([^\(].*?);}{return ($1);}g;
    s{([\w\)])([!=+/\*-]?=)([\w\(+-])}{$1 $2 $3}g;
    s{\s+$}{\n};g

Also add $FreeBSD$ where needed.

MFC after:	1 week
2002-02-06 13:30:31 +00:00
alfred
5689562575 Fix cc -Wall, fix rcsid warnings, add missing prototypes,
change prototypes to be the same as in the original sun tirpc code.
Remove ()P macro in a file where the mayority had ()P already removed.
Add them if the mayority use ()P macros.

Submitted by: mbr
Requested by: bde
2002-02-05 23:43:43 +00:00
des
53f5633b02 Move arguments in prototype out of application namespace.
Sponsored by:	DARPA, NAI Labs
2002-02-05 06:31:58 +00:00
bbraun
296f340c65 Makes __istype() an inline (and a non inlined) function to avoid C++
compile issues.  std::isspace(' ') was expanding to std::(!!_maskrune...)
which would cause a C++ compile error.  Making __istype() an inline
causes the expansion to be std::__istype() instead, which is valid.

Reviewed by: jkh
2002-02-05 06:21:34 +00:00
sobomax
0a68f500fa Allow ldd(1) be used on shared libraries in addition to executables. 2002-02-04 10:33:48 +00:00
markm
792e9550ac WARNS-n and lint(1) silencer. Declare (const) strings properly as
'const char *'.
2002-02-03 12:00:05 +00:00
dwmalone
33776f88dc Change brk's prototype from char *brk(const char *) to int brk(const void *)
and sbrk's prototype from char *sbrk(int) to void *sbrk(intptr_t).

This makes us more consistant with NetBSD and standards which include
these functions. Bruce pointed out that ptrdiff_t would probably
have been better than intptr_t, but this doesn't match other
implimentations.

Also remove local declarations of sbrk and unnecessary casting.

PR:		32296
Tested by:	Harti Brandt <brandt@fokus.gmd.de>
MFC after:	1 month
2002-01-24 12:11:31 +00:00
markm
e2a2029185 Use the proper type (gid_t) for (group)->gr_gid to be orthogonal
with uid_t usage and (user)->pw_uid.

PR:		3242
2002-01-22 17:32:53 +00:00
dillon
c3dbbbabdf I've been meaning to do this for a while. Add an underscore to the
time_to_xxx() and xxx_to_time() functions.  e.g. _time_to_xxx()
instead of time_to_xxx(), to make it more obvious that these are
stopgap functions & placemarkers and not meant to create a defacto
standard.  They will eventually be replaced when a real standard
comes out of committee.
2002-01-19 23:20:02 +00:00
mike
944cba2780 Add support for C++.
Submitted by:	bde
PR:		33590
2002-01-06 19:04:12 +00:00
ambrisko
508de04e82 Fix bugs in the structure for rx_frame by making gap length one byte and
a packed array so sizeof work.  This broke RFMON mode and passing
up 802.11 packets.

The Linux emulation code was derived from the open source Linux driver to
maintain compatibility.

LEAP support is added, hints from Richard Johnson.  I've verified this
locally with PC350v42510.img firmware.  More bug fixing from Marco to
fix long passwords.

Change DELAYs in flash part of driver to FLASH_DELAY which uses tsleep
so it doesn't look like your system died during a flash update.

Install header files in /usr/include/dev/an

Cleanup some ifmedia bugs add "Home" key mode to ifmedia and ancontrol.
This way you can manage 2 keys a little easier.  Map the home mode into
key 5.  Enhance ifconfig to dump the various configured SSIDs.  I use
a bunch of different ones and roam between them.  Use the syntax similar
to the WEP keys to deal with setting difference SSIDs.

Bump up up the Card capabilities RID since they added 2 bytes to it
in the latest firmware.  Thankfully we changed it from a terminal
failure so the card still worked but the driver whined.

Some cleanup patches from Marco Molteni.

Submitted by:	Richard Johnson <raj@cisco.com>
		Marco Molteni <molter@tin.it>
		and myself
Various checks: David Wolfskill <david@catwhisker.org>
Reviewed by:	Brooks Davis <brooks@freebsd.org>
		Warner Losh <imp@freebsd.org>
Approved by:	Brooks Davis <brooks@freebsd.org>
		Warner Losh <imp@freebsd.org>
Obtained from:	Linux emulation API's from Aironet driver.
2001-12-31 22:01:44 +00:00
mike
d815758741 Fix support for K&R C.
MFC after:	3 days
2001-12-22 05:18:37 +00:00
ru
bbef88e1a5 FILES support for bsd.prog.mk. See bsd.README for details.
Stolen from:	NetBSD
2001-12-17 13:59:35 +00:00
green
d735460deb Install devfs includes. 2001-12-17 13:38:58 +00:00
sheldonh
551d694f64 Add bmake glue for src/contrib/smbfs and connect userland smbfs
support to the build.

The MFC reminder below is subject to <re@FreeBSD.org> approval
prior to 4.5-RELEASE.

Reviewed by:	bp, fjoe
MFC:	1 week
2001-12-14 11:41:22 +00:00
phantom
e3e97d513f * style(9)'ify
* add K&R support to langinfo.h

Requested by:	bde (2)
2001-12-12 15:41:08 +00:00
phantom
10c4fd6e18 Get rid of unsed since rev 1.109 of lib/Makefile WANT_CSRG_LIBM define.
We'll never install math.h wrapped by this define since msun's math.h
is using, so it should be removed from the source tree at some point
(after merge of useful stuff to msun's math.h which is installing now
to /usr/include)

Reviewed by:    bde
2001-12-11 16:38:33 +00:00
phantom
43b8ed47bd Add my e-mail to copyrights 2001-12-11 16:00:47 +00:00
obrien
b85e71a82b An extra #ifdef crept in with rev 1.38. 2001-12-05 04:16:33 +00:00
obrien
298e21dbad Turn back on fmtcheck's attribute checks, guarded for non-GCC compilers.
Submitted by:	bde
2001-12-04 21:30:23 +00:00
obrien
d2081fa909 Remove the GCC'ism "__attribute__" from the 'fmtcheck' prototype.
I leave it up to someone else to fix this breakage properly.
2001-12-04 01:24:10 +00:00
markm
2149facaa0 Merge from master (crypto) telnet. WARNS fixes for alpha. 2001-12-03 12:41:19 +00:00
mike
c0aedffa21 Add a missing underscore.
Submitted by:	fenner
2001-12-01 03:48:15 +00:00
mike
20cacce16c o Stop abusing MD headers with non-MD types.
o Hide nonstandard functions and types in <netinet/in.h> when
  _POSIX_SOURCE is defined.
o Add some missing types (required by POSIX.1-200x) to <netinet/in.h>.
o Restore vendor ID from Rev 1.1 in <netinet/in.h> and make use of new
  __FBSDID() macro.
o Fix some miscellaneous issues in <arpa/inet.h>.
o Correct final argument for the inet_ntop() function (POSIX.1-200x).
o Get rid of the namespace pollution from <sys/types.h> in
  <arpa/inet.h>.

Reviewed by:		fenner
Partially submitted by:	bde
2001-12-01 03:43:01 +00:00
rwatson
a0b8ba62fd o Improve consistency of style by fixing tabs around _PATH_AUTHCONF. 2001-11-30 16:25:09 +00:00
rwatson
e5f733cc4d o Introduce _PATH_CAPABILITY and _PATH_CAPABILITY_DB to the system
path set.  These files will hold per-user capability information.

Obtained from:	TrustedBSD Project
Submitted by:	tmm
2001-11-30 16:24:20 +00:00
bde
cb794aeac8 Oops, actually fix the namespace pollution for atoll() as the previous
commit claimed to do.
2001-11-29 07:08:56 +00:00
bde
cc3f58540b Fixed namespace pollution and/or breakage of K&R and C90 support related to
the following functions in the following commits:
- atoll() in revs 1.23-1.25
- llabs() and lldiv() in revs 1.22
- strtoq() and strtouq() in revs 1.18
C99 functions must not be declared in C90/POSIX.1-1990 sections, and
"long long" must not be exposed to compilers that don't support it.

Fixed style bugs (mainly misindentation and disorder) related the
following functions in the following commits:
- atoll() in revs 1.23-1.25
- getprogname() in rev.1.21
- sranddev() in revs 1.19-1.20
- strtoq() and strtouq() in rev.1.13
- user_from_uid() in rev.1.1
Breakage of K&R and C90 support used to be avoided by conditializing the
"long long"s for strtoq() and strtouq() on __STRICT_ANSI__, but the
conditionals should have gone away in rev.1.13 when the "long long"s went
away (the problem was moved to the places that declare quad_t and u_quad_t).
2001-11-28 19:52:25 +00:00
bde
131d4937c0 Fixed namespace pollution in previous commit. The C99 function
sterror_r() must not be declared in the C90/POSIX.1-1990 section.
Put it in the nonstandard section for now.
2001-11-28 19:02:01 +00:00
ache
ea6b9a4d03 Whitespace formatting 2001-11-28 02:18:53 +00:00
ache
879d96aeb6 Fix just added atoll prototype 2001-11-28 01:51:00 +00:00
ache
58de837716 Add atoll(3) to conform POSIX and C99 2001-11-28 01:22:08 +00:00
wes
bdb2c68332 Add strerror_r function per Posix prototype.
Reviewed by:	Mike Barcroft <mike@FreeBSD.org>
MFC after:	2 weeks
2001-11-27 07:39:46 +00:00
green
0deda355ca Introduce readpassphrase(3), a superset of getpass(3). This
comes originally from Todd Miller.

Obtained from:	OpenBSD
2001-11-20 15:15:42 +00:00
green
a29d7f0fbb Install LOMAC includes from the new directory. 2001-11-20 14:37:07 +00:00
jhb
9f1e9b7b89 Use fixed-size fields in the structure for the timed protocol. This
includes changing a struct timeval to an explicit structure of two
int32_t's.  This requires using temporary timevals in several places
when calling gettimeofday(), settimeofday(), etc.  With this timed now
works properly on 64-bit platforms such as Alpha.

Obtained from:	NetBSD
2001-11-20 06:36:09 +00:00
green
dc8e2b7584 Install LOMAC public headers.
Sponsored by:	DARPA, NAI Labs (CBOSS project)
2001-11-19 05:10:50 +00:00
mike
77077eee7a o Implement imaxabs(), imaxdiv(), llabs(), lldiv().
o Update abs(3), div(3), labs(3), ldiv(3) to reflect standards
  conformance and add additional references.

Reviewed by:	bde, wollman
2001-11-15 02:05:03 +00:00
alfred
5abbadc483 NFS split forgot to prototype nfsclnt() syscall, do it. 2001-11-13 09:07:31 +00:00
ru
77df879d01 - Put missing prototype for rcmd() in <unistd.h>.
- Clean up the manpage.
- style(9) rcmdsh.c.

Committed from:	BSDCon/EU 2k+1 terminal room
2001-11-09 15:19:25 +00:00
obrien
7994503f08 Traditionally work in the -traditional case.
Submitted by:	joerg
2001-11-07 23:14:31 +00:00
peter
5d791806c8 Remove FreeBSD/vax and FreeBSD/tahoe support.
Add $FreeBSD$

Submitted by:	phk
2001-11-03 08:38:54 +00:00
mike
3df91ed4db o Add new header <sys/stdint.h>.
o Make <stdint.h> a symbolic link to <sys/stdint.h>.
o Move most of <sys/inttypes.h> into <sys/stdint.h>, as per C99.
o Remove <sys/inttypes.h>.
o Adjust includes in sys/types.h and boot/efi/include/ia64/efibind.h
  to reflect new location of integer types in <sys/stdint.h>.
o Remove previously symbolicly linked <inttypes.h>, instead create a
  new file.
o Add MD headers <machine/_inttypes.h> from NetBSD.
o Include <sys/stdint.h> in <inttypes.h>, as required by C99; and
  include <machine/_inttypes.h> in <inttypes.h>, to fill in the
  remaining requirements for <inttypes.h>.
o Add additional integer types in <machine/ansi.h> and
  <machine/limits.h> which are included via <sys/stdint.h>.

Partially obtain from:	NetBSD
Tested on:		alpha, i386
Discussed on:		freebsd-standards@bostonradio.org
Reviewed by:		bde, fenner, obrien, wollman
2001-11-02 18:05:43 +00:00
dillon
cdd5ebd3b2 Add time_to_int(), int_to_time(), time_to_long(), long_to_time(). 2001-10-28 20:13:16 +00:00
dillon
41f4e0eb17 Make the protocol/dumprestore.h header match restore's idea of the dump
header for the case where sizeof(time_t) != sizeof(int).  dumprestore.h
was embedding time_t when it should have been embedding int32_t.

Use time_to_time32() and time32_to_time() to convert between the
protocoll/file-format time and time_t.
2001-10-28 20:01:38 +00:00
dillon
5b521f3c4f Add routines to convert time_t to/from fixed-bit fields. These routines
serve two purposes: (1) so we can maintain backwards compatibility with
protocols (rwhod, dump, etc...) that either assume time_t is 32 bits or
assume sizeof(time_t) == sizeof(int), or make other similar assumptions.
(2) To tag such routines (by the presence of these calls) for future
cleanup/extension work.

The 32->64 routine, time32_to_time() (when time_t is 64 bits, that is),
is defined specifically to implement temporal locality to properly set the
msb bits of a 64 bit time_t quantity, using the 50 year rule.  The locality
code has not been implemented yet (and doesn't need to be for a while),
but that is the intent.   This will allow us to maintain backwards protocol
compatibility past 2038.

These routines are intended to be platform and time_t agnostic.

MFC after:	1 week
2001-10-28 19:54:49 +00:00
peter
1db36b0438 ll_time and ut_time are int32_t on disk and have to remain that way
unless we dont want to run 4.x binaries any more.
2001-10-27 20:40:54 +00:00
mike
1521c8f921 Restore K&R prototype. Fix other style bugs.
Reviewed by:	asmodai, bde
2001-10-27 19:37:20 +00:00
markm
4c52c72d92 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
wollman
2ffad81b17 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
asmodai
48519c4a69 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
bde
2bf72ff243 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
ache
6666c1f577 Implement strcasestr() which many others (f.e. Linux) already have 2001-10-10 02:19:09 +00:00
mike
9a27a4f0fe 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
wpaul
6c9e575b19 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
bde
18b78355b8 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
bde
7e16402646 Fixed some style bugs. 2001-10-04 07:39:14 +00:00
bde
55491453e2 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
obrien
44ed85af6b Back out WIP that snuck in with revs 1.15[23]. 2001-10-01 21:09:21 +00:00
obrien
ca548e6f6c Merge style with NetBSD -- ANSI-C prototypes, style(9) tabing, etc. 2001-10-01 21:07:33 +00:00
obrien
f02738076d Merge functional changes from NetBSD. 2001-10-01 21:06:25 +00:00
obrien
d9494059c0 *** empty log message *** 2001-10-01 08:43:58 +00:00
obrien
fd227b9658 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
rwatson
be73dee8bb 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
1bfa117a36 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
68a5e33921 Userland part of nfs client/server split and cleanup. 2001-09-18 23:34:44 +00:00
peter
ee6e4387ac Stop gcc's fixincludes making an exception for this file 2001-09-10 01:15:48 +00:00
ru
04e9739ff7 Sort FILES. 2001-09-06 07:27:03 +00:00
phantom
84039966fd add monetary.h as per POSIX requirement 2001-09-05 18:50:56 +00:00
obrien
34ad4938d7 style(9) the structure definitions. 2001-09-05 01:36:46 +00:00
mike
60684be840 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
09d5d58bc5 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
dd
0585574d9b 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
3e5894fd23 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
ru
95ce4d2cdc Removed duplicate VCS ID tags, as per style(9). 2001-08-13 14:06:34 +00:00
asmodai
6294027bad Remove comment, which didn't even help anyway.
Submitted by:	bde, long ago
2001-08-13 13:29:29 +00:00
imp
3e581274aa Make the name parameter const char *. 2001-08-11 05:16:00 +00:00
mikeh
b925de092b 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
fe081b1a18 Remove namespace pollution.
PR:		14327
Reviewed by:	des
Approved by:	des
MFC after:	7 days
2001-07-22 18:10:08 +00:00
jasone
a9a7a5e9d6 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
obrien
f4b8f61c0d VCS ID fixup 2001-07-10 17:50:46 +00:00
iedowse
dd53c9014e 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
wollman
204b9a8a22 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
2b68a1d009 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
ru
0d5bbb0349 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
ru
ebf16ff178 Complete prototype for fts_compar. 2001-06-13 14:59:57 +00:00
ume
32dc912feb 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
obrien
c02ba9bc90 Update copyright. 2001-06-09 05:22:31 +00:00
jlemon
e6c332ef48 Fix previous commit which inadverdently deleted a section. 2001-06-07 05:04:53 +00:00
jlemon
1c01a56a7d Relocate IPFilter from sys/netinet to sys/contrib/ipfilter. 2001-06-07 04:06:21 +00:00
joerg
e85616f494 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
phk
9649cf76ef Remove MFS. 2001-05-29 20:26:51 +00:00
rnordier
e39caed479 Drop nested __P(). This trips up Supelec's dcc. 2001-05-27 19:57:36 +00:00
ru
05f3be90b2 - 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
obrien
798f9a9b1c Include elf32.h and elf64.h to be more code compatable with Solaris. 2001-05-25 21:46:22 +00:00
ru
8094d979ca - 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
obrien
c2dacad2c3 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
ru
bbc05b90b8 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
ru
455d640317 Argh, unbreak SHARED=copied case. 2001-05-23 15:28:53 +00:00
ru
35437d86aa - 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
ru
e524c8ccab Get rid of LSYMSUBDIRS by merely setting up symlinks to LNOHEADERDIRS. 2001-05-21 12:37:04 +00:00
brian
c5e58141de Back out previous commit. digiio.h has moved to /usr/include/sys 2001-05-19 09:29:12 +00:00
obrien
7337900f27 Add mbstate_t and wint_t. 2001-05-18 05:50:26 +00:00
brian
d46af0e09d 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
ru
fca4d51ba4 Install wchar.h and wctype.h.
Forgotten by:	tshiozak
2001-05-16 11:38:18 +00:00
dd
1bdb5430ed 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
tshiozak
e2bb65a7f1 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
tshiozak
7cf2738d94 initial import of wchar.h and wctype.h
Obtained from:	NetBSD and Citrus XPG4DL
2001-05-15 19:35:57 +00:00
obrien
7bd614e73f 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
obrien
be0936b342 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
obrien
538e761e02 * 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
ache
02fc5bae58 Move sranddev() to !ANSI_SOURCE !POSIX_SOURCE section
Pointed out by: bde
2001-04-23 09:32:06 +00:00
ache
3cddd0dd36 Add sranddev() prototype 2001-04-23 02:29:51 +00:00
obrien
9cc16de19f 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
f0669d6c9e 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
3c55192143 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
0f958ee746 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
bp
9487b4dd9b Actually install include/fs/smbfs and include/netsmb directories. 2001-04-11 09:00:09 +00:00
phk
e98b608bfe 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
wpaul
65391cf528 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
43f4ccfaee give the "netgrent" functions a home in netdb.h 2001-03-27 09:49:03 +00:00
alfred
1b69226cd6 const'ify 2001-03-27 09:43:09 +00:00
alfred
2393aaf764 fix: text following `#else' violates ANSI standard
Pointed out by: ${BDECFLAGS}
2001-03-26 00:35:23 +00:00
ume
aabe84d0cb 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
8e5f42ddb8 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
8e3af36321 forgot prototyle for __rpc_get_local_uid() 2001-03-22 18:44:57 +00:00
alfred
e345ef4811 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
fb24675dcc 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
c0be98ba61 comment out #pragma directive containing Sun SCM tags 2001-03-20 08:20:50 +00:00
alfred
5174ce136a Add missing comma when KERBEROS is defined. 2001-03-19 19:36:11 +00:00
jlemon
b7db4c94c3 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
f67e4a8fc7 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
ache
3961d86ab3 Add D_MD_ORDER (local extension) to get month/day order from locale 2001-03-19 11:53:34 +00:00
ume
97ef17ff72 Nuke non-standard EAI_RESNULL. 2001-03-17 14:25:23 +00:00
obrien
84709752a1 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
6d776c5003 mark pthread_exit() as non-returning.
Requested by: Farooq Mela <fmela0@sm.socccd.cc.ca.us>
2001-03-04 22:17:52 +00:00
deischen
2d1163e370 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
obrien
bb70e1687a Impliment the ISO-C99 strto[u]ll()
and rewrite strto[u]q() in terms of it.
2001-02-27 13:33:07 +00:00
ume
4c1233433d 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
9a1ce7893a Be extra certain that "#include <osreldate.h>" must not be used in
kernel code.
2001-02-18 20:44:06 +00:00
imp
51cffb6bac 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
ume
bf66c2eda8 Correct 2nd argument of getnameinfo(3) to socklen_t.
Reviewed by:	itojun
2001-02-15 10:35:55 +00:00
peter
1c970ba5b3 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
21629372f8 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
06fa925192 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
deischen
d5657ce8b6 libc MT-safety, part 2.
Add a lock to FILE and define an additional flag.
2001-02-11 22:04:18 +00:00
phantom
2d3793614b add langinfo.h 2001-02-08 17:14:28 +00:00
phantom
043f9a3fa1 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
asmodai
166df89947 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
asmodai
7dcfea0100 Fix typo: compatability -> compatibility.
Compatability is not an existing english word.

Add $FreeBSD$.
2001-02-06 12:04:54 +00:00
asmodai
47a2266000 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
bde
1fafc41400 Declare strunvisx(). 2001-02-06 01:15:32 +00:00
deischen
274959d593 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
f7920f6761 Move MD <machine/if_wavelan_ieee.h> to MI <dev/wi/if_wavelan_ieee.h> 2001-01-09 00:50:45 +00:00
sheldonh
a722f84812 Remove struct.h, which has been punted into the Attic. 2001-01-03 12:35:39 +00:00
phk
cde0f52fcd Finally put this mistake to rest. 2001-01-03 10:04:45 +00:00
deischen
d8b31c7943 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
phk
6180841d0a Use TAILQ instead of CIRCLEQ. 2000-12-29 20:25:01 +00:00
jasone
a877c14171 Remove prototypes for pthread_attr_[gs]etfloatstate(), which we don't
implement.
2000-12-28 18:46:21 +00:00
deischen
45428979ec 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
obrien
c2ee1dcc02 Add `_PATH_DEVZERO'.
Use _PATH_* where where possible.
2000-12-09 09:35:55 +00:00
deischen
507950431d 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
phk
a2f3d44766 Make <struct.h> #error instead of #warn that it is going away on jan 1st. 2000-12-01 22:15:56 +00:00
alfred
283f072077 remove unneeded sys/ucred.h include 2000-11-30 18:33:02 +00:00
asmodai
54bcb032de 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
phk
5df764b518 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
phk
54ca48450c 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
b93e97d898 Add netnatm to LDIRS
Submitted by:	Makoto MATSUSHITA <matusita@jp.FreeBSD.org>
2000-10-16 07:00:18 +00:00
dwmalone
7fc1fa1654 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
jdp
5cb81fbe56 Add a definition for RTLD_DEFAULT. 2000-09-19 04:24:50 +00:00
jdp
b0c44b0f1d 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
asmodai
df683ace98 Welcome stdbool.h. A header file from the ANSI C99 specification.
It defines the boolean values.
2000-09-16 07:28:44 +00:00
ache
d331a0c108 Use MTREE_FOLLOWS_SYMLINKS option
This is part of whole subsystem fixing

Reviewed by:	imp
2000-09-15 08:08:04 +00:00
ru
8160e83fc7 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
69183b2b83 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
nectar
748554442d 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
5990f9fefc 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
des
355bb561f3 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
green
67c40ef892 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
jhb
14e8818587 Revert gratuitous whitespace changes from revisions 1.111 and 1.112. 2000-08-17 07:51:48 +00:00
peter
c749b2743d 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
510255570c 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
nsayer
653b65714e 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
ache
5973e7a1a6 Add -L to mtree 2000-07-16 08:19:49 +00:00
alfred
fc2b721d26 fix spelling errors.
Pointed out by: bde
2000-07-07 16:52:24 +00:00
alfred
9cf69c30c9 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
itojun
09cb034585 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
4b9cb06856 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
5a1e6c960d bring in binary search tree code.
Obtained from: NetBSD
2000-07-01 06:55:11 +00:00
nsayer
6405d79248 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
joe
c747c3c63a Add strtofflags and fflagstostr to libc. 2000-06-17 11:55:57 +00:00
jake
961b97d434 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
d93fbc9916 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
4c8f8a80b1 Install /usr/include/dev/ppbus as well as dev/usb 2000-05-19 22:08:18 +00:00
bde
8e84288c32 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
jhb
13d30a3d17 Finish moving all IEEE fp types to be the same on all arch's. 2000-05-10 19:41:40 +00:00
obrien
4c9cbbd684 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
jlemon
64238f2a36 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
jlemon
9b6c0ec9af Create <event.h> -> <sys/event.h> link that I forgot earlier.
Reminded by:	ache
2000-04-16 22:31:49 +00:00
ru
c7d280efd4 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
jasone
5a8478e839 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
obrien
049c6bbad0 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
shin
63ef3be5d6 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
joe
b57f9be4b7 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
shin
9742b65930 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
jdp
d360ce9343 Add a #define for RTLD_LOCAL as required by the Single Unix
Specification.
2000-01-29 01:53:35 +00:00
joe
f1a9497df5 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
36c90d4614 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
7f0f3f3358 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
shin
eb4463295b 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