Commit Graph

958 Commits

Author SHA1 Message Date
bjh21 9656aaa598 P_tmpdir isn't in POSIX, so only define it for _XOPEN_SOURCE and
_NETBSD_SOURCE.
2003-06-05 17:51:10 +00:00
bjh21 37a103a1fa Namespace cleanup: _assert is in the application's namespace, and thus should
only be exposed if _NETBSD_SOURCE is defined.  To make life less complicated,
define _assert() in terms of assert(), since they always seem to have identical
definitions.

_assert() was removed back in 1993, but got reinstated with the 4.4Lite
import.  Maybe it should go again.  Nothing in the tree uses it.
2003-06-05 17:27:14 +00:00
christos 4e9f5413f5 Add RTLD_SELF, RTLD_NEXT, RTLD_DEFAULT, from FreeBSD 2003-05-30 15:44:03 +00:00
christos 0cc4f4a69e add mutex locking and dirent_r. 2003-05-28 20:04:12 +00:00
thorpej 200111747f Add long double support. 2003-05-17 20:42:28 +00:00
lha 3ca42f1c25 regenerate files for heimdal 0.6 2003-05-15 22:58:02 +00:00
bjh21 d2fb15abf0 bcrypt_gensalt() isn't defined in any X/Open standard I've got convenient
access to, so move it into the _NETBSD_SOURCE section.
2003-05-05 14:49:31 +00:00
bjh21 86abe62ffa Header cleanup:
* IPv6 functions are in POSIX-2001, so make them visible there.
* freehostent(), getipnodebyaddr() and getipnodebyname() are _only_ in
  XNS5.2, so don't expose them to XSH6 or POSIX applications.
2003-05-05 14:20:03 +00:00
bjh21 77de1304d5 Fix the signatures of inet_addr(), inet_lnaof(), inet_makeaddr(), inet_netof(),
and inet_network() to match XNS and (where applicable) POSIX.  This is largely
just the replacement of unsigned long with in_addr_t.

This constitutes a small ABI change on sh5, but scw (sh5 portmaster) thinks
that both the users of that port will be able to cope.  kleink claims the
change is ABI-neutral on other LP64 ports, and it's a no-op on ILP32 ports.
Hence, I'm doing it this way and avoiding the whole __RENAME dance.
2003-05-05 13:56:13 +00:00
lukem 803e64c800 add _PATH_RANDOM and _PATH_URANDOM 2003-05-03 03:24:01 +00:00
bjh21 8758baf5b6 Fix things so that _NETBSD_SOURCE correctly exposes the dirfd() and
the insides of struct _dirdesc.  Also make the existence of struct
_dirdesc visible to POSIX applications since this is less ugly than
pretending that DIR is a void *.
2003-04-29 23:08:13 +00:00
bjh21 3a344e272f Header file cleanup:
* Sort includes.
* isblank() is in C99, POSIX 2001 and XSH6.  Update ifdefs accordingly.
2003-04-29 12:49:38 +00:00
bjh21 fac4f2f505 Header file cleanup:
* Don't include <sys/param.h>
* Assume that NetBSD is a BSD system and hence has <sys/types.h>
* inet_pton() and inet_ntop() were in XNS 5.2 (not 5.0) and POSIX 2001.
  Update #ifdefs accordingly.

XXX Types of inet_addr() and inet_makeaddr() are still wrong.
XXX Might want __restrict on inet_ntop() and inet_pton().
2003-04-29 11:58:15 +00:00
bjh21 4be7a2dcf3 Add a new feature-test macro, _NETBSD_SOURCE. If this is defined
by the application, all NetBSD interfaces are made visible, even
if some other feature-test macro (like _POSIX_C_SOURCE) is defined.
<sys/featuretest.h> defined _NETBSD_SOURCE if none of _ANSI_SOURCE,
_POSIX_C_SOURCE and _XOPEN_SOURCE is defined, so as to preserve
existing behaviour.

This has two major advantages:
+ Programs that require non-POSIX facilities but define _POSIX_C_SOURCE
  can trivially be overruled by putting -D_NETBSD_SOURCE in their CFLAGS.
