Commit Graph

1155 Commits

Author SHA1 Message Date
uwe
b2822da5b4 Get rid of the #if !HAVE_NBTOOL_CONFIG_H kludge. None of host tools
uses this header now.
2005-08-27 22:55:54 +00:00
christos
3303764533 64 bit inode changes 2005-08-19 02:04:54 +00:00
christos
b43b0b010f Add strerror_r. 2005-07-28 16:26:53 +00:00
christos
1f35645781 Add log2f 2005-07-21 12:56:29 +00:00
christos
76e7e3ea51 Cast large constant to int. 2005-07-16 17:20:12 +00:00
drochner
ecef4b3d3f The source array of lsearch() shouldn't be "const".
Being here, cleanup the const castaway stuff.
2005-07-06 15:47:15 +00:00
he
8d673b50bf Add const to the tsptype array, compiled under TSPTYPES.
Found while building for vax.
2005-07-05 21:57:08 +00:00
thorpej
65412a2710 Implement expansion of special "magic" strings in symlinks into
system-specific values.  Submitted by Chris Demetriou in Nov 1995 (!)
in PR kern/1781, modified only slighly by me.

This is enabled on a per-mount basis with the MNT_MAGICLINKS mount
flag.  It can be enabled at mountroot() time by building the kernel
with the ROOTFS_MAGICLINKS option.

The following magic strings are supported by the implementation:

	@machine	value of MACHINE for the system
	@machine_arch	value of MACHINE_ARCH for the system
	@hostname	the system host name, as set with sethostname()
	@domainname	the system domain name, as set with setdomainname()
	@kernel_ident	the kernel config file name
	@osrelease	the releaes number of the OS
	@ostype		the name of the OS (always "NetBSD" for NetBSD)

Example usage:

	mkdir /arch/i386/bin
	mkdir /arch/sparc/bin
	ln -s /arch/@machine_arch/bin /bin
2005-06-23 00:30:28 +00:00
dyoung
a37289db57 Make disklabel(8) and fdisk(8) into "host tools " last step: build
and install ${TOOLDIR}/bin/${MACHINE_GNU_PLATFORM}-disklabel,
${TOOLDIR}/bin/${MACHINE_GNU_PLATFORM}-fdisk by "reaching over" to
the sources in ${NETBSDSRCDIR}/sbin/{disklabel fdisk}/.

