#
dc36d6f9 |
|
23-Nov-2023 |
Warner Losh <imp@FreeBSD.org> |
lib: Remove ancient SCCS tags. Remove ancient SCCS tags from the tree, automated scripting, with two minor fixup to keep things compiling. All the common forms in the tree were removed with a perl script. Sponsored by: Netflix
|
#
42b38843 |
|
16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
Remove $FreeBSD$: one-line .h pattern Remove /^\s*\*+\s*\$FreeBSD\$.*$\n/
|
#
5b5fa75a |
|
04-Aug-2022 |
Ed Maste <emaste@FreeBSD.org> |
libc: drop "All rights reserved" from Foundation copyrights This has already been done for most files that have the Foundation as the only listed copyright holder. Do it now for files that list multiple copyright holders, but have the Foundation copyright in its own section. Sponsored by: The FreeBSD Foundation
|
#
8a16b7a1 |
|
20-Nov-2017 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
General further adoption of SPDX licensing ID tags. Mainly focus on files that use BSD 3-Clause license. The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts. Special thanks to Wind River for providing access to "The Duke of Highlander" tool: an older (2014) run over FreeBSD tree was useful as a starting point.
|
#
b73ac668 |
|
30-Jun-2017 |
Konstantin Belousov <kib@FreeBSD.org> |
In the stdio cleanup push and pop wrappers, always call libc stubs for __pthread_cleanup_push/pop_imp instead of symbols also exported from libthr. This prevents calls into libthr if libthr is not yet initialized. The situation occurs e.g. when an LD_PRELOADed object is not linked against libthr, but the main binary is. Reported and tested by: jbeich PR: 220381 Discussed with: vangyzen Sponsored by: The FreeBSD Foundation MFC after: 13 days
|
#
fda0a14f |
|
29-Jun-2017 |
Konstantin Belousov <kib@FreeBSD.org> |
Make stdio deferred cancel-safe. If used with fopen(3)/fdopen(3)-ed FILEs, stdio accurately uses non-cancellable internal versions of the functions, i.e. it seems to be fine with regard to cancellation. But if the funopen(3) and f{r,w}open(3) functions were used to open the FILE, and corresponding user functions create cancellation points (they typically have no other choice), then stdio code at least leaks FILE' lock. The change installs cleanup handler which unlocks FILE. Some minimal restructuring of the code was required to make it use common return place to satisfy hand-rolled pthread_cleanup_pop() requirements. Noted by: eugen Reviewed by: eugen, vangyzen Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Differential revision: https://reviews.freebsd.org/D11246
|
#
fbbd9655 |
|
28-Feb-2017 |
Warner Losh <imp@FreeBSD.org> |
Renumber copyright clause 4 Renumber cluase 4 to 3, per what everybody else did when BSD granted them permission to remove clause 3. My insistance on keeping the same numbering for legal reasons is too pedantic, so give up on that point. Submitted by: Jan Schaumann <jschauma@stevens.edu> Pull Request: https://github.com/freebsd/freebsd/pull/96
|
#
d7af8cf1 |
|
29-Apr-2012 |
David Schultz <das@FreeBSD.org> |
Previously, vfscanf()'s wide character processing functions were reading wide characters manually. With this change, they now use fgetwc(). To make this work, we use an internal version of fgetwc() with a few extensions: it takes an mbstate * because non-wide streams don't have a built-in mbstate, and it indicates the number of bytes read. vfscanf() now resembles vfwscanf() more closely. Minor functional improvements include working xlocale support in vfscanf(), setting the stream error indicator on encoding errors, and proper handling of shift-based encodings. (Actually, making shift-based encodings work with non-wide streams is hopeless, but the implementation now matches the broken specification.)
|
#
3c87aa1d |
|
20-Nov-2011 |
David Chisnall <theraven@FreeBSD.org> |
Implement xlocale APIs from Darwin, mainly for use by libc++. This adds a load of _l suffixed versions of various standard library functions that use the global locale, making them take an explicit locale parameter. Also adds support for per-thread locales. This work was funded by the FreeBSD Foundation. Please test any code you have that uses the C standard locale functions! Reviewed by: das (gdtoa changes) Approved by: dim (mentor)
|
#
a7d5f7eb |
|
19-Oct-2010 |
Jamie Gritton <jamie@FreeBSD.org> |
A new jail(8) with a configuration file, to replace the work currently done by /etc/rc.d/jail.
|
#
1b0181df |
|
11-Mar-2010 |
John Baldwin <jhb@FreeBSD.org> |
- Use an initializer macro to initialize fields in 'fake' FILE objects used by *sprintf(), etc. - Explicitly initialize _fl_mutex to PTHREAD_MUTEX_INITIALIZER for all FILE objects. This is currently a nop on FreeBSD, but is import for other platforms (or in the future) where PTHREAD_MUTEX_INITIALIZER is not simply zero. PR: threads/141198 Reported by: Jeremy Huddleston @ Apple MFC after: 2 weeks
|
#
fe0506d7 |
|
09-Mar-2010 |
Marcel Moolenaar <marcel@FreeBSD.org> |
Create the altix project branch. The altix project will add support for the SGI Altix 350 to FreeBSD/ia64. The hardware used for porting is a two-module system, consisting of a base compute module and a CPU expansion module. SGI's NUMAFlex architecture can be an excellent platform to test CPU affinity and NUMA-aware features in FreeBSD.
|
#
d7f03759 |
|
19-Oct-2008 |
Ulf Lilleengen <lulf@FreeBSD.org> |
- Import the HEAD csup code which is the basis for the cvsmode work.
|
#
19e03ca8 |
|
05-May-2008 |
John Baldwin <jhb@FreeBSD.org> |
Expose FILE's internals to the world again in all their glory. Restore all the previous inline optimizations as well. FILE is back to using __mbstate_t, struct pthread *, and struct pthread_mutex *.
|
#
c17bf9a9 |
|
02-May-2008 |
John Baldwin <jhb@FreeBSD.org> |
Next round of stdio changes: Remove all inlining of stdio operations and move the definition of the type backing FILE (struct __sFILE) into an internal header. - Remove macros to inline certain operations from stdio.h. Applications will now always call the functions instead. - Move the various foo_unlocked() functions from unlocked.c into foo.c. This lets some of the inlining macros (e.g. __sfeof()) move into foo.c. - Update a few comments. - struct __sFILE can now go back to using mbstate_t, pthread_t, and pthread_mutex_t instead of knowing about their private, backing types. MFC after: 1 month Reviewed by: kan
|
#
1e98f887 |
|
17-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-__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
|
#
c879ae35 |
|
08-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.
|
#
b62c955c |
|
22-Apr-2006 |
Daniel Eischen <deischen@FreeBSD.org> |
Add fcloseall() to libc. This removes the need to export _cleanup(). Linux also provides an fcloseall() implementation. Discussed on: arch
|
#
3b52e4d1 |
|
15-Dec-2005 |
David Xu <davidxu@FreeBSD.org> |
With current pthread implementations, a mutex initialization will allocate a memory block. sscanf calls __svfscanf which in turn calls fread, fread triggers mutex initialization but the mutex is not destroyed in sscanf, this leads to memory leak. To avoid the memory leak and performance issue, we create a none MT-safe version of fread: __fread, and instead let __svfscanf call __fread. PR: threads/90392 Patch submitted by: dhartmei MFC after: 7 days
|
#
2ba64027 |
|
12-Sep-2005 |
Stefan Farfeleder <stefanf@FreeBSD.org> |
Move the declaration of __cleanup to libc_private.h as it is used in both stdio/ and stdlib/. Don't define __cleanup twice.
|
#
66d56cb7 |
|
15-Jul-2004 |
Tim J. Robbins <tjr@FreeBSD.org> |
Rename slbexpand() to __slbexpand() and make it available outside of fgetln.c (non-static).
|
#
52183d46 |
|
07-Jun-2004 |
David Schultz <das@FreeBSD.org> |
Rename cantwrite() to prepwrite(). The latter is less confusing, since the macro isn't really a predicate, and it has side-effects.
|
#
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-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.
|
#
44fce143 |
|
08-Mar-2004 |
John Birrell <jb@FreeBSD.org> |
Backout the previous revision due to objections.
|
#
59fac182 |
|
08-Mar-2004 |
John Birrell <jb@FreeBSD.org> |
On 4.X it was possible for an application to initialise a local FILE structure and call stdio functions. In 5.X this was broken when FILE locking was introduced into libc. This change makes most (relevant) stdio functions work again when the _extra file in FILE isn't initialised (and can't be without a libc function to do it since the __sFILEX structure is private to libc).
|
#
79db4006 |
|
25-Oct-2002 |
Tim J. Robbins <tjr@FreeBSD.org> |
The ORIENTLOCK macro is no longer needed since all functions use FLOCKFILE/FUNLOCKFILE explicitly.
|
#
af1c9c0e |
|
14-Oct-2002 |
Tim J. Robbins <tjr@FreeBSD.org> |
Use a weak reference instead of a macro to make vfscanf an alias for __vfscanf.
|
#
1f4ff850 |
|
22-Sep-2002 |
Tim J. Robbins <tjr@FreeBSD.org> |
Add implementations of wscanf() and related functions: fwscanf(), swscanf(), vfwscanf(), vswscanf(), vwscanf(). As the name suggests, these are wide- character versions of the scanf() family of functions.
|
#
adc10684 |
|
23-Sep-2002 |
Tim J. Robbins <tjr@FreeBSD.org> |
The character argument for __ungetwc() should be wint_t instead of wchar_t.
|
#
5f147b57 |
|
21-Sep-2002 |
Tim J. Robbins <tjr@FreeBSD.org> |
Add an unlocked version of ungetwc(), __ungetwc(), that __vfwscanf() will need to use.
|
#
c5604d0a |
|
21-Sep-2002 |
Tim J. Robbins <tjr@FreeBSD.org> |
Add implementations of the wprintf() family of functions, which perform formatted wide-character output.
|
#
8f030a44 |
|
20-Sep-2002 |
Tim J. Robbins <tjr@FreeBSD.org> |
Introduce unlocked versions of fputwc() and fgetwc() called __fputwc() and __fgetwc() which can be used when we know the file is locked.
|
#
abbd8902 |
|
21-Aug-2002 |
Mike Barcroft <mike@FreeBSD.org> |
o Merge <machine/ansi.h> and <machine/types.h> into a new header called <machine/_types.h>. o <machine/ansi.h> will continue to live so it can define MD clock macros, which are only MD because of gratuitous differences between architectures. o Change all headers to make use of this. This mainly involves changing: #ifdef _BSD_FOO_T_ typedef _BSD_FOO_T_ foo_t; #undef _BSD_FOO_T_ #endif to: #ifndef _FOO_T_DECLARED typedef __foo_t foo_t; #define _FOO_T_DECLARED #endif Concept by: bde Reviewed by: jake, obrien
|
#
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().
|
#
1114a754 |
|
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 .h's as consistent as possible.
|
#
c05ac53b |
|
21-Mar-2002 |
David E. O'Brien <obrien@FreeBSD.org> |
Remove __P() usage.
|
#
5e00917d |
|
02-Sep-2001 |
Andrey A. Chernov <ache@FreeBSD.org> |
Re-arrange my funopen(3) fix to minimize differences with original stdio code, no functional changes. Add fp->_offset optimization in _SAPP+_SOPT case
|
#
924888f9 |
|
02-Sep-2001 |
Andrey A. Chernov <ache@FreeBSD.org> |
Move all stdio internal flags processing and setting out of __sread(), __swrite() and __sseek() to higher level. According to funopen(3) they all are just wrappers to something like standard read(2), write(2) and lseek(2), i.e. must not touch stdio internals because they are replaceable with any other functions knows nothing about stdio internals. See example of funopen(3) usage in sendmail sources f.e. NOTE: this is original stdio bug, not result of my range checkin added.
|
#
65efd812 |
|
31-Aug-2001 |
Andrey A. Chernov <ache@FreeBSD.org> |
Back out disabling ungetc() at 0, use different solution: keep negative offset internally, but return 0 externally in ftell*() I.e. use 0 now as 'unspecified value' per POSIX ungetc() description.
|
#
2ff678f5 |
|
31-Aug-2001 |
Andrey A. Chernov <ache@FreeBSD.org> |
The same big piece of ftell code repeated in 3 places. Simplify things moving it into one subfunction instead. Try to use real offset in strange cases.
|
#
71b5a432 |
|
17-Aug-2001 |
Andrey A. Chernov <ache@FreeBSD.org> |
fseek.c: Resulting fseek() offset must fit in long, required by POSIX (pointed by bde), so add LONG_MAX and final tests for it. rewind.c: 1) add missing __sinit() as in fseek() it pretends to be. 2) use clearerr_unlocked() since we already lock stream before _fseeko() 3) don't zero errno at the end, it explicitely required by POSIX as the only one method to test rewind() error condition. 4) don't clearerr() if error happens in _fseeko()
|
#
1866adc5 |
|
17-Jun-2001 |
Assar Westerlund <assar@FreeBSD.org> |
(cantwrite): do not allocate memory for a NULL string PR: misc/26044 MFC after: 1 week Submitted by: bde
|
#
fcd70a75 |
|
03-Jun-2001 |
Daniel Eischen <deischen@FreeBSD.org> |
Properly initialize a temporary FILE that is allocated off the stack. The change to reuse _up from FILE (to allow FILE to grow without changing size) overlooked FILE being allocated off the stack. Approved by: sobomax
|
#
45d80087 |
|
28-Feb-2001 |
Daniel Eischen <deischen@FreeBSD.org> |
Hide the definition of struct __sFILEX and add the needed lock definitions to it. flockfile state is now allocated along with the rest of FILE. This eliminates the need for a separate allocation of flockfile state as well as eliminating the mutex/lock used to serialize its allocation.
|
#
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 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
|
#
662909a7 |
|
11-Mar-1997 |
Peter Wemm <peter@FreeBSD.org> |
Import CSRG 4.4BSD-Lite2 lib/libc onto vendor branch
|
#
58f0484f |
|
26-May-1994 |
Rodney W. Grimes <rgrimes@FreeBSD.org> |
BSD 4.4 Lite Lib Sources
|