/* common/config.h.in.  Generated from etc/configure.ac by autoheader.  */

/*
 *	aegis - project change supervisor
 *	Copyright (C) 1991-2004 Peter Miller;
 *	All rights reserved.
 *
 *	This program is free software; you can redistribute it and/or modify
 *	it under the terms of the GNU General Public License as published by
 *	the Free Software Foundation; either version 2 of the License, or
 *	(at your option) any later version.
 *
 *	This program is distributed in the hope that it will be useful,
 *	but WITHOUT ANY WARRANTY; without even the implied warranty of
 *	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *	GNU General Public License for more details.
 *
 *	You should have received a copy of the GNU General Public License
 *	along with this program; if not, write to the Free Software
 *	Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.
 *
 * MANIFEST: template common/config.h file
 */

#ifndef COMMON_CONFIG_H
#define COMMON_CONFIG_H


/* Set this to be the absolute path of a Perl interpreter. */
#undef CONF_PERL

/* Set this to be the absolute path of a Bourne shell which understands
   functions. */
#undef CONF_SHELL

/* Define this symbol if your compiler makes all enums the same size as ints.
   */
#undef CONF_enum_is_int

/* Set this to a suitable argument for the getpgrp function to discover the
   process group of the current process. */
#undef CONF_getpgrp_arg

/* Define to 1 if you have the `clu_info' function. */
#undef HAVE_CLU_INFO

/* Define to 1 if you have the <curl/curl.h> header file. */
#undef HAVE_CURL_CURL_H

/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
   */
#undef HAVE_DIRENT_H

/* Define to 1 if you have the <fcntl.h> header file. */
#undef HAVE_FCNTL_H

/* Define to 1 if you have the `getpgrp' function. */
#undef HAVE_GETPGRP

/* Define to 1 if you have the `gettext' function. */
#undef HAVE_GETTEXT

/* Define to 1 if you have the `gettimeofday' function. */
#undef HAVE_GETTIMEOFDAY

/* Define this symbol of your system has GNU diff. */
#undef HAVE_GNU_DIFF

/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H

/* Define to 1 if you have the <iso646.h> header file. */
#undef HAVE_ISO646_H

/* Define to 1 if you have the `iswctype' function. */
#undef HAVE_ISWCTYPE

/* Define this symbol of your system has iswprint() AND it works. */
#undef HAVE_ISWPRINT

/* Define to 1 if you have the `clu' library (-lclu). */
#undef HAVE_LIBCLU

/* Define to 1 if you have the `curl' library (-lcurl). */
#undef HAVE_LIBCURL

/* Define to 1 if you have the <libgettext.h> header file. */
#undef HAVE_LIBGETTEXT_H

/* Define to 1 if you have the `intl' library (-lintl). */
#undef HAVE_LIBINTL

/* Define to 1 if you have the <libintl.h> header file. */
#undef HAVE_LIBINTL_H

/* Define to 1 if you have the `m' library (-lm). */
#undef HAVE_LIBM

/* Define to 1 if you have the `magic' library (-lmagic). */
#undef HAVE_LIBMAGIC

/* Define to 1 if you have the `rx' library (-lrx). */
#undef HAVE_LIBRX

/* Define to 1 if you have the `socket' library (-lsocket). */
#undef HAVE_LIBSOCKET

/* Define to 1 if you have the `w' library (-lw). */
#undef HAVE_LIBW

/* Define to 1 if you have the `z' library (-lz). */
#undef HAVE_LIBZ

/* Define to 1 if you have the <limits.h> header file. */
#undef HAVE_LIMITS_H

/* Define to 1 if you have the <locale.h> header file. */
#undef HAVE_LOCALE_H

/* Define to 1 if you support file names longer than 14 characters. */
#undef HAVE_LONG_FILE_NAMES

/* Define to 1 if you have the `magic_file' function. */
#undef HAVE_MAGIC_FILE

/* Define to 1 if you have the <magic.h> header file. */
#undef HAVE_MAGIC_H

/* Define this symbol of your system has mblen AND it works. */
#undef HAVE_MBLEN

/* Define to 1 if you have the `mbrtowc' function. */
#undef HAVE_MBRTOWC

/* Define this symbol of your system has the mbstate_t type defined. It is
   usually in <stddef.h> or <wchar.h>. */
#undef HAVE_MBSTATE_T

/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H

/* Define to 1 if you have the <mntent.h> header file. */
#undef HAVE_MNTENT_H

/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
#undef HAVE_NDIR_H

/* Define to 1 if you have the `pathconf' function. */
#undef HAVE_PATHCONF

/* Define to 1 if you have the `regcomp' function. */
#undef HAVE_REGCOMP

/* Define to 1 if you have the <regex.h> header file. */
#undef HAVE_REGEX_H

/* Define to 1 if you have the <rxposix.h> header file. */
#undef HAVE_RXPOSIX_H

/* Define to 1 if you have the `seteuid' function. */
#undef HAVE_SETEUID

/* Define to 1 if you have the `setlocale' function. */
#undef HAVE_SETLOCALE

/* Define to 1 if you have the `setresuid' function. */
#undef HAVE_SETRESUID

/* Define to 1 if you have the `setreuid' function. */
#undef HAVE_SETREUID

/* Define to 1 if you have the `sighold' function. */
#undef HAVE_SIGHOLD

/* Define to 1 if you have the `sigprocmask' function. */
#undef HAVE_SIGPROCMASK

