Commit Graph

1264 Commits

Author SHA1 Message Date
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