To avoid clashes with a build-host's header files, especially on
*BSD, the host-tools versions of fdisk and disklabel search for
#includes such as disklabel.h, disklabel_acorn.h, disklabel_gpt.h,
and bootinfo.h in a new #includes namespace, nbinclude/.  That is,
they #include <nbinclude/sys/disklabel.h>, <nbinclude/machine/disklabel.h>,
<nbinclude/sparc64/disklabel.h>, instead of <sys/disklabel.h> and
such.  I have also updated the system headers to #include from
nbinclude/-space when HAVE_NBTOOL_CONFIG_H is #defined.
2005-06-12 19:46:15 +00:00
christos
08cd5f47c8 Add a macro __MKTEMP_OK__ that renames mktemp() to _mktemp() for uses that
have been checked, so that the linker does not warn us. There are valid
uses for mktemp() such as for creating filenames that are going to be
targets of the rename system call. Discussed with lukem.
2005-06-11 22:58:42 +00:00
christos
5b18fe838f PR/30503: Nicolas Joly: swapctl(2) prototype does not match corresponding
syscall
2005-06-11 22:54:43 +00:00
kleink
926eae7f66 Include <sys/ansi.h> after <sys/cdefs.h>; from Neil Booth in PR lib/30072. 2005-05-25 20:45:38 +00:00
kleink
691c56aa2e Belatedly move snprintf() and vnsnprintf() into the XPG4.2/C99 section. 2005-05-25 19:35:07 +00:00
kleink
13034da908 Add restrict qualifiers to fopen()/freopen() arguments. 2005-05-25 16:01:24 +00:00
kleink
abf1d9c9d1 Make namespace protection feature tests for reentrant functions more
accurate (and actually less restrictive).
2005-05-24 17:36:29 +00:00
kleink
484c40cd9f Remove the compatibility select() prototype. Going back to Lite2 select(2)
has also mandated <sys/time.h> to be included, which is now sufficient
for the prototype and all related declarations; thus the local duplicate
of the prototype can be removed.  Approved by Christos.
2005-05-22 19:10:15 +00:00
christos
cf3e6ebd2b add t_putws 2005-05-15 21:10:52 +00:00
thorpej
f2b0a44663 u_short -> uint16_t 2005-05-15 21:01:34 +00:00
dsl
54cc3da266 Make the arg to getnetconfigent const char * to match the man page (and
likely calling code).
2005-05-15 20:54:41 +00:00
christos
75b76923c6 Wide stdio functions. 2005-05-14 23:51:42 +00:00
kleink
9020a25f08 Instead of pulling in all of <wchar.h>, just define wchar_t here.
Addresses PR lib/29987.
2005-04-18 19:47:51 +00:00
kleink
4e3cae58ff Move the (at this time private) get{proto,serv}ent_r() prototypes and
data structures into the libc sources until the interface gets redone.
Approved by christos.
2005-04-18 19:39:45 +00:00
rillig
7f8368c35e Replaced the macro name "notyet" with a 0. There's always the possibility
that a strictly conforming C program uses that name itself, so it had to
be removed. Also put the long comment above the #if 0, because it describes
the #if, not the isblank() macro. Added two blank lines to make the grouping
clear. Approved by kleink.
2005-04-15 23:46:07 +00:00
christos
9f184f48a4 Add no-return attribute to all longjmp flavors. Approved by kleink. 2005-04-15 16:58:13 +00:00
christos
ada3b096d0 Add FreeBSD's strfmon(3). From Rui Paulo. No bump this time. Take advantage
of the getpwent_r bump.
2005-04-03 20:09:29 +00:00
christos
a4d6d34976 Add getpwent_r, getgrent_r 2005-04-02 04:54:35 +00:00
christos
eb808713b7 PR/29826: J. T. Conklin: Add wcsftime(3) (from FreeBSD) 2005-03-30 03:47:11 +00:00
kleink
b9a719ae1e Add restrict qualifiers to remaining <signal.h> function arguments. 2005-03-22 20:25:31 +00:00
kleink
98061f1fca * Add restrict qualifiers to tdelete() function arguments.
* Const-poison tfind()'s rootp argument, per SVID Issue 1 and later.
2005-03-22 20:13:42 +00:00
kleink
53b42c4e52 Add restrict qualifiers to getaddrinfo() and getnameinfo() arguments. 2005-03-21 13:30:50 +00:00
kleink
d5d8554049 Add restrict qualifiers to dlsym() (XSI) and dladdr() arguments. 2005-03-21 13:25:22 +00:00
kleink
f62b22c92b Remove already #if 0'ed getipnode*() prototypes and related definitions;
we are not going to ship those.
2005-03-17 10:16:14 +00:00
perry
93c3898449 Add prototype for memmem(3). It is API compatible with the version in Linux. 2005-03-13 15:09:50 +00:00
kleink
1c7e2b47c4 Provide select() and pselect() prototypes in <sys/select.h>, per
1003.1-2001, and leave the select() prototype in <unistd.h> for
compatibility.  To allow for transition, reorganization of this is
deferred until netbsd-3 gets branched.
2005-03-05 19:48:38 +00:00
dsl
d4ffd091c4 Change __aconst to const so I can compile systat and vmstat with WARNS=3 2005-02-26 21:16:35 +00:00
christos
1f09c87798 Add newer constants from FreeBSD and constify. 2005-02-19 21:57:19 +00:00
kleink
fd5cb0acea A little libc namespace housekeeping exercise:
* Make vfprintf_unlocked() an internal function, c.f. __svfscanf_unlocked().
* Add internal names for arc4random(), endnetpath(), fhstatvfs(),
  fstatvfs(), mkstemp(), shquote(), statvfs(), taddr2uaddr(), uaddr2taddr(),
  uuid_create_nil(), uuid_is_nil(), and wcwidth().
