]>
Commit | Line | Data |
---|---|---|
ccc6cda3 | 1 | /* maxpath.h - Find out what this system thinks PATH_MAX and NAME_MAX are. */ |
726f6388 JA |
2 | |
3 | /* Copyright (C) 1993 Free Software Foundation, Inc. | |
4 | ||
5 | This file is part of GNU Bash, the Bourne Again SHell. | |
6 | ||
3185942a JA |
7 | Bash is free software: you can redistribute it and/or modify |
8 | it under the terms of the GNU General Public License as published by | |
9 | the Free Software Foundation, either version 3 of the License, or | |
10 | (at your option) any later version. | |
11 | ||
12 | Bash is distributed in the hope that it will be useful, | |
13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | GNU General Public License for more details. | |
16 | ||
17 | You should have received a copy of the GNU General Public License | |
18 | along with Bash. If not, see <http://www.gnu.org/licenses/>. | |
19 | */ | |
726f6388 | 20 | |
ccc6cda3 JA |
21 | #if !defined (_MAXPATH_H_) |
22 | #define _MAXPATH_H_ | |
726f6388 | 23 | |
ccc6cda3 JA |
24 | /* These values are supposed to be in <limits.h> or one of the files |
25 | it includes. */ | |
26 | #if defined (HAVE_LIMITS_H) | |
27 | # include <limits.h> | |
28 | #endif /* !HAVE_LIMITS_H */ | |
726f6388 | 29 | |
ccc6cda3 JA |
30 | /* If PATH_MAX is not defined, look for MAXPATHLEN */ |
31 | #if !defined (PATH_MAX) | |
32 | # if defined (HAVE_SYS_PARAM_H) | |
33 | # include <sys/param.h> | |
34 | # define maxpath_param_h | |
35 | # endif | |
36 | # if defined (MAXPATHLEN) && !defined (PATH_MAX) | |
37 | # define PATH_MAX MAXPATHLEN | |
38 | # endif /* MAXPATHLEN && !PATH_MAX */ | |
39 | #endif /* !PATH_MAX */ | |
726f6388 | 40 | |
ccc6cda3 JA |
41 | /* If NAME_MAX is not defined, look for MAXNAMLEN */ |
42 | #if !defined (NAME_MAX) | |
43 | # if defined (HAVE_SYS_PARAM_H) && !defined (maxpath_param_h) | |
44 | # include <sys/param.h> | |
45 | # endif | |
46 | # if defined (MAXNAMLEN) && !defined (NAME_MAX) | |
47 | # define NAME_MAX MAXNAMLEN | |
48 | # endif /* MAXNAMLEN && !NAME_MAX */ | |
49 | #endif /* !NAME_MAX */ | |
726f6388 | 50 | |
ccc6cda3 JA |
51 | /* Default POSIX values */ |
52 | #if !defined (PATH_MAX) && defined (_POSIX_PATH_MAX) | |
53 | # define PATH_MAX _POSIX_PATH_MAX | |
54 | #endif | |
726f6388 | 55 | |
ccc6cda3 JA |
56 | #if !defined (NAME_MAX) && defined (_POSIX_NAME_MAX) |
57 | # define NAME_MAX _POSIX_NAME_MAX | |
58 | #endif | |
59 | ||
60 | ||
61 | /* Default values */ | |
62 | #if !defined (PATH_MAX) | |
63 | # define PATH_MAX 1024 | |
64 | #endif | |
65 | ||
66 | #if !defined (NAME_MAX) | |
67 | # define NAME_MAX 14 | |
68 | #endif | |
69 | ||
70 | #if PATH_MAX < 1024 | |
71 | # undef PATH_MAX | |
72 | # define PATH_MAX 1024 | |
73 | #endif | |
74 | ||
75 | #endif /* _MAXPATH_H_ */ |