Move osconf input file to include directory instead of keeping it in its own
[krb5.git] / src / include / osconf.hin
1 /*
2  * include/krb5/stock/osconf.h
3  *
4  * Copyright 1990,1991 by the Massachusetts Institute of Technology.
5  * All Rights Reserved.
6  *
7  * Export of this software from the United States of America may
8  *   require a specific license from the United States Government.
9  *   It is the responsibility of any person or organization contemplating
10  *   export to obtain such a license before exporting.
11  * 
12  * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and
13  * distribute this software and its documentation for any purpose and
14  * without fee is hereby granted, provided that the above copyright
15  * notice appear in all copies and that both that copyright notice and
16  * this permission notice appear in supporting documentation, and that
17  * the name of M.I.T. not be used in advertising or publicity pertaining
18  * to distribution of the software without specific, written prior
19  * permission.  Furthermore if you modify this software you must label
20  * your software as modified software and not distribute it in such a
21  * fashion that it might be confused with the original M.I.T. software.
22  * M.I.T. makes no representations about the suitability of
23  * this software for any purpose.  It is provided "as is" without express
24  * or implied warranty.
25  * 
26  *
27  * Site- and OS- dependant configuration.
28  */
29
30 #ifndef KRB5_OSCONF__
31 #define KRB5_OSCONF__
32
33 #if !defined(_WIN32)
34     /* Don't try to pull in autoconf.h for Windows, since it's not used */
35 #ifndef KRB5_AUTOCONF__
36 #define KRB5_AUTOCONF__
37 #include "autoconf.h"
38 #endif
39 #endif
40
41 #if defined(__MACH__) && defined(__APPLE__)
42 # include <TargetConditionals.h>
43 #endif
44
45 #if defined(_WIN32)
46 #define DEFAULT_PROFILE_FILENAME "krb5.ini"
47 #define DEFAULT_LNAME_FILENAME  "/aname"
48 #define DEFAULT_KEYTAB_NAME     "FILE:%s\\krb5kt"
49 #else /* !_WINDOWS */
50 #if TARGET_OS_MAC
51 #define DEFAULT_SECURE_PROFILE_PATH "/Library/Preferences/edu.mit.Kerberos:/etc/krb5.conf:@SYSCONFDIR/krb5.conf"
52 #define DEFAULT_PROFILE_PATH        ("~/Library/Preferences/edu.mit.Kerberos" ":" DEFAULT_SECURE_PROFILE_PATH)
53 #define KRB5_PLUGIN_BUNDLE_DIR       "/System/Library/KerberosPlugins/KerberosFrameworkPlugins"
54 #define KDB5_PLUGIN_BUNDLE_DIR       "/System/Library/KerberosPlugins/KerberosDatabasePlugins"
55 #else
56 #define DEFAULT_SECURE_PROFILE_PATH     "/etc/krb5.conf:@SYSCONFDIR/krb5.conf"
57 #define DEFAULT_PROFILE_PATH        DEFAULT_SECURE_PROFILE_PATH
58 #endif
59 #define DEFAULT_KEYTAB_NAME     "FILE:/etc/krb5.keytab"
60 #define DEFAULT_LNAME_FILENAME  "@PREFIX/lib/krb5.aname"
61 #endif /* _WINDOWS  */
62
63 #define DEFAULT_KDB_FILE        "@LOCALSTATEDIR/krb5kdc/principal"
64 #define DEFAULT_KEYFILE_STUB    "@LOCALSTATEDIR/krb5kdc/.k5."
65 #define KRB5_DEFAULT_ADMIN_ACL  "@LOCALSTATEDIR/krb5kdc/krb5_adm.acl"
66 /* Used by old admin server */
67 #define DEFAULT_ADMIN_ACL       "@LOCALSTATEDIR/krb5kdc/kadm_old.acl"
68
69 /* Location of KDC profile */
70 #define DEFAULT_KDC_PROFILE     "@LOCALSTATEDIR/krb5kdc/kdc.conf"
71 #define KDC_PROFILE_ENV         "KRB5_KDC_PROFILE"
72
73 #if TARGET_OS_MAC
74 #define DEFAULT_KDB_LIB_PATH    { KDB5_PLUGIN_BUNDLE_DIR, "@MODULEDIR/kdb", NULL }
75 #else
76 #define DEFAULT_KDB_LIB_PATH    { "@MODULEDIR/kdb", NULL }
77 #endif
78
79 #define DEFAULT_KDC_ENCTYPE     ENCTYPE_DES3_CBC_SHA1
80 #define KDCRCACHE               "dfl:krb5kdc_rcache"
81
82 #define KDC_PORTNAME            "kerberos" /* for /etc/services or equiv. */
83 #define KDC_SECONDARY_PORTNAME  "kerberos-sec" /* For backwards */
84                                             /* compatibility with */
85                                             /* port 750 clients */
86
87 #define KRB5_DEFAULT_PORT       88
88 #define KRB5_DEFAULT_SEC_PORT   750
89
90 #define DEFAULT_KPASSWD_PORT    464
91 #define KPASSWD_PORTNAME "kpasswd"
92
93 #define DEFAULT_KDC_UDP_PORTLIST "88,750"
94 #define DEFAULT_KDC_TCP_PORTLIST ""
95
96 /*
97  * Defaults for the KADM5 admin system.
98  */
99 #define DEFAULT_KADM5_KEYTAB    "@LOCALSTATEDIR/krb5kdc/kadm5.keytab"
100 #define DEFAULT_KADM5_ACL_FILE  "@LOCALSTATEDIR/krb5kdc/kadm5.acl"
101 #define DEFAULT_KADM5_PORT      749 /* assigned by IANA */
102
103 #define MAX_DGRAM_SIZE  4096
104 #define MAX_SKDC_TIMEOUT 30
105 #define SKDC_TIMEOUT_SHIFT 2            /* left shift of timeout for backoff */
106 #define SKDC_TIMEOUT_1 1                /* seconds for first timeout */
107
108 #define RCTMPDIR        "@KRB5RCTMPDIR" /* directory to store replay caches */
109
110 #define KRB5_PATH_TTY   "/dev/tty"
111 #define KRB5_PATH_LOGIN "@SBINDIR/login.krb5"
112 #define KRB5_PATH_RLOGIN "@BINDIR/rlogin"
113
114 #define KRB5_ENV_CCNAME "KRB5CCNAME"
115
116 /*
117  * krb4 kadmin stuff follows
118  */
119
120 /* the default syslog file */
121 #define KADM_SYSLOG  "@LOCALSTATEDIR/krb5kdc/admin_server.syslog"
122
123 /* where to find the bad password table */
124 #define PW_CHECK_FILE "@LOCALSTATEDIR/krb5kdc/bad_passwd"
125
126 #define DEFAULT_ACL_DIR "@LOCALSTATEDIR/krb5kdc"
127
128 /*
129  * krb5 slave support follows
130  */
131
132 #define KPROP_DEFAULT_FILE "@LOCALSTATEDIR/krb5kdc/slave_datatrans"
133 #define KPROPD_DEFAULT_FILE "@LOCALSTATEDIR/krb5kdc/from_master"
134 #define KPROPD_DEFAULT_KDB5_UTIL "@SBINDIR/kdb5_util"
135 #define KPROPD_DEFAULT_KDB5_EDIT "@SBINDIR/kdb5_edit"
136 #define KPROPD_DEFAULT_KRB_DB DEFAULT_KDB_FILE
137 #define KPROPD_ACL_FILE "@LOCALSTATEDIR/krb5kdc/kpropd.acl"
138
139 #endif /* KRB5_OSCONF__ */