* Include namespace.h where supposed to.
2005-02-09 21:35:46 +00:00
perry
fc7ef6c165 remove obsolete register declarations. 2005-02-06 04:41:40 +00:00
perry
bbac53bdab Remove "register" from a comment. Kind of silly for it to have been
listed as a parameter for a function anyway...
2005-02-06 04:40:51 +00:00
perry
ee5442c7d9 remove obsolete "register" declarations 2005-02-06 04:38:18 +00:00
perry
19b7469a00 de-__P -- the hack is long since useless. Discussed with christos,
matt, kleink, others. Approved by christos.
2005-02-03 04:39:32 +00:00
drochner
e3842bbd8e Remove the remains of "struct sigcontext" and sigreturn() from the
user visible namespace.
These weren't supported interfaces for a while (it just happened to
work with COMPAT_16 kernels).
There are still internal uses in compat code and as jmp_buf format,
but this is all md code which uses <machine/signal.h>.
with christos' agreement
2005-01-20 20:42:05 +00:00
christos
4f49701cc6 modify footprint of pw_gensalt(). 2005-01-12 03:33:32 +00:00
christos
ce097a4b71 add pw_getpwconf() 2005-01-12 03:33:11 +00:00
christos
a2bc0c9d37 Add pw_gensalt, remove bcrypt_gensalt. 2005-01-11 22:41:50 +00:00
lukem
1e281ed227 Only #define HAVE_IPV6 if ${USE_INET6} != "no". 2005-01-10 03:11:17 +00:00
lukem
a3665ef9cf Implement getgroupmembership(3). This is similar to getgrouplist(3), except
that the "int maxgroups" and "int *ngroups" parameters are separated into
two separate parameters which makes it possible to call multiple nsswitch
back-ends and have the results correctly merged.
getgrouplist(3) is now implemented using getgroupmembership(3).

Proposed on tech-userlevel on December 1, 2004.
2005-01-06 15:10:45 +00:00
christos
0e466f4a8a Provide forward struct declarations for struct sigcontext*; this will allow
us to get rid of them in the machine/signal.h files.
2004-12-31 18:06:16 +00:00
christos
0e1ce86abc cast 1 to size_t 2004-12-30 04:58:40 +00:00
atatat
2803cf768c Add a function called getdevmajor().
It tells you the major device number for whatever character or block
device you ask it.  This is sort of the inverse of devname(3) but not
quite, since it's backed by the kernel (sysctl's kern.drivers
information) and not a database cobbled together from the contents of
the filesystem.
2004-12-16 03:54:56 +00:00
nathanw
5229c9f993 Nuke threadlib.h. Library defensive threading is now provided through the
normal pthread.h interface.
Move stubs for libc back into a libc-internal header.
2004-12-14 00:23:19 +00:00
nathanw
30b299d965 __libc_thr_yield() signature now matches sched_yield().
Pointed out by Kouichirou Hiratsuka on current-users.
2004-12-13 16:08:12 +00:00
christos
402493043d Sprinkle const. 2004-12-11 06:41:57 +00:00
christos
678d9ffc1a Add _PATH_FTPUSERS; sort. 2004-12-11 06:01:33 +00:00
nathanw
0eaa8971b7 Use CPP macros to cause many libpthread functions used by applications
to be transformed into the do-nothing-when-libpthread-isn't-linked libc
stub names. This will permit library code that uses <pthread.h> and pthread
functions "defensively" to not need to link against libpthread and not need
to be patched to the threadlib.h API.
2004-12-10 16:40:40 +00:00
christos
36b10a0f21 Add _PATH_BPF 2004-12-01 22:51:50 +00:00
christos
52dcabadf5 Add sockaddr_snprintf() 2004-11-19 21:39:03 +00:00
itojun
384b8c15c2 remove NI_WITHSCOPEID 2004-11-16 06:00:51 +00:00
christos
bcec1bd48c Add _PATH_DEV_PTS 2004-11-11 03:10:57 +00:00
lukem
5994f053ec * Improve the comments in <nsswitch.h>
* Provide some more useful default ns_src arrays.
2004-11-10 07:23:32 +00:00
lukem
246f6fd919 Implement sysconf(3) _SC_GETGR_R_SIZE_MAX and _SC_GETPW_R_SIZE_MAX for
the 1003.1-2001 Thread Safe Functions (TSF) getgrnam_r(3) and getpwnam_r(3).

These are not implemented in sysctl(3) "user.*", since that adds a lot
of complexity in the implementation for no real benefit.
2004-11-10 04:02:52 +00:00
christos
88ae7d9d8f Resolve conflicts. 2004-11-07 01:48:01 +00:00
christos
98e5db9d1f Re-import these. I imported the old ones accidentally. 2004-11-07 01:28:27 +00:00
dsl
96a5d45d4c Remove the (int) cast from the array subscript of the ctype #defines.
The cast just stops gcc detecting places where the functions are
passed a 'char' variable - and will index off the array for byte values
0x80 to 0xff.
All (I hope) of the places in the netbsd sources where this was a
potential problem have had an (unsigned char) cast applied.
Christos said he'll fix any fallout I've missed.
2004-11-05 22:55:19 +00:00
lukem
45a7a69275 Overhaul the use of nsdispatch(3) by public APIs so that the back-end
methods use va_list in a manner that is directly related to the public API.
This makes it much easier to write dynamic nsswitch backends for getpwent(3).
Per my proposal on tech-userlevel.

