Revision tags: release/7.1.0_cvs, release/7.1.0, release/6.4.0_cvs, release/6.4.0 |
|
#
1e98f887 |
| 18-Apr-2008 |
John Baldwin <jhb@FreeBSD.org> |
Next stage of stdio cleanup: Retire __sFILEX and merge the fields back into __sFILE. This was supposed to be done in 6.0. Some notes: - Where possible I restored the various lines to their pre-__sF
Next stage of stdio cleanup: Retire __sFILEX and merge the fields back into __sFILE. This was supposed to be done in 6.0. Some notes: - Where possible I restored the various lines to their pre-__sFILEX state. - Retire INITEXTRA() and just initialize the wchar bits (orientation and mbstate) explicitly instead. The various places that used INITEXTRA didn't need the locking fields or _up initialized. (Some places needed _up to exist and not be off the end of a NULL or garbage pointer, but they didn't require it to be initialized to a specific value.) - For now, stdio.h "knows" that pthread_t is a 'struct pthread *' to avoid namespace pollution of including all the pthread types in stdio.h. Once we remove all the inlines and make __sFILE private it can go back to using pthread_t, etc. - This does not remove any of the inlines currently and does not change any of the public ABI of 'FILE'.
MFC after: 1 month Reviewed by: peter
show more ...
|
Revision tags: release/7.0.0_cvs, release/7.0.0, release/6.3.0_cvs, release/6.3.0, release/6.2.0_cvs, release/6.2.0 |
|
#
c879ae35 |
| 09-Jan-2007 |
Warner Losh <imp@FreeBSD.org> |
Per Regents of the University of Calfornia letter, remove advertising clause.
# If I've done so improperly on a file, please let me know.
|
#
2b46c64c |
| 22-Aug-2006 |
Ruslan Ermilov <ru@FreeBSD.org> |
Remove alpha left-overs.
|
Revision tags: release/5.5.0_cvs, release/5.5.0, release/6.1.0_cvs, release/6.1.0, release/6.0.0_cvs, release/6.0.0, release/5.4.0_cvs, release/5.4.0, release/4.11.0_cvs, release/4.11.0, release/5.3.0_cvs, release/5.3.0, release/4.10.0_cvs, release/4.10.0 |
|
#
87275e43 |
| 22-May-2004 |
Tim J. Robbins <tjr@FreeBSD.org> |
Associate a multibyte conversion state object with each stream. Reset it to the initial state when a stream is opened or seeked upon. Use the stream's conversion state object instead of a freshly-zer
Associate a multibyte conversion state object with each stream. Reset it to the initial state when a stream is opened or seeked upon. Use the stream's conversion state object instead of a freshly-zeroed one in fgetwc(), fputwc() and ungetwc().
This is only a performance improvement for now, but it would also be required in order to support state-dependent encodings.
show more ...
|
Revision tags: release/5.2.1_cvs, release/5.2.1, release/5.2.0_cvs, release/5.2.0, release/4.9.0_cvs, release/4.9.0, release/5.1.0_cvs, release/5.1.0, release/4.8.0_cvs, release/4.8.0, release/5.0.0_cvs, release/5.0.0 |
|
#
cf04ed1b |
| 14-Nov-2002 |
Warner Losh <imp@FreeBSD.org> |
bde points out that the LIBC_MAJOR macro doesn't exist and requests that we not use it here. In its place I've put a comment about the current state of play.
Submitted by: bde
|
#
c906b663 |
| 10-Nov-2002 |
Warner Losh <imp@FreeBSD.org> |
Restore Peter's version of static __sF. There's too much pain for it to be static for 5.0. I may remove this for 5.1 or 5.2. No more binaries or libarires will be generated with __sF starting as o
Restore Peter's version of static __sF. There's too much pain for it to be static for 5.0. I may remove this for 5.1 or 5.2. No more binaries or libarires will be generated with __sF starting as of yesterday. Originally the plan had been to eliminate this for 5.0, but we didn't get the __std{in,out,err}p changes merged into -stable until yesterday (rather than in September 2001 like it should have been). Given that didn't happen on time, we can't do the other part of the scheme now.
# Please do not change this without talking to me first.
show more ...
|
#
ac1cc6ee |
| 04-Nov-2002 |
Alfred Perlstein <alfred@FreeBSD.org> |
Backout "compatibility hack" for __sF.
Requested by: Steve Kargl <sgk@troutmask.apl.washington.edu> (submitter)
|
#
0fc25b92 |
| 02-Nov-2002 |
Alfred Perlstein <alfred@FreeBSD.org> |
Provide a hook to make __sF visible outside of libc for commercial apps if WANT_COMPAT4_STDIO is defined when compiling libc.
Submitted by: Steve Kargl <sgk@troutmask.apl.washington.edu>
|
#
c313cb2a |
| 31-Oct-2002 |
Alfred Perlstein <alfred@FreeBSD.org> |
Make __sF static. This can not be allowed to exist in 5.x.
|
#
d7dd6ae7 |
| 20-Oct-2002 |
Peter Wemm <peter@FreeBSD.org> |
Give in on the __sF stuff. I have a better fix in mind that is future proof, but this should buy me some time for now.
|
#
74a4ba21 |
| 12-Oct-2002 |
Peter Wemm <peter@FreeBSD.org> |
Zap the early-adopter transition aid before we get into serious 5.0-R territory, as threatened. This only affects antique 5.0 systems that have not had a 'make world' done for well over a year.
|
Revision tags: release/4.7.0_cvs, release/4.6.2_cvs, release/4.6.2 |
|
#
e74101e4 |
| 13-Aug-2002 |
Tim J. Robbins <tjr@FreeBSD.org> |
Basic support for wide character I/O: getwc(), fgetwc(), getwchar(), putwc(), fputwc(), putwchar(), ungetwc(), fwide().
|
Revision tags: release/4.6.1, release/4.6.0_cvs |
|
#
333fc21e |
| 22-Mar-2002 |
David E. O'Brien <obrien@FreeBSD.org> |
Fix the style of the SCM ID's. I believe have made all of libc .c's as consistent as possible.
|
#
c05ac53b |
| 21-Mar-2002 |
David E. O'Brien <obrien@FreeBSD.org> |
Remove __P() usage.
|
Revision tags: release/4.5.0_cvs, release/4.4.0_cvs |
|
#
2b618987 |
| 13-Aug-2001 |
Peter Wemm <peter@FreeBSD.org> |
Rip out the old __stdin/out/err stuff. It was completely 100% useless. :-( It was foiled because of dynamic copy relocations that caused compile-time space to be reserved in .bss and at run time a bl
Rip out the old __stdin/out/err stuff. It was completely 100% useless. :-( It was foiled because of dynamic copy relocations that caused compile-time space to be reserved in .bss and at run time a blob of data was copied to that space and everything used the .bss version.. The problem is that the space is reserved at compile time, not runtime... So we *still* could not change the size of FILE. Sigh. :-(
Replace it with something that does actually work and really does let us make 'FILE' extendable. It also happens to be the same as Linux does in glibc, but has the slight cost of a pointer. Note that this is the same cost that 'fp = fopen(), fprintf(fp, ...); fclose(fp);' has. Fortunately, actual references to stdin/out/err are not all that common since we have implicit stdin/out/err-using versions of functions (printf() vs. fprintf()).
show more ...
|
#
549c2919 |
| 29-Jul-2001 |
Sheldon Hearn <sheldonh@FreeBSD.org> |
Avoid any chance of being misunderstood as having libelled developers or developers' vendors without compromising the importance of warning against bad practice.
Reported by: mjacob MFC after: 1 week
|
Revision tags: release/4.3.0_cvs, release/4.3.0 |
|
#
3d92fc05 |
| 20-Feb-2001 |
Peter Wemm <peter@FreeBSD.org> |
Place some hooks (__stdin, __stdout, __stderr) into libc for a future ABI change. There is some serious evilness here to work around some gcc weaknesses. We need to know the sizeof(FILE) manually u
Place some hooks (__stdin, __stdout, __stderr) into libc for a future ABI change. There is some serious evilness here to work around some gcc weaknesses. We need to know the sizeof(FILE) manually until __sF goes away in the next major bump. We have the size for Alpha and i386, missing is ia64, ppc and sparc* (and i386 with 64 bit longs). At some point down the track we can change the stdin etc #defines to stop hard coding the size of FILE into application binaries.
Lots of head scratching and ideas and testing by: green, imp
show more ...
|
#
b0f8f421 |
| 16-Feb-2001 |
Warner Losh <imp@FreeBSD.org> |
Extra needs to be initialized for our usual pool of FILEs. This was causing some versions of as to dump core. This survived make buildworld/installworld and the building gettext port afterwards.
S
Extra needs to be initialized for our usual pool of FILEs. This was causing some versions of as to dump core. This survived make buildworld/installworld and the building gettext port afterwards.
Submitted by: <nnd@mail.nsk.ru> "N.Dudorov" Reviewed by: "Daniel M. Eischen" <eischen@vigrid.com>
show more ...
|
#
91e1be28 |
| 16-Feb-2001 |
Warner Losh <imp@FreeBSD.org> |
Fix the current libc breakage in current: o Back out the __std* stuff. Can't figure out how to do this right now, so we'll save it for late. o use _up as a pointer for extra fields that we need to
Fix the current libc breakage in current: o Back out the __std* stuff. Can't figure out how to do this right now, so we'll save it for late. o use _up as a pointer for extra fields that we need to access. o back out the libc major version bump.
Submitted by: green reviewed by: peter, imp, green, obrien (to varying degrees).
We'll fix the "how do we stop encoding sizeof(FILE) in binaries" part later.
show more ...
|
#
ff9dc074 |
| 14-Feb-2001 |
Peter Wemm <peter@FreeBSD.org> |
Commit a libc fix going by the current state of the version numbering bikeshed in -arch. It isn't quite over, but it has been well established that this can be adjusted or refined. But we do seem t
Commit a libc fix going by the current state of the version numbering bikeshed in -arch. It isn't quite over, but it has been well established that this can be adjusted or refined. But we do seem to have consensis on a major bump of some sort. After this, it should reasonably safe to build world again.
This change is to get rid of __sF[] and use seperate __stdin/out/err handles. This means we can pad on extra bits onto the end of FILE at will without going through this all over again. __sF[] was evil because it compiled the sizeof(FILE) into every stdio using program.
Asbestos suit on: check! Peril sensitive sunglasses on: check! *gulp!*
show more ...
|
#
56f98998 |
| 12-Feb-2001 |
Peter Wemm <peter@FreeBSD.org> |
It sounded like a good idea at the time. The previous change breaks FILE *buffer = stdout; so back it out for now.
|
#
9b8ff47f |
| 12-Feb-2001 |
Peter Wemm <peter@FreeBSD.org> |
Take advantage of the current libc sizeof(FILE) breakage (__sF[]) and try a hopefully more robust stdin/stdout/stderr. This costs an indirect pointer fetch, but saves us from changes in 'FILE'. The
Take advantage of the current libc sizeof(FILE) breakage (__sF[]) and try a hopefully more robust stdin/stdout/stderr. This costs an indirect pointer fetch, but saves us from changes in 'FILE'. The __stdin stuff is there to not pollute application name space if the application does not use <stdio.h> and also in case something depended on the current behavior where stdin etc was a #define.
Reviewed by: eischen, dillon
show more ...
|
#
29ac6bd2 |
| 11-Feb-2001 |
Daniel Eischen <deischen@FreeBSD.org> |
libc MT-safety, part 2.
Add a lock to FILE. flockfile and friends are now implemented (for the most part) in libc. flockfile_debug is implemented in libc_r; I suppose it's about time to kill it bu
libc MT-safety, part 2.
Add a lock to FILE. flockfile and friends are now implemented (for the most part) in libc. flockfile_debug is implemented in libc_r; I suppose it's about time to kill it but will do it in a future commit.
Fix a potential deadlock in _fwalk in a threaded environment. A file flag (__SIGN) was added to stdio.h that, when set, tells _fwalk to ignore it in its walk. This seemed to be needed in refill.c because each file needs to be locked when flushing.
Add a stub for pthread_self in libc. This is needed by flockfile which is allowed by POSIX to be recursive.
Make fgetpos() error return value (-1) match man page.
Remove recursive calls to locked functions (stdio); I think I've got them all, but I may have missed a couple.
A few K&R -> ANSI conversions along with removal of a few instances of "register".
$Id$ -> $FreeBSD$ in libc/stdio/rget.c
Not objected to: -arch, a few months ago
show more ...
|
#
a06f15e4 |
| 07-Feb-2001 |
Maxim Sobolev <sobomax@FreeBSD.org> |
Fix a f^Hdamn typo, which prevented to fopen() more that 17 files at once.
Tested by: knu, sobomax and other #bsdcode'rs
|
#
d201fe46 |
| 24-Jan-2001 |
Daniel Eischen <deischen@FreeBSD.org> |
Remove _THREAD_SAFE and make libc thread-safe by default by adding (weak definitions to) stubs for some of the pthread functions. If the threads library is linked in, the real pthread functions will
Remove _THREAD_SAFE and make libc thread-safe by default by adding (weak definitions to) stubs for some of the pthread functions. If the threads library is linked in, the real pthread functions will pulled in.
Use the following convention for system calls wrapped by the threads library: __sys_foo - actual system call _foo - weak definition to __sys_foo foo - weak definition to __sys_foo
Change all libc uses of system calls wrapped by the threads library from foo to _foo. In order to define the prototypes for _foo(), we introduce namespace.h and un-namespace.h (suggested by bde). All files that need to reference these system calls, should include namespace.h before any standard includes, then include un-namespace.h after the standard includes and before any local includes. <db.h> is an exception and shouldn't be included in between namespace.h and un-namespace.h namespace.h will define foo to _foo, and un-namespace.h will undefine foo.
Try to eliminate some of the recursive calls to MT-safe functions in libc/stdio in preparation for adding a mutex to FILE. We have recursive mutexes, but would like to avoid using them if possible.
Remove uneeded includes of <errno.h> from a few files.
Add $FreeBSD$ to a few files in order to pass commitprep.
Approved by: -arch
show more ...
|