Commit Graph

1521 Commits

Author SHA1 Message Date
pooka 8245a2442d +_PATH_PUD 2009-12-22 14:24:37 +00:00
drochner 750e2babfe add some prototypes for checked string functions 2009-11-17 20:47:59 +00:00
christos db576bf322 Don't define wchar_t for c++; it is native in the language. From Alexander
Nasonov
2009-11-15 22:21:03 +00:00
pooka 5f6806f45c typedef struct link_map as Link_map (for solaris-compat) 2009-11-04 19:28:03 +00:00
christos 7523d42dda expose res_check for the benefit of mDNS. 2009-10-24 17:23:34 +00:00
snj 550147bd6a Remove 3rd and 4th clauses in christos' license. OK christos. 2009-10-21 01:07:44 +00:00
pooka 363b14551a In a furious blaze of *facepalm* / "what was i thinking?", fix the
open routine function pointer prototype of opendisk1() to match
the prototype of open().
2009-10-13 22:00:31 +00:00
christos 1799d3c97a oops forgot to commit that one--- Add f{dim,min,max}{,l,f} 2009-10-04 22:59:25 +00:00
tsarna 1f4f234ea9 Introduce allocaddrinfo(3) to make writing getaddrinfo() nss plugins easier.
Discussed on tech-net.
2009-10-02 02:45:28 +00:00
pooka 4c1e54d82b Add Solarisa-like dlinfo() interface to the ELF dynamic linker.
Implement RTLD_DI_LINKMAP which returns a pointer to the linkmap
chain at the given object.  Other Solaris queries are currently
unimplemented.
2009-09-24 21:21:33 +00:00
pooka aaaf93f1d4 Add opendisk1(), which functions like opendisk(), but takes a function
pointer to the routine to be used for open().
2009-09-08 21:34:57 +00:00
he 6218a6dafa Introduce a new accessor macro N_NAME() to access the n_name field
in struct nlist, since it's accessed differently depending on
whether we do a.out or not.  Use this macro as appropriate in the
nlist* functions.
Also replace some includes of <a.out.h> with <nlist.h>, to fix build
problem for mips.
2009-08-21 08:42:02 +00:00
yamt a5ad33a8d7 include <stdint.h> instead of <sys/types.h>.
the latter pulls FD_SET etc and it makes wine-1.1.27's winsock vs unixsocket
namespace dance unhappy.  for more information, grep
	Include_winsock_h_before_stdlib_h_or_use_the_MSVCRT_library
in their source.
2009-08-19 04:22:53 +00:00
christos f227975929 Version fts one more time! This is the most versioned API ever... Bump
fts_level from short to int to avoid a potential DoS.
From Maksymilian Arciemowicz
2009-08-16 19:33:38 +00:00
pgoyette f6f3b4be8a Repair more fallout from the exec_aout.h change.
No guarantee that these are the "right" things to do, but they do allow
building of port-amd64 again.
2009-08-16 17:12:47 +00:00
matt 21d93aff03 Allow <machine/setjmp.h> to override the type using in jmpbuf. 2009-08-12 04:57:36 +00:00
kleink 9be4603670 Declare strsignal(3) in <string.h>, per POSIX-2008, and adjust
documentation accordingly.

Fixes PR standards/41325 from Perry E. Metzger.
2009-07-22 19:48:27 +00:00
drochner d493d48c2e add a "public domain" note (there is nothing creative justifying a
long license)
2009-07-22 15:09:57 +00:00
joerg ebf8c87cf8 Some parts of gcc fail with the direct include of sys/inttypes.h, so
fall back to using sys/types.h like stdlib.h does.
2009-07-21 16:27:54 +00:00
joerg 0578c2ad0f Move popcount et al to src/common and add popcount32/popcount64.
Requested by rmind@. MD should now override popcount32/popcount64 and
provide the aliases as fitting.
2009-07-21 14:55:32 +00:00
joerg 974b291a6c Add popcount(3) and the long and long long version. Name is inspired by
gnulib, the implementation goes back to the AMD Software Optimizer
guide. A number of platforms will want to replace the C version with
assembler code using native instructions.
2009-07-21 13:18:43 +00:00
joerg d6e219476b Add a fast, platform independent hash function to libc.
The algorithm used is the Jenkins hash.  The name (mi_vector_hash)
reflects the nature of the hash function.
Add glue for libc ATF tests and include a test case to make sure that
(mis)alignment and endianess are handled correctly.

Bump libc minor to 169.
2009-07-20 17:03:36 +00:00
roy d4a3cf6a5a Add implementations for getdelim(3) and getline(3). 2009-07-13 22:19:24 +00:00
ginsbach c8da0e5fef Add the getdate(3) function and getdate_err value, conforming to IEEE
Std 1003.1 (``POSIX.1'') and the Open Group Base Specifications X/Open
System Interfaces extension (``XSI'').
2009-05-14 02:37:35 +00:00
pgoyette 28469fc250 Implement snprintb_m(3) to provide multi-line bit/bit-field decode.
Discussed on tech-kern.
2009-05-13 02:50:31 +00:00
perry b1606298a5 note that we have strsignal but it is in the wrong include file. 2009-05-01 20:01:23 +00:00
perry bdb0c5fb32 Add prototypes for stpcpy, stpncpy, strnlen, added in the latest POSIX.
Implementations in libc to follow.

