summaryrefslogtreecommitdiff
path: root/lib/libc
Commit message (Collapse)AuthorAgeFilesLines
* Add and document ffsl(), fls() and flsl().Dag-Erling Smørgrav2004-01-137-12/+201
| | | | Notes: svn path=/head/; revision=124483
* Kill whitespace at end of lines.Jacques Vidrine2004-01-121-9/+9
| | | | Notes: svn path=/head/; revision=124432
* Fix a bug that could result in a null pointer dereference inJacques Vidrine2004-01-121-1/+1
| | | | | | | | | | | | | | getpwent(3) or getpwuid(3) when using NIS adjunct maps. The bug was present in the internal `nis_passwd' function. The lookup in the adjunct map used the name passed into `nis_passwd', however no name was of course supplied by getpwent or getpwuid. Correctly use the name from the `struct pwd' that was found instead. PR: bin/59962 Submitted by: Gabriel Gomez <ggomez@fing.edu.uy> Notes: svn path=/head/; revision=124431
* XDR sources are handled by ../xdr/Makefile.inc.Ruslan Ermilov2004-01-111-4/+0
| | | | Notes: svn path=/head/; revision=124379
* Replaced an ugly hack to selectively disable warningsRuslan Ermilov2004-01-112-3/+3
| | | | | | | | | | in contributed sources with just a hack made possible by bsd.sys.mk,v 1.33. This is better because it just nulls out the warning flags rather than adding gcc(1) specific -w option to CFLAGS. Notes: svn path=/head/; revision=124374
* Add an ulgy hack so that warnings added by non-zero WARNS values won't beDavid E. O'Brien2004-01-101-0/+3
| | | | | | | | | used with the contrib/ gdtoa sources as they aren't WARNS-clean. Submitted by: ru Notes: svn path=/head/; revision=124354
* Clarify the behavior of ptrace(2) a little bit: the tracing processRobert Watson2004-01-101-0/+24
| | | | | | | | | | | | | | | | | | must first attach to the traced process. If the tracing process exits without detaching, the traced process will be killed rather than continued. For the duration of the tracing session, the traced process is reparented to the tracing process (with resulting expected behaviors). It is permissible to trace more than one other process at a time. When using waitpid() to monitor the behavior of the traced process, signals are intercepted: they may optionally then be forwarded using ptrace(). Signals are generated normally by and for the process, but also by the tracing facility (SIGTRAP). Product of: Suffering Sponsored by: DARPA, AFRL Notes: svn path=/head/; revision=124346
* We need to discard `const'ness explicitly when invoking sysarch.Jacques Vidrine2004-01-101-1/+1
| | | | | | | Reported by: sparc64 tinderbox via bde Notes: svn path=/head/; revision=124342
* Provide sysarch(2) prototypes in the MD sysarch.h headers. While I'mJacques Vidrine2004-01-0914-39/+14
| | | | | | | | | | | | | at it, use the ANSI C generic pointer type for the second argument, thus matching the documentation. Remove the now extraneous (and now conflicting) function declarations in various libc sources. Remove now unnecessary casts. Reviewed by: bde Notes: svn path=/head/; revision=124296
* It was reported that when using nss_ldap, getgrent(3) would behaveJacques Vidrine2004-01-091-8/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | incorrectly when encountering `large' groups (many members and/or many long member names). The reporter tracked this down to the glibc NSS module compatibility code (nss_compat.c): it would prematurely record that a NSS module was finished iterating through its database in some cases. Two aspects are corrected: 1. nss_compat.c recorded that a NSS module was finished iterating whenever the module reported something other than SUCCESS. The correct logic is to continue iteration when the module reports either SUCCESS or RETURN. The __nss_compat_getgrent_r and __nss_compat_getpwent_r routines are updated to reflect this. 2. An internal helper macro __nss_compat_result is used to map glibc NSS status codes to BSD NSS status codes (e.g. NSS_STATUS_SUCCESS -> NS_SUCCESS). It provided the obvious mapping. When a NSS routine is called with a too-small buffer, the convention in the BSD NSS code is to report RETURN. (This is used to implement reentrant APIs such as getpwnam_r(3).) However, the convention in glibc for this case is to set errno = ERANGE and overload TRYAGAIN. __nss_compat_result is updated to handle this case. PR: bin/60287 Reported by: Lachlan O'Dea <odela01@ca.com> Notes: svn path=/head/; revision=124289
* Adjust for brain outage that affected the previous commit.Jacques Vidrine2004-01-061-1/+1
| | | | | | | Submitted by: Stefan Farfeleder <stefan@fafoe.narf.at> Notes: svn path=/head/; revision=124193
* Add required headers.Jacques Vidrine2004-01-062-0/+4
| | | | Notes: svn path=/head/; revision=124191
* Add required headers and function declarations.Jacques Vidrine2004-01-062-0/+3
| | | | Notes: svn path=/head/; revision=124190
* Remove unused variables. Add required headers and functionJacques Vidrine2004-01-067-6/+12
| | | | | | | declarations. Notes: svn path=/head/; revision=124182
* Use ANSI C function definition for `_mcount' and remove `static'Jacques Vidrine2004-01-061-2/+2
| | | | | | | | | prototype from header file. Discussed with: bde, maybe one year ago Notes: svn path=/head/; revision=124180
* Add missing declaration.Jacques Vidrine2004-01-061-0/+2
| | | | Notes: svn path=/head/; revision=124178
* Work around a `warning: zero-length printf format string'.Jacques Vidrine2004-01-061-1/+1
| | | | Notes: svn path=/head/; revision=124177
* Avoid undefined behavior:Jacques Vidrine2004-01-061-2/+2
| | | | | | | foo[i] = bar[++i]; /* Which operator [] will be evaluated first? */ Notes: svn path=/head/; revision=124176
* Make intentions explicit with additional parenthesis.Jacques Vidrine2004-01-062-8/+8
| | | | Notes: svn path=/head/; revision=124175
* Remove unused variables and function declarations. Add missing headers.Jacques Vidrine2004-01-065-8/+6
| | | | Notes: svn path=/head/; revision=124174
* Describe kern.ipc.nsfbufsused and kern.ipc.nsfbufspeak.Maxim Konovalov2003-12-291-0/+9
| | | | | | | Reviewed by: silby Notes: svn path=/head/; revision=123968
* Make sure we initialise dirp->dd_size if we aren't reading a unionfsDoug Rabson2003-12-261-0/+1
| | | | | | | | | directory. Special thanks to: valgrind Notes: svn path=/head/; revision=123861
* Add restrict qualifiers. (docs)Alfred Perlstein2003-12-245-5/+5
| | | | | | | | PR: 44394 Submitted by: Craig Rodrigues <rodrige@attbi.com> Notes: svn path=/head/; revision=123814
* Properly advance "x/y/z" form slash-pointers in some rare casesAndrey A. Chernov2003-12-241-4/+4
| | | | | | | PR: 60539 Notes: svn path=/head/; revision=123801
* Back out previous commit due to incorrect content.Tom Rhodes2003-12-231-128/+62
| | | | | | | Noticed by: wollman Notes: svn path=/head/; revision=123780
* Document many of the missing posix.1b options.Tom Rhodes2003-12-231-62/+128
| | | | | | | | | PR: 20528 Submitted by: bms (original version) Requested by: mike (awhile ago) Notes: svn path=/head/; revision=123773
* Implement __cxa_atexit/__cxa_finalize as specified by the cross-vendorAlexander Kabaev2003-12-192-13/+2
| | | | | | | | | | | | | | | | ó++ ABI document at http://www.codesourcery.com/cxx-abi/abi.html#dso-dtor The ABI was initially defined for ia64, but GCC3 and Intel compilers have adopted it on other platforms. This is the patch from PR bin/59552 with a number of changes by me. PR: bin/59552 Submitted by: Bradley T Hughes (bhughes at trolltech dot com) Notes: svn path=/head/; revision=123674
* Implement __cxa_atexit/__cxa_finalize as specified by the cross-vendorAlexander Kabaev2003-12-191-7/+101
| | | | | | | | | | | | | | | | C++ ABI document at http://www.codesourcery.com/cxx-abi/abi.html#dso-dtor The ABI was initially defined for ia64, but GCC3 and Intel compilers have adopted it on other platforms. This is the patch from PR bin/59552 with a number of changes by me. PR: bin/59552 Submitted by: Bradley T Hughes (bhughes at trolltech dot com) Notes: svn path=/head/; revision=123673
* First byte of GBK-like sequences is 0x81, not 0x80Andrey A. Chernov2003-12-191-1/+1
| | | | Notes: svn path=/head/; revision=123665
* Brucification: Don't initialize in declaration, make sure extra linesJordan K. Hubbard2003-12-182-2/+5
| | | | | | | follow declaration section. Notes: svn path=/head/; revision=123631
* Do comparison using appropriate casting first, as per SUSv3 (search for firstJordan K. Hubbard2003-12-172-2/+4
| | | | | | | [last] character, not int). Notes: svn path=/head/; revision=123584
* Document the effect of sysctl tunables controlling p_candebug(9) onJoseph Koshy2003-12-141-1/+7
| | | | | | | ktrace(2). Notes: svn path=/head/; revision=123534
* Fixed English error in previous commit. Fixed some older English errors.Bruce Evans2003-12-111-6/+5
| | | | | | | Removed a redundant clause. Notes: svn path=/head/; revision=123440
* Add reference to standards/55112 for next time SHLIB_MAJOR is bumped.Mike Heffner2003-12-101-0/+1
| | | | | | | Suggested by: wollman Notes: svn path=/head/; revision=123393
* Add sticky(8) cross reference.Diomidis Spinellis2003-12-101-1/+2
| | | | | | | | | PR: docs/60068 Submitted by: Ken Stailey MFC after: 2 weeks Notes: svn path=/head/; revision=123388
* - Put manh/manl bitfields into correct-sized integral type.Peter Grehan2003-12-101-5/+4
| | | | | | | - remove XXX normalization bit comment, code is correct. Notes: svn path=/head/; revision=123381
* Add a short description of the kse_switchin(2) syscall to the kseMarcel Moolenaar2003-12-102-2/+14
| | | | | | | | manpage and add a kse_switchin link. While here, list kse_thr_interrupt before kse_wakeup in the MLINKS variable and the synopsis. Notes: svn path=/head/; revision=123367
* Set __mbrtowc and __wcrtomb correctly when changing to the C/POSIX locale.Tim J. Robbins2003-12-081-0/+14
| | | | | | | | | | Save __mbrtowc and __wcrtomb and restore them when changing back to the cached locale. Reported by: perky Notes: svn path=/head/; revision=123308
* Add support for timeout: and attempts: resolver options.Murray Stokely2003-12-071-0/+20
| | | | | | | | Submitted by: Paul Vixie <paul@vix.com> / ISC MFC After: 1 week Notes: svn path=/head/; revision=123236
* Split multibyte(3) into separate manual pages for each function.Tim J. Robbins2003-12-077-145/+543
| | | | | | | | | Instead of just deleting it, turn the original page into a general overview of the multibyte character conversion functions, somewhat similar to stdio(3). Notes: svn path=/head/; revision=123222
* Split the documentation for localeconv() off into a separate manual page.Tim J. Robbins2003-12-073-176/+232
| | | | Notes: svn path=/head/; revision=123221
* Fix prototype for getchar_unlocked().Tim J. Robbins2003-12-071-1/+1
| | | | Notes: svn path=/head/; revision=123216
* "Fix" makecontext() so that the C code begins execution with itsPeter Wemm2003-12-051-2/+6
| | | | | | | | | | | | | | | | ABI-required stack alignment. C code expects that the push of the return address disturbed the 16 byte alignment and it will take corrective measures to fix it before making another call. Of course, if its wrong to start with, then all hell breaks loose. Essentially we "fix" this by making the stack alignment odd to start with. This was one of the things that broke on libkse with apps that use floating point/varargs/etc. Approved by: re (scottl) Notes: svn path=/head/; revision=123154
* Fixed a bug in sendfile(2) where the sent data would be corrupted dueDavid Greenman2003-12-011-2/+6
| | | | | | | | | | | | | to sendfile(2) being erroneously automatically restarted after a signal is delivered. Fixed by converting ERESTART to EINTR prior to exiting. Updated manual page to indicate the potential EINTR error, its cause and consequences. Approved by: re@freebsd.org Notes: svn path=/head/; revision=123094
* Do not adjust to the pagesize at runtime. Besides for the one-timeMarcel Moolenaar2003-11-281-8/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | initialization overhead, there's a problem in that we never call imalloc() and thus malloc_init() for zero-sized allocations. As a result, malloc(0) returns NULL when it's the first or only malloc in the program. Any non-zero allocation will initialize the malloc code with the side-effect that subsequent zero-sized allocations return a non-NULL pointer. This is because the pointer we return for zero- sized allocations is calculated from malloc_pageshift, which needs to be initialized at runtime on ia64. The result of the inconsistent behaviour described above is that configure scripts failed the test for a GNU compatible malloc. This resulted in a lot of broken ports. Other, even simpler, solutions were possible as well: 1. initialize malloc_pageshift with some non-zero value (say 13 for 8KB pages) and keep the runtime adjustment. 2. Stop using malloc_pageshift to calculate ZEROSIZEPTR. Removal of the runtime adjustment was chosen because then ia64 is the same as any other platform. It is not to say that using a page size obtained at runtime is bad per se. It's that there's currently a high level of gratuity for its existence and the moment it causes problems is the moment you need to get rid of it. Hence, it's not unthinkable that this commit is (partially) reverted some time in the future when we do have a good reason for it and a good way to achieve it. Approved by: re@ (rwatson) Reported by: kris (portmgr@) -- may the ports be with you Notes: svn path=/head/; revision=123031
* Replace out of date struct statfs definition with a reference to statfs(2).Tim J. Robbins2003-11-211-64/+3
| | | | | | | Approved by: re Notes: svn path=/head/; revision=122936
* Fix problem where initgroups would silently truncate groups withDiomidis Spinellis2003-11-191-2/+7
| | | | | | | | | | more than NGROUP elements without providing the opportunity to setgroups to fail and correctly return error and set errno. MFC after: 2 weeks Notes: svn path=/head/; revision=122899
* Documented missing EINVAL errno valueDiomidis Spinellis2003-11-191-0/+6
| | | | | | | | | | | kern_prot.c: if (ngrp > NGROUPS) return (EINVAL); MFC after: 2 weeks Notes: svn path=/head/; revision=122895
* Install the user trap handlers that libc provides from a constructor, soJake Burkholder2003-11-181-0/+2
| | | | | | | | | | | that they will be installed before application constructors are invoked. Its possible to link applications such that this fails, application code is invoked before they are installed, but, well, Don't Do That. Approved by: re (jhb) Notes: svn path=/head/; revision=122883
* Staticize label_default_head to prevent it from leaking out of mac.c.Robert Watson2003-11-171-1/+1
| | | | | | | | Obtained from: TrustedBSD Project Sponsored by: DARPA, Network Associates Laboratories Notes: svn path=/head/; revision=122868