summaryrefslogtreecommitdiffstats
path: root/lib/libc
Commit message (Collapse)AuthorAgeFilesLines
* Add wcpcpy(3) and wcpncpy(3).das2009-03-045-3/+108
|
* Add dprintf() and vdprintf() from POSIX.1-2008. Like getline(),das2009-03-046-32/+198
| | | | | | dprintf() is a simple wrapper around another function, so we may as well implement it. But also like getline(), we can't prototype it by default right now because it would break too many ports.
* Fix a file descriptor leak in fts_child().das2009-03-041-1/+3
| | | | Obtained from: NetBSD
* Considerably improve the wording of this man page.bms2009-03-041-20/+77
|
* Update copyright.bms2009-03-041-16/+13
|
* Explicitly specify bit width for on-disk data structure.delphij2009-03-041-17/+17
| | | | Obtained from: OpenBSD
* Sync license changes.delphij2009-03-042-20/+3
| | | | Obtained from: NetBSD
* Style changes (including additional casts to shut up warnings). Thisdelphij2009-03-0415-36/+35
| | | | commit does not affect MD5 of object file.
* Rename variable 'index' to 'idx' to avoid name collision with index(3),delphij2009-03-037-101/+87
| | | | | | | this commit does not affect any object code. Obtained from: OpenBSD Verified with: md5(1)
* Diff reduction against OpenBSD: ANSI'fy prototypes.delphij2009-03-0228-485/+196
| | | | | | | | (This is part of a larger changeset which is intended to reduce diff only, thus some prototypes were left intact since they will be changed in the future). Verified with: md5(1)
* Correct types of variables used to track amount of allocated SysV sharedkib2009-03-021-0/+9
| | | | | | | | | | | | | | memory from int to size_t. Implement a workaround for current ABI not allowing to properly save size for and report more then 2Gb sized segment of shared memory. This makes it possible to use > 2 Gb shared memory segments on 64bit architectures. Please note the new BUGS section in shmctl(2) and UPDATING note for limitations of this temporal solution. Reviewed by: csjp Tested by: Nikolay Dzham <i levsha org ua> MFC after: 2 weeks
* Rewrite asprintf() as a wrapper around vasprintf(), thus reducing thedas2009-03-021-43/+22
| | | | | number of functions that have an incestuous relationship with the arcane innards of stdio.
* The argument corresponding to %zn is supposed to be an ssize_t *, notdas2009-03-022-6/+6
| | | | a size_t *, although the distinction is moot in practice.
* Use C99-style initializers. No functional change.das2009-03-011-4/+9
| | | | Reviewed by: md5(1)
* Add a missing .El.delphij2009-03-011-0/+1
|
* "-isoC-99" should be spelled without 'c'.delphij2009-03-011-1/+1
|
* Add missing POSIX 1003.1-2008 open(2) flag; O_TTY_INIT.ed2009-02-281-1/+15
| | | | | | | On FreeBSD, this is the default behaviour. According to the spec, we may give this flag a value of zero, but I'd rather not do this. If we define it to a non-zero value, we can always change default behaviour without changing the ABI. This is very unlikely to happen, though.
* Replace a dozen lines of code with a call to strnlen() / wcsnlen().das2009-02-282-33/+2
|
* Add restrict qualifiers.das2009-02-281-1/+1
| | | | I missed this file in my previous commit.
* - Add getdelim(), getline(), stpncpy(), strnlen(), wcsnlen(),das2009-02-2818-26/+689
| | | | | | | | | | | | wcscasecmp(), and wcsncasecmp(). - Make some previously non-standard extensions visible if POSIX_VISIBLE >= 200809. - Use restrict qualifiers in stpcpy(). - Declare off_t and size_t in stdio.h. - Bump __FreeBSD_version in case the new symbols (particularly getline()) cause issues with ports. Reviewed by: standards@
* Add restrict qualifiers to the parameters to strlcpy() and strlcat().das2009-02-283-4/+4
| | | | | The annotation mainly just serves as a hint that they're not intended for use with overlapping strings.
* Make sure %zd treats negative arguments properly on 32-bit platforms.das2009-02-283-5/+8
| | | | | | | Fix harmless but related bugs in %_$zd and %_$tu. PR: 131880 MFC after: 1 week
* These warnings are only relevant on NetBSD it seems. They don't seemimp2009-02-192-6/+0
| | | | to be relevant to FreeBSD at all.
* These symbols don't belong here. Remove them. Since mips hasn't hadimp2009-02-191-4/+0
| | | | | | a release, I think there's no impact here... Reviewed by: cognet@
* Properly invalidate highest pts number when calling setttyent().ed2009-02-121-5/+4
| | | | | | | | | When calling setttyent() after calling endttyent(), pts_valid will never be set to 1, because the readdir()-loop will likely never vind a pts that has a higher number than before. Simplify the code by removing pts_valid. We'll just set maxpts to -1 when we don't have a valid count yet.
* Make ttyslot(3) work with pts(4) devices.ed2009-02-121-6/+5
| | | | | | | It seems ttyslot() calls rindex(), to strip the device name to the last slash, but this is obviously invalid. /dev/pts/0 should be stripped until pts/0. Because /etc/ttys only supports TTY names in /dev/, just strip this piece of the pathname.
* Add two new routines: fdevname() and fdevname_r().ed2009-02-116-20/+88
| | | | | | | | | | | | | | A more elegant way of obtaining a name of a character device by its file descriptor on FreeBSD, is to use the FIODGNAME ioctl. Because a valid file descriptor implies a file descriptor is visible in /dev, it will always resolve a valid device name. I'm adding a more friendly wrapper for this ioctl, called fdevname(). It is a lot easier to use than devname() and also has better error handling. When a device name cannot be resolved, it will just return NULL instead of a generated device name that makes no sense. Discussed with: kib
* Shutup warning for DNAME RR.ume2009-02-082-2/+3
| | | | | | PR: bin/127591 Submitted by: "Eugene M. Kim" <20080111.freebsd.org__at__ab.ote.we.lv> MFC after: 1 week
* Fix language on atol(3) manpage. Add a COMPATIBILITY sectionkeramida2009-02-081-3/+32
| | | | | | | | | | stating that in FreeBSD the atol() and atoll() functions affect errno in the same way as strtol() and stroll(). PR: docs/126487 Submitted by: edwin Reviewed by: trhodes, gabor MFC after: 1 week
* Make sure the comparison is done with an unsigned char.imp2009-02-071-1/+1
|
* Standardize the various prison_foo_ip[46] functions and prison_if tojamie2009-02-051-2/+2
| | | | | | | | | | | | | | | return zero on success and an error code otherwise. The possible errors are EADDRNOTAVAIL if an address being checked for doesn't match the prison, and EAFNOSUPPORT if the prison doesn't have any addresses in that address family. For most callers of these functions, use the returned error code instead of e.g. a hard-coded EADDRNOTAVAIL or EINVAL. Always include a jailed() check in these functions, where a non-jailed cred always returns success (and makes no changes). Remove the explicit jailed() checks that preceded many of the function calls. Approved by: bz (mentor)
* Fix the functions to match prototypes. The K&R definitions differimp2009-02-033-3/+3
| | | | from the ANSI-C prototype due to the 'int promotion' rule.
* - ANSIfy function definitionsdanger2009-02-0333-110/+41
| | | | | | - use nul when we are looking for a terminating character where appropriate Approved by: imp
* Provide a type for the argument.rdivacky2009-02-021-1/+1
| | | | Approved by: kib (mentor)
* - Remove superfluous commentgabor2009-01-301-2/+0
| | | | | PR: docs/129400 Submitted by: Gavin Atkinson <gavin@freebsd.org>
* Update the description of KERN_PROC.trhodes2009-01-281-5/+3
| | | | | PR: 100242 Reviewed by: jhb
* Better wording for clearing EOF indicator.trhodes2009-01-281-0/+4
| | | | Submitted by: keramida and jhb
* Remove another comment about clearing EOF indicator.trhodes2009-01-281-4/+1
| | | | Noticed by: bde
* Update the manpage to reflect r145172.das2009-01-281-2/+1
|
* Remove comment about clearerr() being the only method of clearingtrhodes2009-01-281-3/+1
| | | | | | | | | the EOF indicator, fseek() may also be used for this. Bump document date. PR: 76333 Submitted by: Yoshihiko Sarumaru <mistral@imasy.or.jp>
* - Fix grammar. [1]delphij2009-01-261-3/+3
| | | | | | | | - Use the correct term 'long mode'. [2] - style(9) for return value. [3] Submitted by: Ben Kaduk <minimarmot gmail com> [1], obrien [2], scf [3]
* Rewrite of MI strlen(3) in a way that can better utilize modern hardware bydelphij2009-01-251-15/+78
| | | | | | | | | reducing branches and doing word-sized operation. The idea is taken from J.T. Conklin's x86_64 optimized version of strlen(3) for NetBSD, and reimplemented in C by me. Discussed on: -arch@
* Add support for multibyte thousands_sep encodings, e.g., U+066C.das2009-01-223-173/+225
| | | | | | | | The integer thousands' separator code is rewritten in order to avoid having to preallocate a buffer for the largest possible digit string with the most possible instances of the longest possible multibyte thousands' separator. The new version inserts thousands' separators for integers using the same code as floating point.
* - Add support for multibyte decimal_point encodings, e.g., U+066B.das2009-01-192-23/+49
| | | | | A forthcoming gdtoa import is needed to make this fully work. - Improve the way "nan(...)" is parsed.
* Add support for multibyte decimal_point encodings, e.g., U+066B.das2009-01-192-23/+35
|
* When f[w]printf() is called on an unbuffered file like stdout, itdas2009-01-172-14/+23
| | | | | | | | | | | | | | | | sets up a fake buffered FILE and then effectively calls itself recursively. Unfortunately, gcc doesn't know how to do tail call elimination in this case, and actually makes things worse by inlining __sbprintf(). This means that f[w]printf() to stderr was allocating about 5k of stack on 64-bit platforms, much of which was never used. I've reorganized things to eliminate the waste. In addition to saving some stack space, this improves performance in my tests by anywhere from 5% to 17% (depending on the test) when -fstack-protector is enabled. I found no statistically significant performance difference when stack protection is turned off. (The tests redirected stderr to /dev/null.)
* Simplify printf's inlined output buffering routines. On amd64, thisdas2009-01-171-18/+18
| | | | reduces the code size by about 10% and improves performance slightly.
* Change dstp to be const and remove bogus cast.rdivacky2009-01-151-2/+3
| | | | | Submitted by: christoph.mallon at gmx.de Approved by: kib (mentor)
* Introduce a local variable and use it instead of passed in parameterrdivacky2009-01-155-6/+16
| | | | | | | | to get rid of restrict qualifier discarding. This lets libc compile cleanly in gnu99 mode. Suggested by: kib, christoph.mallon at gmx.de Approved by: kib (mentor)
* Reduce code duplication by moving functions that are identical in bothdas2009-01-153-427/+216
| | | | | vfprintf.c and vfwprintf.c (except for char/wchar_t differences) to a common header file.
OpenPOWER on IntegriCloud