diff options
author | Ulrich Drepper <drepper@redhat.com> | 2000-06-07 22:50:32 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2000-06-07 22:50:32 +0000 |
commit | 3fc9ca4e389ff1606a4883d50401eaa1a777a07e (patch) | |
tree | 70a6a54e2bf0415e3622475f1a0613a7cfef3b40 /libio/genops.c | |
parent | ce177a8416e21b074d1d3382d81939897ff86fa8 (diff) | |
download | glibc-3fc9ca4e389ff1606a4883d50401eaa1a777a07e.zip glibc-3fc9ca4e389ff1606a4883d50401eaa1a777a07e.tar.gz glibc-3fc9ca4e389ff1606a4883d50401eaa1a777a07e.tar.bz2 |
Update.
2000-06-04 Kaz Kylheku <kaz@ashi.footprints.net>
Lock for stdio stream list becomes global, for use in LinuxThreads.
* libio/genops.c (_IO_iter_begin, _IO_iter_end,
_IO_iter_next, _IO_iter_file, _IO_list_lock, _IO_list_unlock,
_IO_list_resetlock): New interface for iterating global list of
streams without accessing the _IO_list_all global variable,
and for manipulating the lock which protects this list.
* libio/libioP.h: Likewise.
* libio/Version: Add entries for the new functions.
* libio/libioP.h (_IO_ITER): New typedef, just an alias for
pointer to _IO_FILE.
Diffstat (limited to 'libio/genops.c')
-rw-r--r-- | libio/genops.c | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/libio/genops.c b/libio/genops.c index c595181..fb4f08b 100644 --- a/libio/genops.c +++ b/libio/genops.c @@ -1028,6 +1028,50 @@ _IO_default_imbue (fp, locale) { } +_IO_ITER +_IO_iter_begin() +{ + return _IO_list_all; +} + +_IO_ITER +_IO_iter_end() +{ + return NULL; +} + +_IO_ITER +_IO_iter_next(iter) + _IO_ITER iter; +{ + return iter->_chain; +} + +_IO_FILE * +_IO_iter_file(iter) + _IO_ITER iter; +{ + return iter; +} + +void +_IO_list_lock() +{ + _IO_lock_lock (list_all_lock); +} + +void +_IO_list_unlock() +{ + _IO_lock_unlock (list_all_lock); +} + +void +_IO_list_resetlock() +{ + _IO_lock_init (list_all_lock); +} + #ifdef TODO #if defined(linux) |