+ It makes most of the #ifs simpler, in that they're all now ORs of the
  various macros, rather than having checks for (!defined(_ANSI_SOURCE) ||
  !defined(_POSIX_C_SOURCE) || !defined(_XOPEN_SOURCE)) all over the place.

I've tried not to change the semantics of the headers in any case where
_NETBSD_SOURCE wasn't defined, but there were some places where the
current semantics were clearly mad, and retaining them was harder than
correcting them.  In particular, I've mostly normalised things so that
_ANSI_SOURCE gets you the smallest set of stuff, then _POSIX_C_SOURCE,
_XOPEN_SOURCE and _NETBSD_SOURCE in that order.

Tested by building for vax, encouraged by thorpej, and uncontested in
tech-userlevel for a week.
2003-04-28 23:16:11 +00:00
ragge 5a10a8c4a9 Add _PATH_KSYMS. 2003-04-24 20:13:05 +00:00
christos 290d5e3632 don't use TRUE or FALSE 2003-04-19 01:40:36 +00:00
kleink 8c5e6bc1d8 Well, _The_ Open Group. 2003-04-14 08:38:24 +00:00
kleink c9e531d4d4 Use the real TOG specification name for references. 2003-04-14 08:37:29 +00:00
jdolecek e75e2e6438 seteuid() and setegid() were adopted in IEEE Std 1003.1-2001 + X/Open
portability guide issue 6, adjust headers to expose the function
prototypes with appropriate _POSIX_C_SOURCE/_XOPEN_SOURCE defines
fixes standards/21136 by MAEKAWA Masahide
2003-04-14 08:12:11 +00:00
christos 8099c8302c add functions to retrieve option values. 2003-04-11 17:36:57 +00:00
kleink 13dee93fb3 1003.1-2001 has introduced unsetenv() which differs from the current
implementation in not permitting a "name=value" argument.
* Add a conforming __unsetenv13() and do function renaming for
  unsetenv(); preserve old symbol with old behavior.
* Make visible setenv() and unsetenv() for 1003.1-2001 feature selection
  macros; resolves PR standards/20479.
2003-04-07 13:41:13 +00:00
fvdl 42614ed3f3 Add support for UFS2. UFS2 is an enhanced FFS, adding support for
64 bit block pointers, extended attribute storage, and a few
other things.

This commit does not yet include the code to manipulate the extended
storage (for e.g. ACLs), this will be done later.

Originally written by Kirk McKusick and Network Associates Laboratories for
FreeBSD.
2003-04-02 10:39:19 +00:00
jdolecek bd2847705c install mntopts.h 2003-03-22 12:45:51 +00:00
jdolecek 1edd42a9d2 move getmntopts(3) to libutil, build and install also it's manpage
bump libutil minor
adjust individual mount_*/Makefile to use libutil getmntopts(3)
2003-03-22 12:43:57 +00:00
lha fb58dd8ee5 set version to 0.5nb2 (fix of Kerberos 4 protocol problem) 2003-03-20 19:25:48 +00:00
christos edd9f0f170 x_handy is currently used only by xdr_mem and contains the number of bytes
left. make it unsigned.
2003-03-19 23:51:55 +00:00
tshiozak 3f9925f700 add wcstoll, wcstoimax, wcstoull and wcstoumax. (lib/20656)
- these are defined in C99 (wcsto[ui]max) and SUSv3.
  - these implementations are written by sigsegv@s25.xrea.com,
    derived from NetBSD's wcstol/wcstoul.
  - I just added some comments.
2003-03-11 09:21:22 +00:00
tshiozak 5abc4b4f43 add fgetws() and fputws() (lib/20576).
Note: fgetws.c, fgetws.3, fputws.c and fputws.3 are obtained from FreeBSD,
and fitted by sigsegv@infoseek.jp and me.
2003-03-07 07:11:35 +00:00
tshiozak 326ed36874 changes related to lib/20576 and lib/20577.
- add wcstok() and wcswcs(),
  - add wcstok(3),
  - move btowc() and wctob() into each ctype modules,
  - bump ctype interface ABI version,
  - bump i18n modules' minor and
  - update sets.
