]> rtime.felk.cvut.cz Git - l4.git/blob - l4/pkg/uclibc/lib/contrib/uclibc/libpthread/linuxthreads/lockfile.c
update
[l4.git] / l4 / pkg / uclibc / lib / contrib / uclibc / libpthread / linuxthreads / lockfile.c
1 /* lockfile - Handle locking and unlocking of stream.
2    Copyright (C) 1996, 1998, 2000 Free Software Foundation, Inc.
3    This file is part of the GNU C Library.
4
5    The GNU C Library is free software; you can redistribute it and/or
6    modify it under the terms of the GNU Lesser General Public License as
7    published by the Free Software Foundation; either version 2.1 of the
8    License, or (at your option) any later version.
9
10    The GNU C Library is distributed in the hope that it will be useful,
11    but WITHOUT ANY WARRANTY; without even the implied warranty of
12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13    Lesser General Public License for more details.
14
15    You should have received a copy of the GNU Lesser General Public
16    License along with the GNU C Library; see the file COPYING.LIB.  If
17    not, see <http://www.gnu.org/licenses/>.  */
18
19 #include <bits/libc-lock.h>
20 #include <stdio.h>
21 #include <pthread.h>
22 #include "internals.h"
23
24 /* Note: glibc puts flockfile, funlockfile, and ftrylockfile in both
25  * libc and libpthread.  In uClibc, they are now in libc only.  */
26
27 void
28 __flockfilelist(void)
29 {
30 }
31
32 void
33 __funlockfilelist(void)
34 {
35 }
36
37 void
38 __fresetlockfiles (void)
39 {
40   FILE *fp;
41
42   pthread_mutexattr_t attr;
43
44   __pthread_mutexattr_init (&attr);
45   __pthread_mutexattr_settype (&attr, PTHREAD_MUTEX_RECURSIVE_NP);
46
47   for (fp = _stdio_openlist; fp != NULL; fp = fp->__nextopen)
48     pthread_mutex_init (&fp->__lock, &attr);
49
50   pthread_mutexattr_destroy(&attr);
51 }