Fix typo in manual
[platform/upstream/glibc.git] / io / open64.c
1 /* Copyright (C) 1991, 1995, 1996, 1997, 1999, 2000, 2002, 2007
2    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
7    License as published by the Free Software Foundation; either
8    version 2.1 of the 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; if not, see
17    <http://www.gnu.org/licenses/>.  */
18
19 #include <errno.h>
20 #include <fcntl.h>
21 #include <stdarg.h>
22 #include <stddef.h>
23 #include <stdio.h>
24
25 /* Open FILE with access OFLAG.  If OFLAG includes O_CREAT,
26    a third argument is the file protection.  */
27 int
28 __libc_open64 (file, oflag)
29      const char *file;
30      int oflag;
31 {
32   int mode;
33
34   if (file == NULL)
35     {
36       __set_errno (EINVAL);
37       return -1;
38     }
39
40   if (oflag & O_CREAT)
41     {
42       va_list arg;
43       va_start (arg, oflag);
44       mode = va_arg (arg, int);
45       va_end (arg);
46     }
47
48   __set_errno (ENOSYS);
49   return -1;
50 }
51 strong_alias (__libc_open64, __open64)
52 libc_hidden_def (__open64)
53 weak_alias (__libc_open64, open64)
54
55 stub_warning (open64)
56
57
58 int
59 __open64_2 (file, oflag)
60      const char *file;
61      int oflag;
62 {
63   if (oflag & O_CREAT)
64     __fortify_fail ("invalid open64 call: O_CREAT without mode");
65
66   return __open64 (file, oflag);
67 }
68 stub_warning (__open64_2)
69
70 #include <stub-tag.h>