mirror of
https://sourceware.org/git/glibc.git
synced 2025-12-24 17:51:17 +03:00
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.
This commit is contained in:
@@ -313,6 +313,10 @@ struct _IO_FILE_plus
|
||||
const struct _IO_jump_t *vtable;
|
||||
};
|
||||
|
||||
/* Iterator type for walking global linked list of _IO_FILE objects. */
|
||||
|
||||
typedef _IO_FILE *_IO_ITER;
|
||||
|
||||
/* Generic functions */
|
||||
|
||||
extern void _IO_switch_to_main_get_area __P ((_IO_FILE *));
|
||||
@@ -351,6 +355,17 @@ extern int _IO_wmarker_delta __P ((struct _IO_marker *));
|
||||
extern int _IO_seekmark __P ((_IO_FILE *, struct _IO_marker *, int));
|
||||
extern int _IO_seekwmark __P ((_IO_FILE *, struct _IO_marker *, int));
|
||||
|
||||
/* Functions for iterating global list and dealing with
|
||||
its lock */
|
||||
|
||||
extern _IO_ITER _IO_iter_begin __P ((void));
|
||||
extern _IO_ITER _IO_iter_end __P ((void));
|
||||
extern _IO_ITER _IO_iter_next __P ((_IO_ITER));
|
||||
extern _IO_FILE *_IO_iter_file __P ((_IO_ITER));
|
||||
extern void _IO_list_lock __P ((void));
|
||||
extern void _IO_list_unlock __P ((void));
|
||||
extern void _IO_list_resetlock __P ((void));
|
||||
|
||||
/* Default jumptable functions. */
|
||||
|
||||
extern int _IO_default_underflow __P ((_IO_FILE *));
|
||||
|
||||
Reference in New Issue
Block a user