For POSIX compliance, we are still missing:

strcoll_l
strerror_l
strsignal
strxfrm_l
2009-05-01 17:16:49 +00:00
christos 2cca8c559f Bring back binary compatibility with the previous version of the resolver.
There was no room to allocate 16 bytes for _rnd in the struct in the _LP64
case, so we dynamically allocate now. Also put the _rnd field last, so that
we are bitwise compatible too. Now of course we've run out of space, so
next time will need to perform more evil tricks to fit.
2009-04-20 14:42:12 +00:00
christos 178edc61d9 merge libbind 2009-04-12 17:07:33 +00:00
christos 84e3ca2d14 add memrchr 2009-04-10 23:00:52 +00:00
christos 1ef020be5f add glob_pattern_p for glibc because cvs needs it and it is a huge mess
to compile in the gnu glob code.
2009-04-08 16:28:50 +00:00
uebayasi 4a378cffe7 Revert previous since it was just wrong. 2009-03-19 08:04:38 +00:00
uebayasi fe4f9942ce void f(void (*g)()); -> void f(void (*g)(void)); 2009-03-19 05:31:26 +00:00
christos 2c266c8a4c version alphasort. 2009-02-24 18:41:40 +00:00
martin c79c3eed1d Make NAN a compile time constant (with help from the compiler). Suggested
by krister. Fixes PR 40695.
Make references to the old construct (which we can't remove for binary
compatibility reasons) emit a linker warning.
2009-02-22 01:34:01 +00:00
christos bb0dd61478 Add RFC 2045 MIME Quoted-Printable support. 2009-02-10 23:06:31 +00:00
drochner ad965be01b cleanup after devmajor_t:
-since getdevmajor(3) is now binary compatible again with <=5.0
 there is no need to rename, I've just left a __getdevmajor50 symbol
 temporarily for those who track -current
