at the interop Isaac (at least I _think_ it was Isaac) said that if a
[jra/samba/.git] / source3 / include / local.h
1 /* Copyright (C) 1995-1998 Samba-Team */
2 /* Copyright (C) 1998 John H Terpstra <jht@aquasoft.com.au> */
3
4 /* local definitions for file server */
5 #ifndef _LOCAL_H
6 #define _LOCAL_H
7
8 /* The default workgroup - usually overridden in smb.conf */
9 #ifndef WORKGROUP
10 #define WORKGROUP "WORKGROUP"
11 #endif
12
13 /* This defines the section name in the configuration file that will contain */
14 /* global parameters - that is, parameters relating to the whole server, not */
15 /* just services. This name is then reserved, and may not be used as a       */
16 /* a service name. It will default to "global" if not defined here.          */
17 #define GLOBAL_NAME "global"
18 #define GLOBAL_NAME2 "globals"
19
20 /* This defines the section name in the configuration file that will
21    refer to the special "homes" service */
22 #define HOMES_NAME "homes"
23
24 /* This defines the section name in the configuration file that will
25    refer to the special "printers" service */
26 #define PRINTERS_NAME "printers"
27
28 /* Yves Gaige <yvesg@hptnodur.grenoble.hp.com> requested this set this       */
29 /* to a maximum of 8 if old smb clients break because of long printer names. */
30 #define MAXPRINTERLEN 15
31
32 /* max number of directories open at once */
33 /* note that with the new directory code this no longer requires a
34    file handle per directory, but large numbers do use more memory */
35 #define MAX_OPEN_DIRECTORIES 64
36
37 /* define what facility to use for syslog */
38 #ifndef SYSLOG_FACILITY
39 #define SYSLOG_FACILITY LOG_DAEMON
40 #endif
41
42 /* Default size of shared memory used for share mode locking */
43 #ifndef SHMEM_SIZE
44 #define SHMEM_SIZE (1024*1024)
45 #endif
46
47 /* 
48  * Default number of maximum open files per smbd. This is
49  * also limited by the maximum available file descriptors
50  * per process and can also be set in smb.conf as "max open files"
51  * in the [global] section.
52  */
53
54 #ifndef MAX_OPEN_FILES
55 #define MAX_OPEN_FILES 10000
56 #endif
57  
58 /* the max number of simultanous connections to the server by all clients */
59 #define MAXSTATUS 100000
60
61 #define WORDMAX 0xFFFF
62
63 /* the maximum password length before we declare a likely attack */
64 #define MAX_PASS_LEN 200
65
66 /* separators for lists */
67 #define LIST_SEP " \t,;:\n\r"
68
69 #ifndef LOCKDIR
70 /* this should have been set in the Makefile */
71 #define LOCKDIR "/tmp/samba"
72 #endif
73
74 /* this is where browse lists are kept in the lock dir */
75 #define SERVER_LIST "browse.dat"
76
77 /* shall guest entries in printer queues get changed to user entries,
78    so they can be deleted using the windows print manager? */
79 #define LPQ_GUEST_TO_USER
80
81 /* shall filenames with illegal chars in them get mangled in long
82    filename listings? */
83 #define MANGLE_LONG_FILENAMES 
84
85 /* define this if you want to stop spoofing with .. and soft links
86    NOTE: This also slows down the server considerably */
87 #define REDUCE_PATHS
88
89 /* the size of the directory cache */
90 #define DIRCACHESIZE 20
91
92 /* what default type of filesystem do we want this to show up as in a
93    NT file manager window? */
94 #define FSTYPE_STRING "NTFS"
95
96 /* the default guest account - normally set in the Makefile or smb.conf */
97 #ifndef GUEST_ACCOUNT
98 #define GUEST_ACCOUNT "nobody"
99 #endif
100
101 /* do you want smbd to send a 1 byte packet to nmbd to trigger it to start 
102    when smbd starts? */
103 #ifndef PRIME_NMBD
104 #define PRIME_NMBD 1
105 #endif
106
107 /* do you want session setups at user level security with a invalid
108    password to be rejected or allowed in as guest? WinNT rejects them
109    but it can be a pain as it means "net view" needs to use a password 
110
111    You have 3 choices:
112
113    GUEST_SESSSETUP = 0 means session setups with an invalid password
114    are rejected.
115
116    GUEST_SESSSETUP = 1 means session setups with an invalid password
117    are rejected, unless the username does not exist, in which case it
118    is treated as a guest login
119
120    GUEST_SESSSETUP = 2 means session setups with an invalid password
121    are treated as a guest login
122
123    Note that GUEST_SESSSETUP only has an effect in user or server
124    level security.
125    */
126 #ifndef GUEST_SESSSETUP
127 #define GUEST_SESSSETUP 0
128 #endif
129
130 /* the default pager to use for the client "more" command. Users can
131    override this with the PAGER environment variable */
132 #ifndef PAGER
133 #define PAGER "more"
134 #endif
135
136 /* the size of the uid cache used to reduce valid user checks */
137 #define UID_CACHE_SIZE 4
138
139 /* if mmap is enabled, then this is the maximum size of file to use
140    the mmap code on. We don't want to mmap huge files as virtual
141    address spaces are limited */
142 #define MAX_MMAP_SIZE (100*0x100000)
143
144 /* the following control timings of various actions. Don't change 
145    them unless you know what you are doing. These are all in seconds */
146 #define DEFAULT_SMBD_TIMEOUT (60*60*24*7)
147 #define SMBD_RELOAD_CHECK (60)
148 #define IDLE_CLOSED_TIMEOUT (60)
149 #define DPTR_IDLE_TIMEOUT (120)
150 #define SMBD_SELECT_LOOP (10)
151 #define NMBD_SELECT_LOOP (10)
152 #define BROWSE_INTERVAL (60)
153 #define REGISTRATION_INTERVAL (10*60)
154 #define NMBD_INETD_TIMEOUT (120)
155 #define NMBD_MAX_TTL (24*60*60)
156 #define LPQ_LOCK_TIMEOUT (5)
157
158 /* the following are in milliseconds */
159 #define LOCK_RETRY_TIMEOUT (100)
160
161 /* do you want to dump core (carefully!) when an internal error is
162    encountered? Samba will be careful to make the core file only
163    accessible to root */
164 #define DUMP_CORE 1
165
166 #define SMB_ALIGNMENT 1
167
168
169 /* shall we support browse requests via a FIFO to nmbd? */
170 #define ENABLE_FIFO 1
171
172 /* how long to wait for a socket connect to happen */
173 #define LONG_CONNECT_TIMEOUT 30
174 #define SHORT_CONNECT_TIMEOUT 5
175
176 /* the default netbios keepalive timeout */
177 #define DEFAULT_KEEPALIVE 300
178
179 /* the directory to sit in when idle */
180 /* #define IDLE_DIR "/" */
181
182 /* Timout (in seconds) to wait for an oplock break
183    message to return from the client. */
184
185 #define OPLOCK_BREAK_TIMEOUT 30
186
187 /* how many times do we try to resend the oplock break request - useful
188    for buggy MS clients */
189 #define OPLOCK_BREAK_RESENDS 3
190
191 /* Timout (in seconds) to add to the oplock break timeout
192    to wait for the smbd to smbd message to return. */
193
194 #define OPLOCK_BREAK_TIMEOUT_FUDGEFACTOR 2
195
196 /* the read preciction code has been disabled until some problems with
197    it are worked out */
198 #define USE_READ_PREDICTION 0
199
200 /* name of directory that netatalk uses to store macintosh resource forks */
201 #define APPLEDOUBLE ".AppleDouble/"
202
203 #endif