/* Define to 1 if you have the `snprintf' function. */
#undef HAVE_SNPRINTF

/* Define this symbol of your system has <stdarg.h> AND it works. */
#undef HAVE_STDARG_H

/* Define to 1 if you have the <stddef.h> header file. */
#undef HAVE_STDDEF_H

/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H

/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H

/* Define to 1 if you have the `strcasecmp' function. */
#undef HAVE_STRCASECMP

/* Define to 1 if you have the `strerror' function. */
#undef HAVE_STRERROR

/* Define to 1 if you have the `strftime' function. */
#undef HAVE_STRFTIME

/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H

/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H

/* Define to 1 if you have the `strncasecmp' function. */
#undef HAVE_STRNCASECMP

/* Define to 1 if you have the `strsignal' function. */
#undef HAVE_STRSIGNAL

/* Define to 1 if you have the `strtoul' function. */
#undef HAVE_STRTOUL

/* Define to 1 if you have the `strverscmp' function. */
#undef HAVE_STRVERSCMP

/* Define to 1 if you have the <sys/clu.h> header file. */
#undef HAVE_SYS_CLU_H

/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
   */
#undef HAVE_SYS_DIR_H

/* Define to 1 if you have the <sys/ioctl.h> header file. */
#undef HAVE_SYS_IOCTL_H

/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
   */
#undef HAVE_SYS_NDIR_H

/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H

/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H

/* Define to 1 if you have the `tcgetpgrp' function. */
#undef HAVE_TCGETPGRP

/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H

/* Define to 1 if you have the `vsnprintf' function. */
#undef HAVE_VSNPRINTF

/* Define to 1 if you have the <wchar.h> header file. */
#undef HAVE_WCHAR_H

/* Define to 1 if you have the `wcrtomb' function. */
#undef HAVE_WCRTOMB

/* Define to 1 if you have the `wcslen' function. */
#undef HAVE_WCSLEN

/* Define to 1 if you have the <wctype.h> header file. */
#undef HAVE_WCTYPE_H

/* Define to 1 if you have the `wcwidth' function. */
#undef HAVE_WCWIDTH

/* Define to 1 if you have the <widec.h> header file. */
#undef HAVE_WIDEC_H

/* Define this symbol of your system has the wint_t type defined. It is
   usually in <stddef.h> or <wctype.h>. */
#undef HAVE_WINT_T

/* Define to 1 if you have the <zlib.h> header file. */
#undef HAVE_ZLIB_H

/* Define this symbol if your system has the pw_comment field in the passwd
   struct defined in <pwd.h>. */
#undef HAVE_pw_comment

/* Define this symbol if your system has the tm_zone field in the tm struct
   defined in <time.h>. */
#undef HAVE_tm_zone

/* Define this symbol if your system as <sys/ioctl.h> AND it defines
   TIOCGWINSZ and struct winsize. */
#undef HAVE_winsize_SYS_IOCTL_H

/* Define this symbol if your system as <termios.h> AND it defines TIOCGWINSZ
   and struct winsize. */
#undef HAVE_winsize_TERMIOS_H

/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT

/* Define to the full name of this package. */
#undef PACKAGE_NAME

/* Define to the full name and version of this package. */
#undef PACKAGE_STRING

/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME

/* Define to the version of this package. */
#undef PACKAGE_VERSION

/* Define as the return type of signal handlers (`int' or `void'). */
#undef RETSIGTYPE

/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS

/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
#undef TIME_WITH_SYS_TIME

/* Define to 1 if on MINIX. */
#undef _MINIX

/* Define to 2 if the system does not provide POSIX.1 features except with
   this defined. */
#undef _POSIX_1_SOURCE

/* Define to 1 if you need to in order for `stat' and other things to work. */
#undef _POSIX_SOURCE

/* Define to empty if `const' does not conform to ANSI C. */
#undef const

/* Define to `unsigned' if <sys/types.h> does not define. */
#undef size_t

/*
 * This defines the file creation mask.  See umask(2) for more information.
 * Some bits are not available, because aegis is _meant_ to be paranoid.
 * Owner: always has read, write and search/exec.
 * Group: always has read and search/exec, so that developers can get at the
 *	baseline.  There is never group write, because then developers
 *	could trash the baseline, which is counter-productive.
 * Others: There is never others write, for the same reason as group.
 *	Others read and search/execute is configurable.
 *
 * The permissions mask in binary looks like
 *	000 010 X1X
 * where the Xs may be configured.
 *
 * Alternatives for default umask are thus
 *	027	others get nothing
 *	026	others can execute the results if they know where they are going
 *	022	others can see and copy and execute anything
 *	023	don't do this (why is left as an exersize for the reader)
 *
 * Projects have a configurable umask, this is just the default.
 *	See aepattr(1) for more information.
 */
#define DEFAULT_UMASK 026

/*
 * These symbols define where non-system user IDs start,
 * and where non-system group IDs start.
 * This is mostly to ensure that accounts "root" and "bin"
 * and "uucp" are not project owners.
 */
#define AEGIS_MIN_UID 100
#define AEGIS_MIN_GID 10

/*
 * There is more to do, but we need to insulate it from config.status,
 * because it screws up the #undef lines.  They are all implications of
 * the above information, so there is no need for you to edit the file,
 * if you are configuring Aegis manually.
 */
#include <config.messy.h>

#endif /* COMMON_CONFIG_H */