and fix a stupid bug in _RUNE_ISCACHED macro.
2003-03-05 20:18:14 +00:00
tshiozak 5af70bc478 - add wctob() function. (I forgot it at the last commit.)
- fix btowc(); I quite misunderstood about it.
2003-03-03 07:39:53 +00:00
tshiozak 31e2cbf0b5 add some ISO C 1995 I18N functions and types:
btowc, wctrans, towctrans, wcscoll, wcsxfrm, wctype_t and wctrans_t.
2003-03-02 22:18:11 +00:00
bjh21 22ebd2b34b Add _Exit(), for C99 and POSIX-2001.
Proposed on tech-userlevel to a resounding silence in April last year.
2003-03-01 15:59:02 +00:00
kleink 898beee0b0 As with _REENTRANT, don't provide simple non-locking macro versions of
several functions when _PTHREADS is defined (usually via cc -pthread).
2003-02-27 15:56:04 +00:00
jdolecek af3d346a8c add POSIX sigtimedwait(), sigwaitinfo(), sigwait() - wait for queued signals
note these are for non-threaded programs only - libpthread will provide
it's own thread-aware wrapper
2003-02-15 21:11:47 +00:00
kleink d58cfc7d35 Sprinkle some restrict. 2003-02-05 23:13:07 +00:00
wiz 7bd6fd354d unknown, not unkown. Noted by mjl. 2003-01-28 22:19:22 +00:00
elric bcc72a236b The last change I made was a little aggressive in changing the paths of
the includes and broke cross builds from non-NetBSD arches.  In this I
revert the problem section.  (pointed out by uwe.)
2003-01-27 06:19:40 +00:00
elric 91654e3d23 Prepend krb5/ to include paths that live in /usr/include/krb5/ so that
we can deprecate the requirement of -I/usr/include/krb5 when building
kerberos apps.
2003-01-26 22:19:36 +00:00
fvdl a3ff3a3038 Bump daddr_t to 64 bits. Replace it with int32_t in all places where
it was used on-disk, so that on-disk formats remain the same.
Remove ufs_daddr_t and ufs_lbn_t for the time being.
2003-01-24 21:55:02 +00:00
kleink fb7df61857 Sprinkle some restrict. 2003-01-21 17:45:04 +00:00
kleink 95893ccc7b Need <sys/cdefs.h>. 2003-01-21 12:27:11 +00:00
christos 3f4a1907c6 add support for p1003.1b semaphores. From FreeBSD 2003-01-20 20:09:50 +00:00
thorpej 7dc01dbfab Add some threadlib stubs that are used by X:
* thr_create() (stub in libc aborts)
* thr_exit() (stub in libc calls exit())
* thr_yield() (stub in libc does nothing)

Also make the libc thr_self() stub not abort.

XXX Should we add thrattr_*() stubs for setting the detach-state?
2003-01-19 21:58:21 +00:00
thorpej 0c8ccd6d1f * Wrap decls in __BEGIN_DECLS/__END_DECLS.
* Add a thr_enabled() which returns the value of libc's __isthreaded
  variable, indicating whether or not threads are actually enabled.
