summaryrefslogtreecommitdiffstats
path: root/lib/libc/stdio/asprintf.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Fix the handle locking in stdio to use flockfile/funlockfileguenther2009-10-211-2/+2
| | | | | | | | | | | | internally when and where required. Macros in <stdio.h> are updated to automatically call the underlying functions when the process is threaded to obtain the necessary locking. A private mutex is added to protect __sglue, the internal list of FILE handles, and another to protect the one-time initialization. Some routines in libc that use getc() change to use getc_unlocked() as they're either protected by their own lock or aren't thread-safe routines anyway. ok kurt@, earlier version tested by sthen@ and jj@
* Remove a few warnings. Those were not apparent thanks to a bug in gcc 2.95.espie2005-10-101-1/+2
| | | | | Patch by Leonardo Chiquitto Filho <leonardo@iken.com.br> Thanks.
* zap remaining rcsid.espie2005-08-081-5/+1
| | | | | | Kill old files that are no longer compiled. okay theo
* Move the va_start()/va_end() pair such that it directly backets the callmillert2005-05-281-5/+4
| | | | | to vfprintf() like the rest of the *printf functions. This is clearer and makes the error case in asprintf() simpler. From Andrey Matveev.
* Change internals of FILE: reuse the unget buffer field to access anespie2005-04-301-2/+5
| | | | | | | | | | | | | | | | extended attribute data structure (pimpl idiom). Idea taken from citrus. Much discussion with deraadt@, otto@, millert@... This is the least disruptive way to extend FILE, since its size can't really change without this being a flag day. So the size doesn't change. Actual additions to the structure will come in separate steps, since this change is nasty enough on its own. Tests by otto@ and others, careful reading of code by otto@ and millert@. This is definitely a major bump, and has been checked to not impact a full ports build.
* make sure the implementation matches the prototype..pat2005-03-311-3/+3
| | | | | | char const * -> const char * ok otto@ deraadt@
* Sync with share/misc/license.template and add missing DARPA creditmillert2003-06-171-9/+9
| | | | where applicable.
* Use an ISC-tyle license for all my code; it is simpler and more permissive.millert2003-06-031-23/+12
|
* We live in an ANSI C world. Remove lots of gratuitous #ifdef __STDC__ cruft.millert2002-02-191-17/+2
|
* make sure that va_start() has matching va_end()deraadt2001-09-051-3/+4
|
* Make sure we free the buffer in all error cases. Do the finalmillert1998-10-161-15/+20
| | | | | realloc(3) to the size of the string, not the size of the buffer allocated for the string (which is a noop). mycroft@netbsd.org
* realloc repairderaadt1998-08-141-4/+6
|
* Remove the advertising clause in my old license, it impedes free usemillert1998-06-211-6/+3
| | | | | of the code as a large number of similar clauses makes it impossible to write an ad for a product using the code...
* Cast pointer in assignmenttholo1998-02-071-3/+3
|
* Based on some FreeBSD changes:millert1998-01-121-2/+3
| | | | | | For *s*printf, set f._file to -1 like the comments in stdio.h say. Use '\0', not 0, where appropriate. Don't error out on size of '0' for v?snprintf().
* Implement asprintf(3) and vasprintf(3) functions similar to themillert1997-11-291-0/+83
ones in the glibc. Some man pages changes from FreeBSD (asprintf.c/vasprintf.c are not based on GNU or FreeBSD code).