Implement getpwgid_r() and getpwnam_r() APIs per the POSIX 1003.1, 2004 Ed.
These aren't fully reentrant or threadsafe yet, because the compat stuff
currently uses non-reentrant data sources (getnetgrent(3), getpwent(3)),
and there is probably some locking to be improved in the backends.
This will be fixed in the near future.
We also need to add _SC_GETPW_R_SIZE_MAX to sysconf(3).

Fix the compat `+' prototype override so getpwnam(3) and getpwuid(3) DTRT.

Improve the description of pw_class and pw_gecos.
2004-10-05 04:45:54 +00:00
lukem
c54f283e46 Overhaul the use of nsdispatch(3) by public APIs so that the back-end
methods use va_list in a manner that is directly related to the public API.
This makes it much easier to write dynamic nsswitch backends for getgrent(3).
Per my proposal on tech-userlevel.

Implement getgrgid_r() and getgrnam_r() APIs per the POSIX 1003.1, 2004 Ed.
These aren't fully reentrant or threadsafe yet, because the compat stuff
currently uses non-reentrant data sources (getnetgrent(3), getgrent(3)),
and there is probably some locking to be improved in the backends.
This will be fixed in the near future.
We also need to add _SC_GETGR_R_SIZE_MAX to sysconf(3).
2004-10-04 04:11:33 +00:00
lukem
25d91a60fb * Re-number NS_FORCEALL from 1<<7 to 1<<8, moving it out of the "public"
bitrange for nsdispatch(3) return values.
* Tweak documentation comments in nsswitch.h
* Ensure the result from the back-end method is masked with
  NS_STATUSMASK before nsdispatch(3) returns it.
2004-10-04 04:02:27 +00:00
kent
4a79196841 correct the return value type of _lwp_self() 2004-10-02 07:59:11 +00:00
lukem
e775b9e35a Implement NS_FORCEALL, which may be set in defaults[0].flags by a caller of
nsdispatch(3) to indicate that all available database methods for a source
will be invoked.  This is useful for functions such as endgrent(3).
2004-09-29 02:47:32 +00:00
lha
22aae06570 update heimdal version to Heimdal 0.6.3 2004-09-14 20:30:57 +00:00
lha
2c875217bb Merge in changes between 0.6.2 and 0.6.3 2004-09-14 08:08:19 +00:00
thorpej
de1dfb1250 DCE 1.1 RPC compatible UUID routines for libc, adapted from FreeBSD.
Encode/decode to big/little endian binary blob routines adapted from
kernel.

PR 23470.
2004-09-13 21:44:54 +00:00
christos
458810afd4 Typo... 2004-08-19 23:10:40 +00:00
christos
44a8d4af42 Rescue for _PATH_STDPATH 2004-08-19 23:07:01 +00:00
jmc
a2d438e65c Fix proto for gethostent to match reality (takes void args) 2004-08-17 04:24:16 +00:00
ginsbach
30ef75e3f4 Restore gethostent() as a supported interface. Yes, it maybe obsolete
but it is specified by IEEE Std 1003.1, 2004 Edition (POSIX) and
the X/Open standards (Issue 6 and XNS 5.2).

* revert change removing gethostent() from gethostbyname(3) man page
* delete kruft from gethnamaddr.c leaving only gethostent() as a
  wrapper around _gethtent().
* revert recent changes to <netdb.h>
  + restore gethostent() prototype
  + restore freehostent() prototype; handle similar to non-shipped
    getipnodby*() prototypes
  + use correct XOPEN_SOURCE version (520 not 500) for freeaddrinfo()
    prototype; interface specified by XNS5.2 not XNS5

Reviewd by <christos> and <drochner>.
2004-08-17 02:29:56 +00:00
ginsbach
ebcc92c100 * add const qualifier making getrpcbyname() and getrpcbyname_r()
prototypes match those used in latest Sun RPC code (TI-RPC 2.3)
* modify function getrpcbyname() definition as appropriate
2004-08-16 02:47:54 +00:00
drochner
e6dd3245b7 Delete prototypes for gethostent() and freehostent();
there functions don't exist in libc.
2004-08-11 16:13:00 +00:00
thorpej
7c161da819 - Rename pw_copy() to pw_copyx(), make it return a success/failure code,
and add "errbuf" and "errbufsz" parameters so that errors can be handled
  gracefully, rather than simply exiting the process.
- Add a pw_copy() wrapper around pw_copyx() to preserve old behavior for
  apps that use it.
- Bump shlib version to 7.4.
2004-08-03 23:29:04 +00:00
tshiozak
f7d656a488 revert the last all changes related to iconv(3). 2004-08-02 13:38:21 +00:00
tshiozak
ab8d4be7c6 make sure that the iconv(3) follows the POSIX specification;
change the 2nd argument from "const char ** restrict" to "char ** restrict".
2004-08-01 16:40:58 +00:00
thorpej
43d6d8d887 Add support for dynamically loading nsswitch modules on ELF platforms.
Adapted from FreeBSD.  Maintains full backward API / ABI compatbility
with built-in-only nsdispatch().

While here, also make nsdispatch() itself thread-safe.
2004-07-24 18:42:51 +00:00
seb
2f8bbc118e Add wordexp(3). The wordexp function performs shell-style word expansions.
This implementation is wrapper around the undocumented wordexp sh(1)
built-in command.

From FreeBSD.
Provided in PR lib/26123.
Approved by kleink@.
2004-07-13 15:42:03 +00:00
kleink
2284f27adc Move round() to the C99 section. 2004-07-12 23:44:52 +00:00
kleink
cceefa7be9 Move the strcasestr() prototype to the local extensions section.
Also __P() it; this should be consistent within a single header.
2004-07-12 23:35:14 +00:00
junyoung
bc836a3102 lib/24252: Add C99 functions round(3) and roundf(3).
libm minor unchanged; ride a recent bump.

From FreeBSD.
2004-07-10 13:49:09 +00:00
junyoung
74d67c3551 Add strcasestr(3), case insensitive version of strstr(3).
Bump libc minor.

From FreeBSD.
2004-07-03 08:27:25 +00:00
kleink
7e47c9f64e Resolve some namespace protection confusion between XPG4.2 and 5/1003.1b,
making _XOPEN_SOURCE_EXTENDED work again.  Fixes PR lib/26077.
2004-07-01 23:46:07 +00:00
kleink
11f7fb5f29 Tidy up the namespace: lint -> __lint__. 2004-07-01 22:31:28 +00:00
drochner
147d852dbc being here, add the (l)lround(f) functions to libm
(almost the same like lrint)
2004-07-01 16:09:21 +00:00
drochner
b6fcfe5309 shut up lint's "long long" warnings 2004-06-30 17:51:09 +00:00
drochner
737ab05bf9 Add (l)lrint(f).
Being here, move some C99 function declarations into the appropriate
section (as discussed with kleink).
2004-06-30 15:11:05 +00:00
jmc
b2f782612f Completely rework how tools/compat is done. Purge all uses/references to
_NETBSD_SOURCE as this makes cross building from older/newer versions of
NetBSD harder, not easier (and also makes the resulting tools 'different')

Wrap all required code with the inclusion of nbtool_config.h, attempt to
only use POSIX code in all places (or when reasonable test w. configure and
provide definitions: ala u_int, etc).

Reviewed by lukem. Tested on FreeBSD 4.9, Redhat Linux ES3, NetBSD 1.6.2 x86
NetBSD current (x86 and amd64) and Solaris 9.

Fixes PR's: PR#17762 PR#25944
2004-06-20 22:20:14 +00:00
christos
e89baaa3bf Provide an ifdef so that we can define an old style _res if we need to. 2004-06-09 18:04:05 +00:00
mrg
5fb3053fed add $NetBSD$ 2004-06-06 06:58:50 +00:00
he
726e232131 Removr parameter names from __h_errno_set() function declaration.
Without this the vax port fails to compile the okheaders regression
test, because the "err" parameter name shadows a global variable.
2004-06-04 09:54:03 +00:00
kleink
a95e31fea6 Move declaration of closefrom(3) to local extensions. 2004-06-01 16:10:29 +00:00
itojun
56c1b44159 implement closefrom(3). 2004-05-31 05:06:51 +00:00
christos
388c103e83 PR/25003: John Kohl: File is missing a copyright. 2004-05-28 14:38:53 +00:00
christos
58fadb2d69 Add unix/98 pty function prototypes. 2004-05-27 02:58:14 +00:00