-update manpage
2009-01-20 20:08:12 +00:00
drochner d767912be3 Change major()/minor() to return 32-bit types again, called
devmajor_t/devminor_t, as proposed on tech-kern.
This avoids 64-bit arithmetics and 64-bit printf formats in parts
of the kernel where it is not really useful, and helps clarity.
2009-01-20 18:20:47 +00:00
christos d5c47e0e14 fix reversed test from Tobias Nygren. 2009-01-13 15:11:09 +00:00
pooka f719976d8d Add MOPT_RUMP to STDOPTS so it will be correctly ignored by everyone
else apart from /sbin/mount.
(missed this portion of the file yesterday.  it was in the wrong tree)
2009-01-12 18:14:20 +00:00
pooka 694167d28f Support mount -o rump, which uses the rump server instead of using
the kernel service.  E.g. "mount -t efs -o rump /dev/sgidev /mnt"
runs effectively "rump_efs /dev/sgidev /mnt".
2009-01-11 20:39:34 +00:00
christos 7fc37d6329 don't do size computations because g++ does not like it. 2009-01-11 19:09:29 +00:00
christos 50728e7823 merge christos-time_t 2009-01-11 02:57:17 +00:00
lukem 4a94e73441 Change the second argument of getlogin_r() from int to size_t, per POSIX. 2009-01-06 11:16:46 +00:00
tnozaki 52ed7b035f Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format.
ok'ed by core and releng.
(thanks for agc@, snj@ and i'm sorry for long time patience).

[libc]
- localeio.[ch] and lc*.[ch] in src/lib/libc/locale was replaced by
  new locale-db implementation using citrus_db backend,
  see src/lib/libc/citrus/citrus_lc_*.[ch].
- add citrus_bcs_strtou?l.c. don't use strtou?l locale implementation
  internally, because they're locale-aware function.
- add some stubs for multi-locale issue, see {current,global}_locale.c.
- remove some obsolete file, setrunelocale.c, ___runetype_mb.c.
- remove __savectype() from ctypeio.[ch].

[tools]
- mklocale(1): add new option ``-t'' that generates new style
  LC_{MONETARY,NUMERIC,TIME,MESSAGES} locale-db format.
- chrtbl(1): added ctypeio.[ch] for __savectype().

[locale-db]
- added en_US.US-ASCII locale.
- removed some shareable locale definition file:
    en_US.US-ASCII -> en_US.ISO8859-1, en_US.UTF-8
    zh_CN.eucCN -> zh_CN.GB18030
    and more...see src/share/locale/*/Makefile.
- remove obsoleted locale sr_YU, added new locale sr_ME, sr_RS.
- change locale name ja_JP.ISO2022-JP* -> ja_JP.ISO-2022-JP*
  for X11's locale.alias file alignments.
- fix regression test, wrong wcs?width(3), NAN/INF usage.

i tested release-build following arch:
  i386, amd64, hpc{mips,arm,sh}, sparc64, vax.

citrus_lc_*.[ch] also can read old-plain-text style locale-db.
so that backward compatibility is keeped, but lc*.[ch] can't read
new citrus_db'ed locale-db and localeio.c never check sanity,
so forward compatibility is broken ;-<

old mklocale(1) doesn't know -t option, so you have to rebuild toolchain.
2009-01-02 00:20:18 +00:00
hannken 7586bc881e Make restore work for Linux dump volumes by ignoring extended attribute
records on these volumes.  Tested with Centos 5.2.

Reviewed by: Manuel Bouyer <bouyer@netbsd.org>
2008-12-26 19:26:04 +00:00
ad 117c67b2f2 Add fdopendir(), from Solaris/Linux. 2008-12-05 13:08:53 +00:00
christos 3e6c484639 include <sys/null.h> because _DIAGASSERT(foo == NULL) is too common and some
include it.
2008-11-02 14:27:44 +00:00
rmind 9b24696c04 Add sched_getaffinity_np() and sched_setaffinity_np() wrappers, mainly
for compatibility purposes.
2008-10-31 00:29:19 +00:00
matt 99a8c5ca1c Add the C99 header <tgmath.h> (Type-generic math.h)
Until IEEE libm support *l (long double) we can't install it.
2008-09-28 14:57:41 +00:00
lukem e2a43ad977 Support RESCUEDIR for _PATH_VI.
Fixes /rescue/disklabel -e
2008-09-28 06:38:02 +00:00
christos 9fa41d7348 add missing attributes to the remaining calls, even the ones that gcc has
builtin attributes for (for symmetry and consistency). In the future this
might change to use compiler-neutral macros. On the other hand I don't
know of any other compiler that provides other macros with similar
functionality, so why bother?
2008-09-21 16:59:46 +00:00
christos 6bedd5c51d PR/39534: Henning Petersen: Typo = instead of / to close comment. 2008-09-13 17:05:07 +00:00
gmcgarry 9bdea3498f Don't define __RCSID() here, since sys/cdefs.h does it later. Avoids
re-definition error.
2008-08-29 00:39:30 +00:00
christos e9d445137d Make _POSIX_TZNAME_MAX=6 per SUSv3, from Andy Shevchenko 2008-08-27 08:53:55 +00:00
joerg 40b37a3bf2 Convert db from UCB types to POSIX types. Prefer uint8_t for u_char as
it is mostly about the wire format.

Patched libc.so is bit-identical.

OK matt@
2008-08-26 21:18:38 +00:00
gmcgarry ff2c02da97 Define away __assert_function__ if __lint__. 2008-08-17 00:24:35 +00:00
matt 358dc24349 Add C99 imaxabs and imaxdiv protoypes and imaxdiv_t typedef. 2008-08-04 21:19:45 +00:00
matt e90b08472f Add _POSIX_HOST_NAME_MAX and _POSIX_SYMLOOP_MAX to <limits.h> and add some
references to them in <sys/param.h>
in <stdio.h> also export v*scanf when _ISOC99_SOURCE is defined

From andy dot shevchenko at gmail dot com.
2008-08-04 17:08:49 +00:00
simonb 36d65f1138 Merge the simonb-wapbl branch. From the original branch commit:
Add Wasabi System's WAPBL (Write Ahead Physical Block Logging)
   journaling code.  Originally written by Darrin B. Jewell while
   at Wasabi and updated to -current by Antti Kantee, Andy Doran,
   Greg Oster and Simon Burge.

OK'd by core@, releng@.
2008-07-31 05:38:04 +00:00
ad f778b05135 SUS says that pthread_atfork() must also be in unistd.h 2008-06-25 11:45:38 +00:00
ad 5f64faa3a9 Add getlogin_r. Manual page changes mostly lifted from FreeBSD. 2008-06-25 11:10:24 +00:00
christos bee541c300 restore correct symbol protection and add a comment so that I don't
break this again.
2008-06-21 20:24:40 +00:00
christos a0abbe8fe8 sync with bind-9-5-0 2008-06-21 20:12:49 +00:00
gmcgarry 79ae39b7d3 Use __builtin_alloc() with pcc. 2008-06-21 00:58:00 +00:00
rmind 0d04498ec8 Remove few no longer relevant comments. 2008-06-15 21:38:08 +00:00
ad 032b92980a /usr/include/atomic.h, for Solaris source compat. 2008-05-28 12:28:12 +00:00
rmind 06171502fc Adjust and thus unify my license. 2008-05-26 17:45:51 +00:00
christos 221cf0b076 remove the const again - per core. 2008-05-10 22:37:42 +00:00
martin ce099b4099 Remove clause 3 and 4 from TNF licenses 2008-04-28 20:22:51 +00:00
christos bd1ba72f92 make name const. 2008-04-25 21:20:57 +00:00
plunky 043900c0cb constify dirname(3) and basename(3) 2008-04-23 07:53:26 +00:00
plunky f983e71d70 constify uuid(3) 2008-04-23 07:52:32 +00:00
plunky 7c883dd79e HAVE_IPV6 is defined by libkrb5/Makefile when USE_INET6 != "no" 2008-04-21 18:31:17 +00:00
yamt e3372d31c3 RANDOM_MAX: don't rely on integer overflow. 2008-04-07 12:24:52 +00:00
drochner 7cc98087b6 everyone else assumes that defining "_XOPEN_SOURCE" means XPG4.2,
so remove comparisions against the numerical values "3" or "4"
2008-04-01 19:23:28 +00:00
mlelstv 61c7bde65a Heimdal on NetBSD uses __RCSID. 2008-03-22 12:43:47 +00:00
mlelstv b0f88a0388 Import Heimdal-1.1 2008-03-22 08:36:48 +00:00
christos 749de7f2a4 Since _file is a short, check that the fd fits in it, otherwise bail with
EMFILE. We treat _file as an unsigned short to double our range, with a
special case for -1 (closed). Make a note of what we should do about stdio
if we ever bump libc. We could change _file in the future compatibly to an
int by putting it in the extension space but for now we don't bother.
2008-03-13 15:40:00 +00:00
lukem c293dd6128 Use "unsigned foo" instead of "u_foo".
Be consistent with tabs.
2008-03-07 10:38:31 +00:00
dholland 65900038ce Add a comment noting that the definition of __errno is now replicated in
signal.h. Per request of joerg@
2008-03-03 06:57:48 +00:00
christos c75e135b85 add RANDOM_MAX define from anon ymous 2008-02-28 16:13:35 +00:00
dholland 933ac46844 signal.h is not supposed to define errno, so use ___errno instead.
Adjust errno.h in a compatible fashion to avoid -Wredundant-decls issues.
I have run a build to check the tree for places where errno.h is missing,
and fixed the cases I found, but there might be more in MD code.
2008-02-24 23:01:19 +00:00
christos 5b9284aa07 GLOB_NO_DOTDIRS patch from mouse@
Fixes re-definition of GLOB_PERIOD.
2008-02-22 18:33:51 +00:00
matt 80d082b8df Change/fix tsptype to const char * const []; 2008-02-16 07:30:15 +00:00
christos b11674e1a4 move gettytab to paths.h 2008-02-04 15:27:20 +00:00
christos 0d149bc5fe Add csetexpandtc() 2008-02-02 20:56:46 +00:00
christos f6a680bbd6 add a couple more 2008-02-01 22:40:01 +00:00
christos 82c43e19fc tell about getdents, not getdirentries 2008-01-09 20:55:03 +00:00
perry fc883a791d change some __attribute__s to __keywords 2007-12-24 17:26:09 +00:00
christos 03dcf031ab humanize_number was the only function in <util.h> that is not in libutil.
Move it to stdlib.h and add dehumanize_number.
2007-12-14 16:36:19 +00:00
christos 14c8a52580 From Richard M Kreuter, add GLOB_PERIOD. 2007-12-05 20:25:54 +00:00
rmind c75dc3277a Unify the license: All rights reserved.
No functional change.
2007-11-28 19:30:55 +00:00
ad 95182011ed Enable posix_memalign(). 2007-11-19 14:48:41 +00:00
ad acdc596fb9 Add _lwp_ctl() - sorry, I thought I had checked this in yesterday along
with makelintstub.
2007-11-13 17:38:55 +00:00
joerg 6475789b74 Add kvm_dump_header and implement kvm_dump_wrtheader on top of it.
This function allows the caller finer control of how the writes happen
and doesn't force stdio as interface. Optimise clear_gap a bit to not
fill the gap byte-wise. Bump minor version of libkvm.
2007-11-08 20:48:04 +00:00
christos cae365bd34 revert the reversion of the previous change. Kill _NETBSD_SOURCE again. 2007-11-08 20:29:35 +00:00
dogcow 98a43c1f52 Revert the other part of the getopt_long changes to fix non-NetBSD builds;
viz -r1.22 -r1.23 src/lib/libc/stdlib/getopt_long.c
2007-11-07 09:03:58 +00:00
ad 172e40df21 Add _lwp_setname, _lwp_getname. 2007-11-07 00:34:45 +00:00
christos 1af253e4c7 remove featuretest.h and NETBSD_SOURCE conditional ifdefs. This is not
a standard header and does not have namespace issues.
2007-11-06 19:21:18 +00:00
christos dc2d7f4fa6 don't use u_long because it is present only with _NETBSD_SOURCE 2007-10-30 20:02:48 +00:00
christos e2347743fc kill _NETBSD_TOOLS. 2007-10-19 15:58:52 +00:00
christos 6c18907891 Introduce _NETBSD_TOOLS for symbols the are needed in tools build 2007-10-18 02:23:37 +00:00
christos ab7f7a664a don't set obsolete flags in SETALL. From Anon Ymous 2007-10-07 01:23:17 +00:00
christos fbe2281123 fix reversed comment. 2007-10-07 00:37:11 +00:00
christos b093a7796c split LOGIN_SETGROUP -> LOGIN_SETGID|LOGIN_SETGROUPS 2007-10-06 21:51:21 +00:00
yamt 3bae22298f kill another definition of bool. 2007-10-06 16:17:34 +00:00
lukem e9aa053c09 Add raise_default_signal(3) -- raise the default signal handler.
Can be used by applications that have their own SIGINT (et al)
handlers and want to exit in a manner that correctly
signals to the parent that the process was terminated by a signal.
See http://www.cons.org/cracauer/sigint.html for more info.
Discussed on tech-userlevel@.
2007-09-25 01:13:54 +00:00
rmind 9861030b19 - Correct the value of _POSIX_SYMLINK_MAX as defined in standard.
Closes PR/37007 by Ighighi.
- While here, increase _POSIX_CHILD_MAX as suggested by standard.
2007-09-21 01:41:43 +00:00
rmind 2cecf9bbe9 Implementation of POSIX message queues.
Reviewed by: <ad>, <tech-kern>
2007-09-07 18:56:02 +00:00
drochner 9d8b5fa74e Add C99 complex support, for double and float.
Most complex function implementations are from the "c9x-complex" library,
originating from the "cephes" math library, see
http://www.netlib.org/cephes/, from Stephen L. Moshier, incorporated and
redistributed with the NetBSD license by permission of the author.

Error behaviour and other boundary conditions (branch cuts)
need to be looked at.

For namespace sanity, I've done the rename/weak alias procedure to
most of the exported functions which are also used internally.
Didn't do so for sin/cos(f) yet because assembler implementations use
them directly, and renaming functions shared between the main libm
and the machine specific "overlay" might raise binary compatibility
issues.
2007-08-20 16:01:28 +00:00
he fd961c4429 Add a new socket option for unix domain sockets: LOCAL_PEEREID, to make
it possible to get the pid, euid and egid of the process at the remote
end at the time it did bind() or connect().

Add a new libc function, getpeereid() to easily get at the euid and egid.
As a consequence, bump libc's minor number.

Document the LOCAL_PEEREID socket option in unix(4).

Based on contribution by Arne H. Juul, minor modifications by myself.
2007-08-09 15:23:01 +00:00
ad c3f8e2ee55 Change the signature of _lwp_park() to accept an lwpid_t and second
hint pointer, but do so in a way that remains compatible with older
pthread libraries. This can be used to wake another thread before the
calling thread goes asleep, saving at least one syscall + involuntary
context switch. This turns out to be a fairly large win on the condvar
benchmarks that I have tried.
2007-08-07 19:04:21 +00:00
kristerw 1ef79ebc7d Do not include SSP files unless _FORTIFY_SOURCE > 0. 2007-08-02 21:49:09 +00:00
pooka b50bf77666 _PATH_PUFFS 2007-07-17 10:14:33 +00:00
pooka 060d8639e3 add estrndup() 2007-07-01 21:41:16 +00:00
rmind 597004aa18 Fix the C99 restrict keyword with array defintion in prototype problem.
http://mail-index.netbsd.org/tech-userlevel/2007/06/17/0004.html
Closes PR/36451.
2007-06-30 16:36:35 +00:00
christos 2b3b97e3ff - Misc cleanups to make the code more readable.
- Detect if we are compiling in libc and provide the appropriate name.
2007-06-03 17:41:19 +00:00
tls dc99372be9 Match usage of FORTIFY_SOURCE on other platforms by not requiring special
include path: the normal header files now include the "SSP" ones (which one
should note are not really named right: SSP and FORTIFY_SOURCE are independent
features).

Disable USE_SSP on targets where the compiler doesn't support it at all
(mips, alpha) or it's known broken (sh3).  But enable FORTIFY_SOURCE,
without SSP, on those platforms -- tested on mipsel.
2007-05-30 21:14:35 +00:00
tls 2368dc663d Move FORTIFY_SOURCE implementation from the somewhat ill-named "libssp"
(what other systems keep in libssp, we already have in libc) into libc
to match what other systems with FORTIFY_SOURCE do.  Goodbye, libssp
dependency in libraries and executables.  Discussed with christos and
mrg; Christos will merge the headers to get us the rest of the way to a
FORTIFY_SOURCE implementation that works as others' code expects.
2007-05-30 01:13:14 +00:00
christos 2f776ce02e Move .db files for services and netgroup to /var/db per gimpy's request. 2007-05-10 17:45:50 +00:00
rmind f867968153 - Add linkage for C++
- KNF

Patch from <ad>, thanks!
2007-05-03 21:22:33 +00:00
rmind 0994dd0691 - Create sysctl nodes for AIO.
- Add POSIX defined system variables and constants of AIO_LISTIO_MAX and
  AIO_MAX values.  Both with _POSIX_ASYNCHRONOUS_IO, provide them in
  sysconf(3) and getconf(1) interfaces.
- Clean up sysconf(3) for handling sysctl nodes dynamically.
2007-05-01 01:01:25 +00:00
rmind 67d703cf25 Import of POSIX Asynchronous I/O.
Seems to be quite stable. Some work still left to do.

Please note, that syscalls are not yet MP-safe, because
of the file and vnode subsystems.

Reviewed by: <tech-kern>, <ad>
2007-04-30 14:44:28 +00:00
ragge 98e922db67 The alloca() arg type check is broken (cpp do not do string comparisions)
so make it marginally less broken so that it works with other compilers
than gcc.
Probably the check can be removed, I doubt anyone will try to use gcc1
anymore.
2007-04-22 08:21:50 +00:00
ghen f0e38187bd Resolve conflicts. 2007-03-30 19:57:16 +00:00
drochner 7161d089aa -get cabs() and cabsf() out of public view - these are historical and
conflict with C99 functions which are builtins in newer gcc
 (actually, the old cabs() is ABI compatible with the new _complex one
  on i386, but this is purely accidental)
 remove public prototypes and manpages, move the code into a compat
 subdirectory as libc does so that binary compatibility is kept
-add a manpage for the isgreater() etc macros, borrowed from FreeBSD
2007-02-22 22:08:17 +00:00
ad f8e00f41e6 Change _lwp_unpark_all() to return a 'ssize_t'. 2007-02-09 22:54:19 +00:00
ad 34eaab26b0 Sync with changes introduced by merging the newlock2 branch. 2007-02-09 22:13:31 +00:00
drochner a981c4eb78 add the isgreater() at al. comparision macros defined in C99 and SUSv3;
use just the primitive macros for now (identical to FreeBSD/DragonFly)
which don't use gcc internals, the rest can go in after some testing;
addresses PR standards/25520
2007-02-06 17:29:37 +00:00
christos fc500ab7fb Add macros for overflow detection 2007-02-03 23:48:21 +00:00
christos a12ac1f620 remove __SAFE 2007-02-02 23:00:53 +00:00
christos b5861ff385 another merge botch. 2007-01-28 01:48:03 +00:00
christos 9567c94af3 Fix merge botch 2007-01-27 22:33:03 +00:00
christos 0d808c59ee Merge back all our changes. 2007-01-27 21:25:23 +00:00
christos 7315c1563a import files from bind-9-4-0-rc2 2007-01-27 19:49:27 +00:00
ad 4fa8fcbfe1 Add: _lwp_kill, _lwp_detach, _lwp_park, lwp_unpark, _lwp_unpark_all. 2007-01-16 01:36:50 +00:00
christos 33d6b113f2 moved string_to_flags and flags_to_string from ls to libutil. 2006-12-14 19:18:01 +00:00
bjh21 2f3712dfa1 defined(_NETBSD_SOURCE) is equivalent to (!defined(_ANSI_SOURCE) &&
!defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)), so there's no
need to check both of them.
2006-12-09 19:33:42 +00:00
christos 1665d5e960 fix spelling of accommodate; from Zapher. 2006-11-24 19:46:58 +00:00
christos 4ca73ce810 Don't expose _ss functions for 4.0. Requested by core. 2006-11-22 17:23:24 +00:00
christos ab56b9a702 getdate -> parsedate 2006-11-20 20:33:33 +00:00
christos 37568978dc constify getdate 2006-11-17 22:44:40 +00:00
christos ba26b607a4 add getdate. 2006-11-17 22:10:23 +00:00
yamt c59a65e2fe add comments. 2006-11-09 10:04:40 +00:00
mjf a2be0ed655 Revert the changes I introduced trying to solve tmpfs' NFS export problem.
Requested by yamt@
2006-10-31 08:12:46 +00:00
christos 11c53ad61c kill crypto/rmd160.h and crypto/sha2.h, and instead make symlinks to
/usr/include from /usr/include/sys. This makes all the one way hash
header handling identical.
2006-10-30 20:22:53 +00:00
christos 1e468fbf99 - flags should be unsigned short instead of short.
- add __SAFE flag, to indicate that we want async-signal-safe functionality
  only.
- add snprintf_ss, and vsnprintf_ss; these are undocumented on purpose.
2006-10-27 20:03:21 +00:00
mjf 84bd46b9f9 Add support to allow a file system to not permit being exported over NFS.
Approved by elad@ and wrstuden@
2006-10-24 21:53:10 +00:00
christos fb9bdae14a add MOPT_NULL 2006-10-16 03:31:27 +00:00
christos 1d0c670b9c add a NULL callback initializer 2006-10-15 16:10:38 +00:00
christos 3600b1e75a Add run level messages. 2006-09-22 21:31:55 +00:00
christos e72710e561 Add efun(3) 2006-08-26 18:11:12 +00:00
christos 54097ce7af PR/34238: Aleksey Cheusov: add wcsdup, wcscasecmp and wcsncasecmp functions 2006-08-22 20:50:46 +00:00
thorpej b4bbe79968 Use __GNUC_PREREQ__() for the GCC 4 test, too. 2006-08-21 16:58:29 +00:00
christos 93e48bdb1e __offsetof__ is a builtin, so we need __GNU_PREREQ 2006-08-21 15:31:18 +00:00
christos a162f659c6 gcc-3.3 does not have __offsetof__, but gcc-3.4 eems to require it:
From the redhat web page:

http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/gcc/offsetof.html

__offsetof__ (expression)
    is equivalent to the parenthesized expression, except that the
    expression is considered an integral constant expression even if
    it contains certain operators that are not normally permitted in
    an integral constant expression. Users should never use __offsetof__
    directly; the only valid use of __offsetof__ is to implement the
    offsetof macro in <stddef.h>.
2006-08-21 15:26:49 +00:00
christos a4f92031c6 g++-4 does not like &0->member, so we have to use the built-in offsetof().
g++-3 does not have a built-in offsetof(), but we cannot use the c version,
      otherwise we break with -Wold-style-cast.
Inspired by the DF version, but a bit different.
2006-08-21 15:02:23 +00:00
skd 21f8ec95d5 Use gcc's builtin function. This permits c++ compiliation of const
expressions using offsetof.  Boost-python relies on this, for example.
2006-08-21 14:09:43 +00:00
christos f4254d2cef Add stresep and strndup. 2006-08-12 23:50:13 +00:00
christos b9c41df004 add services.db 2006-07-27 18:29:01 +00:00
christos 20248fa84b forgot to commit this. 2006-07-27 18:10:45 +00:00
christos a14221d559 fts_number is a quad; bump version. 2006-07-27 15:47:09 +00:00
christos 11d8439430 add sl_delete 2006-07-27 15:37:19 +00:00
christos eadd73deca Centralize the TCP_NODELAY handling as discussed in tech-net. 2006-06-22 19:35:34 +00:00
mrg db19e89e04 remove support for building (with) GCC 2.95. also:
- always install <stdbool.h>
- don't generate a fake one for vax / gettext.
2006-06-02 22:16:18 +00:00
christos 54595e9946 rename dd_rewind to dd_internal so that it can be re-used to implement
telldir/seekdir/rewinddir differently. While there change the prototype
to telldir to take a non-const DIR, per:
http://www.opengroup.org/onlinepubs/009695399/basedefs/dirent.h.html
2006-05-17 20:32:19 +00:00
mrg 9f88f12295 add __BEGIN_DECLS/__END_DECLS around snprintf() & vsnprintf() prototypes. 2006-05-10 21:09:45 +00:00
thorpej 66574ac8a6 Install proplib include files. 2006-04-27 23:42:08 +00:00
snj a640fe8c43 It's "its." 2006-04-24 19:00:29 +00:00
salo 2118fde310 Add setttyentpath(), functionally equivalent to setttyent() but takes an
additional argument to read the ttys information from an alternate path
istead of _PATH_TTYS.

Required for upcoming init(8) changes.

Mostly from <apb>.

Bump libc minor.
2006-04-17 23:29:21 +00:00
tnozaki f9de1ba57e add c99 wcstof(3) and wcstold(3).
requested by skrll AT netbsd DOT org, thanks.

bump libc minor 138 -> 139.
2006-04-15 12:17:22 +00:00
mrg 0db1500b43 retire HAVE_GCC3/HAVE_GCC4 and introduce HAVE_GCC that is set to 2, 3 or 4. 2006-04-07 19:38:58 +00:00
christos 8d5214b18a PR/33163: Auster Vl.: fts: cant allocate memory | filename too long
Change the ftp_pathlen and fts_namelen to u_int from u_short so that
pathnames > 32K work.
2006-03-30 01:23:50 +00:00
christos fb11ba2dc5 PR/33124: Murray Armfield: readdir_r is missing a restrict qualifier.
http://www.opengroup.org/onlinepubs/000095399/basedefs/dirent.h.html
2006-03-26 18:22:40 +00:00
christos 3b6811d33b PR/33123: Murray Armfield: standards compliance & glob.h
Certain fields in glob.h need to be size_t; fix this and version glob(3).
    http://www.opengroup.org/onlinepubs/000095399/basedefs/glob.h.html
2006-03-26 18:11:22 +00:00
xtraeme f1336fbda3 Add trunc() and truncf() C99 functions, from FreeBSD. 2006-03-25 16:41:11 +00:00
kleink d66de2df34 Add nan(3), nanf(3), and nanl(3); welcome libm.so.0.4. 2006-03-23 16:55:42 +00:00
kleink bc89c06cbf Add strtof(3) and strtold(3); welcome libc 12.137. 2006-03-15 17:35:17 +00:00
wiz 1ad8067cb3 Fix typos, reported by Alexey Dobriyan ("Gathered from Linux"),
forwarded by jmc@openbsd.
2006-02-25 00:58:34 +00:00
elad cf6eceb4e7 Don't expose struct pw_policy and use pw_policy_t, use malloc, man-page
fixups.

As discussed on source-changes@.

Okay yamt@, thorpej@.
2006-02-18 16:32:45 +00:00
elad f4ce06ccf2 Add the struct pw_policy forgotten in previous commit. 2006-02-18 10:53:33 +00:00
ginsbach e0882f7342 Add EAI_OVERFLOW as specified in RFC3493, POSIX and XPG6. 2006-02-17 15:55:01 +00:00
chs 899d1b31b2 convert "magiclinks" from a per-fs mount option to a system-wide sysctl.
as discussed on tech-kern quite some time ago.
2006-02-12 01:32:06 +00:00
christos 6d2fba90fb remove functions that we should not be exposing. 2006-01-24 19:33:35 +00:00
christos 4787e0f575 PR/32615: Yves-Emmanuel JUTARD: Add missing telopts extern variable. 2006-01-24 17:13:59 +00:00
christos decae1574c PR/32614: Yves-Emmanuel JUTARD: Typing error in some comment ;-) 2006-01-24 17:08:58 +00:00
christos 964e09988d expose unlocked versions of readdir and telldir. 2006-01-24 13:58:58 +00:00
uwe 211efb2fb0 Fix comment indentation after __P was deleted. 2006-01-11 22:50:35 +00:00
kleink 5af00b0b39 pthread_sigmask(): Add restrict qualifier to set, oset args. 2006-01-07 20:10:29 +00:00
agc 740a95c15f Add Todd Miller's ftw(3) and nftw(3) file-tree walking functionality,
from OpenBSD.

Bump libc minor to 136.
2005-12-30 23:07:31 +00:00
yamt 354b4aa135 put back inline to __inline, as it's a user-visible header. 2005-12-28 15:26:06 +00:00
perry e67ad767f5 inline -> __inline for selected things (specifically, the header
file is POSIX visible and the usage isn't #ifdef _KERNEL)

Discussed with core. I may need to go farther than this but for now
compilations done with gcc -ansi (i.e. firefox) will be okay.
2005-12-27 17:21:28 +00:00
perry 5f65228b74 u_intN_t -> uintN_t 2005-12-26 19:01:47 +00:00
perry 971a8b8cc7 __const__ -> const
This is in an __attribute__ so it isn't really necessary, but it gets
it out of the listing of __keyword__s...
2005-12-24 23:04:05 +00:00
perry a2cd732268 Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete. 2005-12-24 19:12:23 +00:00
christos 724f51cbd9 expose setuserpath and setuserenv, now used by xdm. 2005-12-20 21:31:27 +00:00
yamt 347f995cea - constify and remove __UNCONST from caller of clnt_call().
- use __UNCONST where approproate.
2005-12-03 15:16:19 +00:00
christos 1f2f080275 sprinkle __UNCONST 2005-11-29 03:12:58 +00:00
christos 8e7266788d PR/32108: Greg Oster: fpgetmask() linking failure with g++ on macppc
Missing __{BEGIN,END}_DECLS.
2005-11-18 20:02:59 +00:00
kleink 34ef731cb3 Change the sched_*() functions to return -1 and set errno to ENOSYS
(per the standard) instead of returning ENOSYS.  Noted by Ian Zagorskih
in PR kern/30970.
2005-10-09 11:17:28 +00:00
rpaulo 35d2bef12a Add a comment asking to update sysexits(3) when adding more entries. 2005-09-30 20:56:19 +00:00
kleink 21ef7cfd14 Move ttyname_r() to the 1003.1c-1995 section. 2005-09-26 12:52:42 +00:00
kleink ffff20ba60 Move getenv_r() to the local section. 2005-09-26 12:51:34 +00:00
christos 2b46305054 ttyname_r returns int. 2005-09-25 20:28:56 +00:00
christos e86a6cb1b4 Add getenv_r and ttyname_r 2005-09-25 20:08:15 +00:00
xtraeme af4a812af1 Add missing prototype for the MD5FileChunk() function. (hi elad!) 2005-09-25 00:48:21 +00:00
elad b8cc6b61c3 Fix prototype. 2005-09-24 22:08:30 +00:00
elad 8b546d68f7 Define MD2_DIGEST_LENGTH and MD2_DIGEST_STRING_LENGTH.
Noted by xtraeme@.
2005-09-24 21:30:38 +00:00
elad 8c28d108b5 Use new location.
XXX This is left here for backwards compatibility.
2005-09-24 18:35:42 +00:00
christos c4445bc71c rename osockaddr to talkd_sockaddr and use that instead. 2005-09-24 16:40:01 +00:00
drochner ccaf4d6706 use __inline as before, otherwise "gcc -ansi" blows up 2005-09-15 13:44:41 +00:00
christos 9d2cc4eaf5 Fix opendir30 screwup and sort the compat defs for clarity. 2005-09-14 20:20:15 +00:00
elad b86ce3e403 Forgot these when imported pw_policy(3).
Thanks to Hisashi T Fujinaka for noticing.
2005-09-14 15:59:10 +00:00
christos 66412e7240 compat code reorg 2005-09-13 01:44:32 +00:00
christos 99c8f5662d Change ino_t to u_int32_t for compatibility with the current dump/restore
format. Unfortunately this means that all dumps taken from the time of
the 64 bit inode changes (August 16th) will become unreadable with this
commit. To make them readable again, you can back-out this commit temporarily.
Please note, that I am not adding 64 bit inode support to the format on
purpose right now, because supporting 64 bit inodes on-disk will require
additional changes, and it is more appropriate to add such support then.
2005-09-06 17:03:59 +00:00
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