diff options
Diffstat (limited to 'gl/open-safer.c')
-rw-r--r-- | gl/open-safer.c | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/gl/open-safer.c b/gl/open-safer.c deleted file mode 100644 index 3b36471..0000000 --- a/gl/open-safer.c +++ /dev/null | |||
@@ -1,46 +0,0 @@ | |||
1 | /* Invoke open, but avoid some glitches. | ||
2 | |||
3 | Copyright (C) 2005-2006, 2008-2010 Free Software Foundation, Inc. | ||
4 | |||
5 | This program is free software: you can redistribute it and/or modify | ||
6 | it under the terms of the GNU General Public License as published by | ||
7 | the Free Software Foundation; either version 3 of the License, or | ||
8 | (at your option) any later version. | ||
9 | |||
10 | This program 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 | ||
13 | GNU General Public License for more details. | ||
14 | |||
15 | You should have received a copy of the GNU General Public License | ||
16 | along with this program. If not, see <http://www.gnu.org/licenses/>. */ | ||
17 | |||
18 | /* Written by Paul Eggert. */ | ||
19 | |||
20 | #include <config.h> | ||
21 | |||
22 | #include "fcntl-safer.h" | ||
23 | |||
24 | #include <fcntl.h> | ||
25 | #include <stdarg.h> | ||
26 | #include "unistd-safer.h" | ||
27 | |||
28 | int | ||
29 | open_safer (char const *file, int flags, ...) | ||
30 | { | ||
31 | mode_t mode = 0; | ||
32 | |||
33 | if (flags & O_CREAT) | ||
34 | { | ||
35 | va_list ap; | ||
36 | va_start (ap, flags); | ||
37 | |||
38 | /* We have to use PROMOTED_MODE_T instead of mode_t, otherwise GCC 4 | ||
39 | creates crashing code when 'mode_t' is smaller than 'int'. */ | ||
40 | mode = va_arg (ap, PROMOTED_MODE_T); | ||
41 | |||
42 | va_end (ap); | ||
43 | } | ||
44 | |||
45 | return fd_safer (open (file, flags, mode)); | ||
46 | } | ||