2003-01-19 21:06:02 +00:00
thorpej 592409d356 Add mutexattr_init(), mutexattr_destroy(), and mutexattr_settype() (recursive
mutexes are used by the X libraries).
2003-01-19 20:46:11 +00:00
thorpej ba54189cb1 Expose libc's thread stubs, which get magically turned into real pthread
calls when the pthread library is linked in.  Simplifies making other
libraries (such as X's) thread-safe.
2003-01-19 19:24:39 +00:00
thorpej 08fd7e9bb7 Merge the nathanw_sa branch. 2003-01-18 18:05:05 +00:00
christos c6e0fe9a2b oops, erased word accidentally. 2003-01-18 17:12:13 +00:00
christos 32c802c315 avoid TMP_MAX redefinition 2003-01-18 17:10:16 +00:00
thorpej c62a74e6d5 Merge the nathanw_sa branch. 2003-01-18 10:32:11 +00:00
kleink 30a90a73b4 Add sighold(3), sigignore(3), sigrelse(3) and sigset(3) to libc.
Fixes PR lib/19212, now redesignated standards/19212, from David Laight.
2003-01-15 23:55:41 +00:00
tron 503456a35a Include "bsd.rpc.mk" before "bsd.prog.mk" to fix the "cleandir" target. 2003-01-11 13:28:43 +00:00
wiz c053751628 compatibility, not compatiblity. 2003-01-06 13:26:24 +00:00
wiz 4824190751 transmission, not transmition. 2003-01-06 13:17:01 +00:00
sommerfeld 8f6f405641 Use <bsd.rpc.mk> 2003-01-05 19:24:06 +00:00
augustss 4be0da5b3b Add _PATH_SYSMON. 2003-01-01 12:15:16 +00:00
atatat 5ea6c6f13e Spelling police. "__resitrct" was not spelled cirectly enough. 2002-12-20 20:59:22 +00:00
lukem 32d2556b0c this needs <sys/types.h> 2002-12-12 23:00:37 +00:00
scw 0c83fd4944 Add getlabelsector() and getlabeloffset() as wrappers around the
KERN_LABELSECTOR and KERN_LABELOFFSET sysctls.
2002-12-12 09:45:32 +00:00
christos d8c7cd31c5 New auth length defines. We don't play with sockaddr for now. Also make
the list of commands const.
2002-11-30 04:02:19 +00:00
lukem b1e79510cf - Migrate fparseln(3) from libutil to libc, where it should have been in
the first place...
- Bump libutil major (to 7.0) and libc minor (to 12.91).
2002-11-30 03:04:44 +00:00
lukem 6ca5b5bb68 add strsuftoll(3) and strsuftollx(3) - parse a string for a number
with an optional suffix, product (two numbers separated by `x'), and
provide range checking
2002-11-29 12:58:14 +00:00
kleink 4f7792917a Update for 1003.1-2001 base and XSI changes. 2002-11-18 13:39:33 +00:00
thorpej 21353eb9a6 Make fts_pathlen and fts_nitems unsigned. 2002-11-11 01:07:08 +00:00
fvdl 858b3fd46a Include rpc_com.h. 2002-11-08 00:10:58 +00:00
fvdl 0a46d2378d include rpc_com.h, and define SVC{GET,SET}_CONNMAXREC 2002-11-08 00:10:44 +00:00
fvdl c6e006104d Install rpc_com.h 2002-11-08 00:08:38 +00:00
fvdl 00503f61de Moved here from libc/rpc. Install this in /usr/include/rpc, just
like on Solaris. This wasn't done before, since it only contained
internal libc interfaces. These have been moved to rpc_internal.h,
and this file now contains some actual exported definitions.
2002-11-08 00:08:20 +00:00
joda 2a0b34371c set version to 0.5nb1 2002-10-21 21:10:59 +00:00
elric 4b6afdd53e add prototypes for disklabel_dkcksum() and disklabel_scan(). 2002-10-12 20:46:57 +00:00
provos b899aa2abc implement FNM_LEADING_DIR; matches Linux and other *BSDs; approved thorpej 2002-10-06 03:15:45 +00:00
christos dfbaa22bd7 Assign to TNF. 2002-10-04 11:42:38 +00:00
mycroft 016f903642 select() -> poll() 2002-09-20 21:48:58 +00:00
mycroft ee48615074 select() -> poll() 2002-09-20 21:34:31 +00:00
christos 6a066bf4a4 Add snprintb(3) 2002-09-20 21:11:36 +00:00
lukem 99fe9d3e76 minor makefile delint 2002-09-18 06:17:38 +00:00
joda a8826a31ce update to newer versions 2002-09-12 13:32:37 +00:00
itojun d4a64790e3 remove unused/unsupported AI_xx. notified by PR 18072 2002-08-26 13:38:19 +00:00
enami 38540fc05e Cosmetic changes. 2002-08-15 04:47:12 +00:00
abs 35a808e4e8 Add humanize_number.3 from Tomas Svensson in PR lib/15508.
Bump version of libutil
2002-08-08 16:50:35 +00:00
soren b377ecd704 Back out previous - I was confused. 2002-08-04 18:06:54 +00:00
soren f745d16995 Per IEEE 1003.1-2001, omit from <limits.h> those Pathname Variable Values
that may vary between filesystems: _POSIX_LINK_MAX, _POSIX_NAME_MAX, and
_POSIX_PATH_MAX. These are to be obtained from pathconf() instead.
2002-08-04 05:41:58 +00:00
soren c6f042d6fc As of IEEE (POSIX) 1003.1-2001, _POSIX_PATH_MAX must be at least 256 rather
than 255 and is now defined to include the terminating NUL.
2002-08-04 05:22:34 +00:00
christos 2caaca4c2b Add __P(()); noticed by wiz. 2002-07-28 22:48:38 +00:00
christos f04f8bc949 add utmpname() 2002-07-28 21:45:39 +00:00
christos 2004baccd5 add some utmp processing functions. 2002-07-27 23:57:02 +00:00
christos d857e8ec8a add utmpx/wtmpx processing routines 2002-07-27 23:49:00 +00:00
christos 230d3c5bc9 updates to lastlogx implementation. 2002-07-27 19:38:08 +00:00
bjh21 c1ba727b47 Version times() so that programs compiled before the recent change to make
sysconf(_SC_CLK_TCK) return hz will work.

In detail:
__times13() returns values scaled by hz.
times() returns values scaled by 100.
<sys/times.h> renames times() to __times13().

_SC_CLK_TCK has changed from 3 to 39.
sysconf(3) returns 100.
sysconf(39) returns hz.
CLK_TCK is defined as sysconf(39).
2002-06-30 09:45:39 +00:00
perry 25e1b60346 In the manner of Solaris and other OSes, we now define CLK_TCK to
expand to a call to __sysconf(_SC_CLK_TCK), rather than hard coding it
as a constant.
2002-06-23 19:41:04 +00:00
christos 310f799ea7 forward declaration for struct utmp. 2002-06-02 00:00:27 +00:00
itojun 3c0e2afcd7 do not define types like int32_t or u_int32_t locally. 2002-05-30 14:13:01 +00:00
thorpej 42320e8223 * Move the prototype of __svfscanf from <stdio.h> to libc/stdio/local.h.
* Add prototype for vfscanf to <stdio.h>.
* Remove #define of vfscanf to __svfscanf from <stdio.h>.
* Include local.h in libc files which need __svfscanf.
* Add vfscanf weak alias to __svfscanf.

Fixes standards/16997.

NOTE: libc minor not bumped -- ride on the bump to 12.84 made by
itojun today.
2002-05-24 22:17:20 +00:00
thorpej aa676fc0b2 Parameterize the vfscanf macro's arguments. Without them, 3rd party
software can become greatly confused.

This fixes 4 GCC 3.2 testsuite failures.

This is a stop-gap measure which can be easily applied to the 1.6
release branch.  A different fix for the trunk is forthcoming.
2002-05-24 21:07:44 +00:00
thorpej b57df3dd9d Add a scanf format attribute to __svfscanf(). 2002-05-24 06:17:29 +00:00
itojun c89c003ed2 support bcrypt password. can be chosen by "blowfish" keyword in passwd.conf.
from openbsd
2002-05-24 04:02:47 +00:00
itojun e68f73c3fe add arc4random(3). from openbsd 2002-05-24 04:01:43 +00:00
kleink a24f74d0fd Turn the flags argument to getnameinfo(3) back into an int (from unsigned
int); this is consistent with RFC2553, the current draft-ietf-ipngwg-
rfc2553bis-05 and the majority of deployed implementations.

Also, there is an effort under way to have this changed back to int in
XBD6/XSH6, XNS, and POSIX-2001 TC1.
2002-05-22 09:42:37 +00:00
itojun c2c2980f42 change return type of pidfile(3) to int (-1 on error), to inform caller
of errors.  behavior now in sync with openbsd implementation.
(see tech-userlevel and bsd-api-discuss)
2002-05-22 07:31:40 +00:00
kleink ba77dc646c XNS5.2/POSIX-2001: change the size argument to inet_ntop from size_t to
socklen_t.
2002-05-14 18:57:31 +00:00