~ubuntu-branches/ubuntu/intrepid/parted/intrepid

« back to all changes in this revision

Viewing changes to gnulib/tests/test-sys_stat.c

  • Committer: Bazaar Package Importer
  • Author(s): Colin Watson
  • Date: 2008-06-24 14:31:05 UTC
  • mfrom: (1.1.3 upstream)
  • Revision ID: james.westby@ubuntu.com-20080624143105-rd7yw67a9qnvh51i
Tags: 1.8.8.git.2008.03.24-7ubuntu1
* Resynchronise with Debian (LP: #237568). Remaining changes:
  - swap-uuid.dpatch: Create UUIDs on new swap partitions.
  - gptsync.dpatch: On Intel Mac systems, write a synced MBR rather than a
    protective MBR.
  - Add -fno-stack-protector on sparc.
  - sparc-new-label.dpatch: Fix sparc disk label generation. This is
    required for LDOM and parallel installations with Solaris 10.
  - loop-partitions.dpatch: Loop devices can only have one partition, so
    don't generate device names such as "/dev/loop0p1".
  - unpartitioned-disks.dpatch: Don't try to call BLKPG ioctls on
    unpartitionable disks (only implemented for loop devices at the
    moment), as they will always fail.
  - When building with gcc-4.3, add -Wno-array-bounds to CFLAGS.
  - Cell partition tables are misdetected as pc98, so disable pc98 support
    on powerpc.
  - array-bounds.dpatch: Backport patch from git to allow building with
    gcc-4.3.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* Test of <sys/stat.h> substitute.
 
2
   Copyright (C) 2007 Free Software Foundation, Inc.
 
3
 
 
4
   This program is free software; you can redistribute it and/or modify
 
5
   it under the terms of the GNU General Public License as published by
 
6
   the Free Software Foundation; either version 2, or (at your option)
 
7
   any later version.
 
8
 
 
9
   This program is distributed in the hope that it will be useful,
 
10
   but WITHOUT ANY WARRANTY; without even the implied warranty of
 
11
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
12
   GNU General Public License for more details.
 
13
 
 
14
   You should have received a copy of the GNU General Public License
 
15
   along with this program; if not, write to the Free Software Foundation,
 
16
   Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
 
17
 
 
18
/* Written by Bruno Haible <bruno@clisp.org>, 2007.  */
 
19
 
 
20
#include <config.h>
 
21
 
 
22
#include <sys/stat.h>
 
23
 
 
24
#include "verify.h"
 
25
 
 
26
/* Check the existence of some macros.  */
 
27
int a[] =
 
28
  {
 
29
    S_IFMT,
 
30
    S_IFBLK, S_IFCHR, S_IFDIR, S_IFIFO, S_IFREG,
 
31
#ifdef S_IFLNK /* missing on mingw and djgpp */
 
32
    S_IFLNK,
 
33
#endif
 
34
#ifdef S_IFSOCK /* missing on mingw and djgpp */
 
35
    S_IFSOCK,
 
36
#endif
 
37
    S_IRWXU, S_IRUSR, S_IWUSR, S_IXUSR,
 
38
    S_IRWXG, S_IRGRP, S_IWGRP, S_IXGRP,
 
39
    S_IRWXO, S_IROTH, S_IWOTH, S_IXOTH,
 
40
    S_ISUID, S_ISGID, S_ISVTX,
 
41
    S_ISBLK (S_IFREG),
 
42
    S_ISCHR (S_IFREG),
 
43
    S_ISDIR (S_IFREG),
 
44
    S_ISFIFO (S_IFREG),
 
45
    S_ISREG (S_IFREG),
 
46
    S_ISLNK (S_IFREG),
 
47
    S_ISSOCK (S_IFREG),
 
48
    S_ISDOOR (S_IFREG),
 
49
    S_ISMPB (S_IFREG),
 
50
    S_ISNAM (S_IFREG),
 
51
    S_ISNWK (S_IFREG),
 
52
    S_ISPORT (S_IFREG),
 
53
    S_ISCTG (S_IFREG),
 
54
    S_ISOFD (S_IFREG),
 
55
    S_ISOFL (S_IFREG),
 
56
    S_ISWHT (S_IFREG)
 
57
  };
 
58
 
 
59
/* Sanity checks.  */
 
60
 
 
61
verify (S_IRWXU == (S_IRUSR | S_IWUSR | S_IXUSR));
 
62
verify (S_IRWXG == (S_IRGRP | S_IWGRP | S_IXGRP));
 
63
verify (S_IRWXO == (S_IROTH | S_IWOTH | S_IXOTH));
 
64
 
 
65
verify (S_ISBLK (S_IFBLK));
 
66
verify (!S_ISBLK (S_IFCHR));
 
67
verify (!S_ISBLK (S_IFDIR));
 
68
verify (!S_ISBLK (S_IFIFO));
 
69
verify (!S_ISBLK (S_IFREG));
 
70
#ifdef S_IFLNK
 
71
verify (!S_ISBLK (S_IFLNK));
 
72
#endif
 
73
#ifdef S_IFSOCK
 
74
verify (!S_ISBLK (S_IFSOCK));
 
75
#endif
 
76
 
 
77
verify (!S_ISCHR (S_IFBLK));
 
78
verify (S_ISCHR (S_IFCHR));
 
79
verify (!S_ISCHR (S_IFDIR));
 
80
verify (!S_ISCHR (S_IFIFO));
 
81
verify (!S_ISCHR (S_IFREG));
 
82
#ifdef S_IFLNK
 
83
verify (!S_ISCHR (S_IFLNK));
 
84
#endif
 
85
#ifdef S_IFSOCK
 
86
verify (!S_ISCHR (S_IFSOCK));
 
87
#endif
 
88
 
 
89
verify (!S_ISDIR (S_IFBLK));
 
90
verify (!S_ISDIR (S_IFCHR));
 
91
verify (S_ISDIR (S_IFDIR));
 
92
verify (!S_ISDIR (S_IFIFO));
 
93
verify (!S_ISDIR (S_IFREG));
 
94
#ifdef S_IFLNK
 
95
verify (!S_ISDIR (S_IFLNK));
 
96
#endif
 
97
#ifdef S_IFSOCK
 
98
verify (!S_ISDIR (S_IFSOCK));
 
99
#endif
 
100
 
 
101
verify (!S_ISFIFO (S_IFBLK));
 
102
verify (!S_ISFIFO (S_IFCHR));
 
103
verify (!S_ISFIFO (S_IFDIR));
 
104
verify (S_ISFIFO (S_IFIFO));
 
105
verify (!S_ISFIFO (S_IFREG));
 
106
#ifdef S_IFLNK
 
107
verify (!S_ISFIFO (S_IFLNK));
 
108
#endif
 
109
#ifdef S_IFSOCK
 
110
verify (!S_ISFIFO (S_IFSOCK));
 
111
#endif
 
112
 
 
113
verify (!S_ISREG (S_IFBLK));
 
114
verify (!S_ISREG (S_IFCHR));
 
115
verify (!S_ISREG (S_IFDIR));
 
116
verify (!S_ISREG (S_IFIFO));
 
117
verify (S_ISREG (S_IFREG));
 
118
#ifdef S_IFLNK
 
119
verify (!S_ISREG (S_IFLNK));
 
120
#endif
 
121
#ifdef S_IFSOCK
 
122
verify (!S_ISREG (S_IFSOCK));
 
123
#endif
 
124
 
 
125
verify (!S_ISLNK (S_IFBLK));
 
126
verify (!S_ISLNK (S_IFCHR));
 
127
verify (!S_ISLNK (S_IFDIR));
 
128
verify (!S_ISLNK (S_IFIFO));
 
129
verify (!S_ISLNK (S_IFREG));
 
130
#ifdef S_IFLNK
 
131
verify (S_ISLNK (S_IFLNK));
 
132
#endif
 
133
#ifdef S_IFSOCK
 
134
verify (!S_ISLNK (S_IFSOCK));
 
135
#endif
 
136
 
 
137
verify (!S_ISSOCK (S_IFBLK));
 
138
verify (!S_ISSOCK (S_IFCHR));
 
139
verify (!S_ISSOCK (S_IFDIR));
 
140
verify (!S_ISSOCK (S_IFIFO));
 
141
verify (!S_ISSOCK (S_IFREG));
 
142
#ifdef S_IFLNK
 
143
verify (!S_ISSOCK (S_IFLNK));
 
144
#endif
 
145
#ifdef S_IFSOCK
 
146
verify (S_ISSOCK (S_IFSOCK));
 
147
#endif
 
148
 
 
149
verify (!S_ISDOOR (S_IFBLK));
 
150
verify (!S_ISDOOR (S_IFCHR));
 
151
verify (!S_ISDOOR (S_IFDIR));
 
152
verify (!S_ISDOOR (S_IFIFO));
 
153
verify (!S_ISDOOR (S_IFREG));
 
154
#ifdef S_IFLNK
 
155
verify (!S_ISDOOR (S_IFLNK));
 
156
#endif
 
157
#ifdef S_IFSOCK
 
158
verify (!S_ISDOOR (S_IFSOCK));
 
159
#endif
 
160
 
 
161
verify (!S_ISMPB (S_IFBLK));
 
162
verify (!S_ISMPB (S_IFCHR));
 
163
verify (!S_ISMPB (S_IFDIR));
 
164
verify (!S_ISMPB (S_IFIFO));
 
165
verify (!S_ISMPB (S_IFREG));
 
166
#ifdef S_IFLNK
 
167
verify (!S_ISMPB (S_IFLNK));
 
168
#endif
 
169
#ifdef S_IFSOCK
 
170
verify (!S_ISMPB (S_IFSOCK));
 
171
#endif
 
172
 
 
173
verify (!S_ISNAM (S_IFBLK));
 
174
verify (!S_ISNAM (S_IFCHR));
 
175
verify (!S_ISNAM (S_IFDIR));
 
176
verify (!S_ISNAM (S_IFIFO));
 
177
verify (!S_ISNAM (S_IFREG));
 
178
#ifdef S_IFLNK
 
179
verify (!S_ISNAM (S_IFLNK));
 
180
#endif
 
181
#ifdef S_IFSOCK
 
182
verify (!S_ISNAM (S_IFSOCK));
 
183
#endif
 
184
 
 
185
verify (!S_ISNWK (S_IFBLK));
 
186
verify (!S_ISNWK (S_IFCHR));
 
187
verify (!S_ISNWK (S_IFDIR));
 
188
verify (!S_ISNWK (S_IFIFO));
 
189
verify (!S_ISNWK (S_IFREG));
 
190
#ifdef S_IFLNK
 
191
verify (!S_ISNWK (S_IFLNK));
 
192
#endif
 
193
#ifdef S_IFSOCK
 
194
verify (!S_ISNWK (S_IFSOCK));
 
195
#endif
 
196
 
 
197
verify (!S_ISPORT (S_IFBLK));
 
198
verify (!S_ISPORT (S_IFCHR));
 
199
verify (!S_ISPORT (S_IFDIR));
 
200
verify (!S_ISPORT (S_IFIFO));
 
201
verify (!S_ISPORT (S_IFREG));
 
202
#ifdef S_IFLNK
 
203
verify (!S_ISPORT (S_IFLNK));
 
204
#endif
 
205
#ifdef S_IFSOCK
 
206
verify (!S_ISPORT (S_IFSOCK));
 
207
#endif
 
208
 
 
209
verify (!S_ISCTG (S_IFBLK));
 
210
verify (!S_ISCTG (S_IFCHR));
 
211
verify (!S_ISCTG (S_IFDIR));
 
212
verify (!S_ISCTG (S_IFIFO));
 
213
verify (!S_ISCTG (S_IFREG));
 
214
#ifdef S_IFLNK
 
215
verify (!S_ISCTG (S_IFLNK));
 
216
#endif
 
217
#ifdef S_IFSOCK
 
218
verify (!S_ISCTG (S_IFSOCK));
 
219
#endif
 
220
 
 
221
verify (!S_ISOFD (S_IFBLK));
 
222
verify (!S_ISOFD (S_IFCHR));
 
223
verify (!S_ISOFD (S_IFDIR));
 
224
verify (!S_ISOFD (S_IFIFO));
 
225
verify (!S_ISOFD (S_IFREG));
 
226
#ifdef S_IFLNK
 
227
verify (!S_ISOFD (S_IFLNK));
 
228
#endif
 
229
#ifdef S_IFSOCK
 
230
verify (!S_ISOFD (S_IFSOCK));
 
231
#endif
 
232
 
 
233
verify (!S_ISOFL (S_IFBLK));
 
234
verify (!S_ISOFL (S_IFCHR));
 
235
verify (!S_ISOFL (S_IFDIR));
 
236
verify (!S_ISOFL (S_IFIFO));
 
237
verify (!S_ISOFL (S_IFREG));
 
238
#ifdef S_IFLNK
 
239
verify (!S_ISOFL (S_IFLNK));
 
240
#endif
 
241
#ifdef S_IFSOCK
 
242
verify (!S_ISOFL (S_IFSOCK));
 
243
#endif
 
244
 
 
245
verify (!S_ISWHT (S_IFBLK));
 
246
verify (!S_ISWHT (S_IFCHR));
 
247
verify (!S_ISWHT (S_IFDIR));
 
248
verify (!S_ISWHT (S_IFIFO));
 
249
verify (!S_ISWHT (S_IFREG));
 
250
#ifdef S_IFLNK
 
251
verify (!S_ISWHT (S_IFLNK));
 
252
#endif
 
253
#ifdef S_IFSOCK
 
254
verify (!S_ISWHT (S_IFSOCK));
 
255
#endif
 
256
 
 
257
int
 
258
main ()
 
259
{
 
260
  return 0;
 
261
}