summaryrefslogtreecommitdiff
path: root/lib/libc/string
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix prototype for ffsll(3) and fls(3).Xin LI2011-05-031-2/+2
| | | | | | | | | PR: docs/156796 Submitted by: Jean-Yves Migeon <jeanyves.migeon free.fr> MFC after: 3 days Notes: svn path=/head/; revision=221401
* Allow strerror(0) and strerror_r(0, ...).Jilles Tjoelker2011-04-052-2/+5
| | | | | | | | | | | | | | | | Of course, strerror_r() may still fail with ERANGE. Although the POSIX specification said this could fail with EINVAL and doing this likely indicates invalid use of errno, most other implementations permitted it, various POSIX testsuites require it to work (matching the older sys_errlist array) and apparently some applications depend on it. PR: standards/151316 MFC after: 1 week Notes: svn path=/head/; revision=220376
* index(3): Mention that index/rindex are deprecated and not specified byJilles Tjoelker2011-03-201-1/+14
| | | | | | | | | POSIX.1-2008. MFC after: 1 week Notes: svn path=/head/; revision=219803
* Powerpc is special here. powerpc and powerpc64 use different ABIs, soWarner Losh2010-08-241-4/+2
| | | | | | | | | their implementations aren't in the same files. Introduce LIBC_ARCH and use that in preference to MACHINE_CPUARCH. Tested by amd64 and powerpc64 builds (thanks nathanw@) Notes: svn path=/head/; revision=211774
* MFtbemd:Warner Losh2010-08-231-3/+3
| | | | | | | | Prefer MACHNE_CPUARCH to MACHINE_ARCH in most contexts where you want to test of all the CPUs of a given family conform. Notes: svn path=/head/; revision=211725
* mdoc: move CAVEATS, BUGS and SECURITY CONSIDERATIONS sections to theUlrich Spörlein2010-05-132-27/+27
| | | | | | | | | | | | | | bottom of the manpages and order them consistently. GNU groff doesn't care about the ordering, and doesn't even mention CAVEATS and SECURITY CONSIDERATIONS as common sections and where to put them. Found by: mdocml lint run Reviewed by: ru Notes: svn path=/head/; revision=208027
* Correct bugs fixed but not merged from my own tree.Xin LI2010-03-131-2/+3
| | | | | | | | Pointy hat to: delphij MFC after: 1 month Notes: svn path=/head/; revision=205108
* Follow up commit to reindent the code.Xin LI2010-03-121-13/+13
| | | | | | | MFC after: 1 month Notes: svn path=/head/; revision=205100
* Two optimizations to MI strlen(3) inspired by David S. Miller'sXin LI2010-03-121-12/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | blog posting [1]. - Use word-sized test for unaligned pointer before working the hard way. Memory page boundary is always integral multiple of a word alignment boundary. Therefore, if we can access memory referenced by pointer p, then (p & ~word mask) must be also accessible. - Better utilization of multi-issue processor's ability of concurrency. The previous implementation utilized a formular that must be executed sequentially. However, the ~, & and - operations can actually be caculated at the same time when the operand were different and unrelated. The original Hacker's Delight formular also offered consistent performance regardless whether the input would contain characters with their highest-bit set, as it catches real nul characters only. These two optimizations has shown further improvements over the previous implementation on microbenchmarks on i386 and amd64 CPU including Pentium 4, Core Duo 2 and i7. [1] http://vger.kernel.org/~davem/cgi-bin/blog.cgi/2010/03/08#strlen_1 MFC after: 1 month Notes: svn path=/head/; revision=205099
* Mark up "unsigned char".Ruslan Ermilov2010-02-044-4/+11
| | | | Notes: svn path=/head/; revision=203485
* Implement strndup(3) using strnlen(3).Ed Schouten2010-02-021-3/+1
| | | | | | | | This makes the implementation a bit more consistent with strdup(3), which uses strlen(3). Notes: svn path=/head/; revision=203391
* Make strsignal(3) thread-safe.Hajimu UMEMOTO2010-01-241-4/+48
| | | | | | | MFC after: 2 weeks Notes: svn path=/head/; revision=202916
* Add a missing word to a sentence in the return values section.Tom Rhodes2009-12-041-1/+1
| | | | Notes: svn path=/head/; revision=200095
* Add an .Nm for strncat.Christian Brueffer2009-12-011-2/+3
| | | | | | | | | PR: 141037 Submitted by: Jeremy Huddleston <jeremyhu@apple.com> MFC after: 3 days Notes: svn path=/head/; revision=199988
* Correct the information about when the respective functionality firstChristian Brueffer2009-04-231-1/+1
| | | | | | | | | | | appeared in FreeBSD. PR: 133785 Submitted by: Ulrich Spoerlein <uqs@spoerlein.net> MFC after: 3 days Notes: svn path=/head/; revision=191414
* There is no way for strmode(3) to append '+' if the file has ACL,Edward Tomasz Napierala2009-04-142-4/+2
| | | | | | | | because there is no way to figure that out based on the file mode itself. Make the manual page match reality. Notes: svn path=/head/; revision=191055
* Add wide character variants of string manipulations routines to 'SEE ALSO'.Edward Tomasz Napierala2009-04-0716-16/+33
| | | | | | | Approved by: rwatson (mentor) Notes: svn path=/head/; revision=190798
* 7.2 will be the first release where strndup() appears.Konstantin Belousov2009-03-221-1/+1
| | | | | | | | Submitted by: Florian Smeets <flo kasimir com> MFC after: 3 days Notes: svn path=/head/; revision=190266
* Add wcpcpy(3) and wcpncpy(3).David Schultz2009-03-045-3/+108
| | | | Notes: svn path=/head/; revision=189361
* Add restrict qualifiers.David Schultz2009-02-281-1/+1
| | | | | | | I missed this file in my previous commit. Notes: svn path=/head/; revision=189137
* - Add getdelim(), getline(), stpncpy(), strnlen(), wcsnlen(),David Schultz2009-02-2810-21/+312
| | | | | | | | | | | | | | | 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@ Notes: svn path=/head/; revision=189136
* Add restrict qualifiers to the parameters to strlcpy() and strlcat().David Schultz2009-02-283-4/+4
| | | | | | | | The annotation mainly just serves as a hint that they're not intended for use with overlapping strings. Notes: svn path=/head/; revision=189133
* Make sure the comparison is done with an unsigned char.Warner Losh2009-02-071-1/+1
| | | | Notes: svn path=/head/; revision=188295
* Fix the functions to match prototypes. The K&R definitions differWarner Losh2009-02-033-3/+3
| | | | | | | from the ANSI-C prototype due to the 'int promotion' rule. Notes: svn path=/head/; revision=188098
* - ANSIfy function definitionsDaniel Gerzo2009-02-0333-110/+41
| | | | | | | | | - use nul when we are looking for a terminating character where appropriate Approved by: imp Notes: svn path=/head/; revision=188080
* - Fix grammar. [1]Xin LI2009-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] Notes: svn path=/head/; revision=187707
* Rewrite of MI strlen(3) in a way that can better utilize modern hardware byXin LI2009-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@ Notes: svn path=/head/; revision=187700
* Document that ffsll(3) and flsll(3) functions first appeared inKonstantin Belousov2009-01-131-1/+1
| | | | | | | | | | FreeBSD 7.1 Submitted by: Jan Henrik Sylvester <me janh de> MFC after: 3 days Notes: svn path=/head/; revision=187147
* o Language improvements from OpenBSD;Xin LI2009-01-121-17/+17
| | | | | | | | | o Use an ISC-style license as did by the author. Obtained from: OpenBSD Notes: svn path=/head/; revision=187091
* o ANSIfy.Xin LI2009-01-121-29/+12
| | | | | | | | | o Use ISC style copyright as did by the author. Obtained from: OpenBSD Notes: svn path=/head/; revision=187090
* Sort MLINKS.Ruslan Ermilov2009-01-091-21/+32
| | | | Notes: svn path=/head/; revision=186957
* o Use full month name in .Dd macro.Maxim Konovalov2008-12-091-1/+1
| | | | Notes: svn path=/head/; revision=185789
* Import the strndup(3) function.Konstantin Belousov2008-12-064-3/+75
| | | | | | | | | | | Copyright attribution is kept the same as in original NetBSD source. Submitted by: Florian Smeets <flo kasimir com> Obtained from: NetBSD MFC after: 2 weeks Notes: svn path=/head/; revision=185690
* Order the str*.c files mostly alphabetical.Konstantin Belousov2008-12-061-3/+3
| | | | | | | | Submitted by: Florian Smeets <flo kasimir com> MFC after: 2 weeks Notes: svn path=/head/; revision=185689
* Add an easier example.Pawel Jakub Dawidek2008-12-051-1/+16
| | | | | | | Reviewed by: trasz Notes: svn path=/head/; revision=185641
* Add the ffsll and flsll functions. These are ffs and fls operatingKonstantin Belousov2008-11-035-8/+122
| | | | | | | | | | | on long long arguments. Reviewed by: bde (previous version, that included asm implementation for all ffs and fls functions on i386 and amd64) MFC after: 2 weeks Notes: svn path=/head/; revision=184587
* Fix style.Konstantin Belousov2008-11-031-1/+1
| | | | Notes: svn path=/head/; revision=184586
* - License change to a less restrictive one;Xin LI2008-10-191-33/+16
| | | | | | | | | | | - ANSIfy; - Convert do {} while loop -> while {} for clarity; - Sync RCS ID with OpenBSD; Obtained from: OpenBSD Notes: svn path=/head/; revision=184059
* Further simplify the code.Xin LI2008-10-191-11/+2
| | | | | | | Submitted by: Christoph Mallon <christoph.mallon gmx.de> Notes: svn path=/head/; revision=184055
* Use strlcpy() in !localized case to avoid the -1's.Xin LI2008-10-171-2/+1
| | | | Notes: svn path=/head/; revision=183990
* Add memrchr(3).Xin LI2008-04-104-4/+74
| | | | | | | Obtained from: OpenBSD Notes: svn path=/head/; revision=178051
* Remove license clause 3 to agree with the now-standard BSD license.Wes Peters2007-12-123-14/+0
| | | | | | | Prompted by: Glenn Halperin, Symbian Software Notes: svn path=/head/; revision=174553
* Use C comments since we now preprocess these files with CPP.Daniel Eischen2007-04-291-2/+4
| | | | Notes: svn path=/head/; revision=169092
* Per Regents of the University of Calfornia letter, remove advertisingWarner Losh2007-01-0968-272/+0
| | | | | | | | | clause. # If I've done so improperly on a file, please let me know. Notes: svn path=/head/; revision=165903
* Don't say "rightmost" when referring to the least significant bit.Ruslan Ermilov2006-10-121-4/+5
| | | | | | | | PR: docs/94803 MFC after: 3 days Notes: svn path=/head/; revision=163274
* Improve the wording. Remove the appositive about strcmp, putting theDima Dorfman2006-08-141-2/+5
| | | | | | | | first sentence back to the way it was. Add a second sentence that explains the case when strcmp is called. Notes: svn path=/head/; revision=161274
* o Make grep ^strlcpy work: put a return value type on separate line.Maxim Konovalov2006-06-151-1/+2
| | | | Notes: svn path=/head/; revision=159644
* Add each directory's symbol map file to SYM_MAPS.Daniel Eischen2006-03-131-0/+2
| | | | Notes: svn path=/head/; revision=156613
* Add symbol maps and initial symbol version definitions to libc.Daniel Eischen2006-03-131-0/+80
| | | | | | | Reviewed by: davidxu Notes: svn path=/head/; revision=156608
* Fix prototype.Ruslan Ermilov2005-11-241-2/+2
| | | | Notes: svn path=/head/; revision=152746