Back to index

glibc  2.9
local_lim.h
Go to the documentation of this file.
00001 /* Minimum guaranteed maximum values for system limits.  Hurd version.
00002    Copyright (C) 1993,94,96,98,2002 Free Software Foundation, Inc.
00003    This file is part of the GNU C Library.
00004 
00005    The GNU C Library is free software; you can redistribute it and/or
00006    modify it under the terms of the GNU Lesser General Public
00007    License as published by the Free Software Foundation; either
00008    version 2.1 of the License, or (at your option) any later version.
00009 
00010    The GNU C Library is distributed in the hope that it will be useful,
00011    but WITHOUT ANY WARRANTY; without even the implied warranty of
00012    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013    Lesser General Public License for more details.
00014 
00015    You should have received a copy of the GNU Lesser General Public
00016    License along with the GNU C Library; if not, write to the Free
00017    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
00018    02111-1307 USA.  */
00019 
00020 /* GNU has no arbitrary fixed limits on most of these things, so we
00021    don't define the macros.  Some things are unlimited.  Some are in
00022    fact limited but the limit is run-time dependent and fetched with
00023    `sysconf' or `pathconf'.  */
00024 
00025 /* This one value is actually constrained by the `struct dirent'
00026    layout, in which the `d_namlen' member is only 8 bits wide.  */
00027 
00028 #define NAME_MAX     255
00029 
00030 /* POSIX.1 requires that we define NGROUPS_MAX (though none of the others
00031    is required).  GNU allows any number of supplementary groups,
00032    dynamically allocated.  So we pick a number which seems vaguely
00033    suitable, and `sysconf' will return a number at least as large.  */
00034 
00035 #define NGROUPS_MAX  256
00036 
00037 /* The maximum number of symbolic links that are allowed in a single file
00038    name resolution.  When a further link is encountered, the call returns
00039    ELOOP.  This name is a GNU extension; POSIX.1 has no such limit, and BSD
00040    calls it MAXSYMLINKS in <sys/param.h>.  (We define the name under
00041    _BSD_SOURCE even without _GNU_SOURCE because our <sys/param.h> uses it
00042    to define MAXSYMLINKS.)  */
00043 
00044 #if defined __USE_GNU || defined __USE_BSD /* 1003.1a defines this */
00045 #define       SYMLOOP_MAX   8
00046 #endif