I talked to Dave Miller and he thinks that we should have TCP_NODELAY
[Samba/gbeck.git] / source / include / local.h
blobc609f65342ff98522c6d0fcf8379aa43ff665ac1
1 /* Copyright (C) 1995-1998 Samba-Team */
2 /* Copyright (C) 1998 John H Terpstra <jht@aquasoft.com.au> */
4 /* local definitions for file server */
5 #ifndef _LOCAL_H
6 #define _LOCAL_H
8 /* The default workgroup - usually overridden in smb.conf */
9 #ifndef WORKGROUP
10 #define WORKGROUP "WORKGROUP"
11 #endif
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"
20 /* This defines the section name in the configuration file that will
21 refer to the special "homes" service */
22 #define HOMES_NAME "homes"
24 /* This defines the section name in the configuration file that will
25 refer to the special "printers" service */
26 #define PRINTERS_NAME "printers"
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
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
37 /* define what facility to use for syslog */
38 #ifndef SYSLOG_FACILITY
39 #define SYSLOG_FACILITY LOG_DAEMON
40 #endif
42 /* Default size of shared memory used for share mode locking */
43 #ifndef SHMEM_SIZE
44 #define SHMEM_SIZE (1024*1024)
45 #endif
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.
54 #ifndef MAX_OPEN_FILES
55 #define MAX_OPEN_FILES 10000
56 #endif
58 /* the max number of simultanous connections to the server by all clients */
59 #define MAXSTATUS 100000
61 #define WORDMAX 0xFFFF
63 /* the maximum password length before we declare a likely attack */
64 #define MAX_PASS_LEN 200
66 /* separators for lists */
67 #define LIST_SEP " \t,;:\n\r"
69 #ifndef LOCKDIR
70 /* this should have been set in the Makefile */
71 #define LOCKDIR "/tmp/samba"
72 #endif
74 /* this is where browse lists are kept in the lock dir */
75 #define SERVER_LIST "browse.dat"
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
81 /* shall filenames with illegal chars in them get mangled in long
82 filename listings? */
83 #define MANGLE_LONG_FILENAMES
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
89 /* the size of the directory cache */
90 #define DIRCACHESIZE 20
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"
96 /* the default guest account - normally set in the Makefile or smb.conf */
97 #ifndef GUEST_ACCOUNT
98 #define GUEST_ACCOUNT "nobody"
99 #endif
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
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
111 You have 3 choices:
113 GUEST_SESSSETUP = 0 means session setups with an invalid password
114 are rejected.
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
120 GUEST_SESSSETUP = 2 means session setups with an invalid password
121 are treated as a guest login
123 Note that GUEST_SESSSETUP only has an effect in user or server
124 level security.
126 #ifndef GUEST_SESSSETUP
127 #define GUEST_SESSSETUP 0
128 #endif
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
136 /* the size of the uid cache used to reduce valid user checks */
137 #define UID_CACHE_SIZE 4
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)
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)
158 /* the following are in milliseconds */
159 #define LOCK_RETRY_TIMEOUT (100)
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
166 #define SMB_ALIGNMENT 1
169 /* shall we support browse requests via a FIFO to nmbd? */
170 #define ENABLE_FIFO 1
172 /* how long to wait for a socket connect to happen */
173 #define LONG_CONNECT_TIMEOUT 30
174 #define SHORT_CONNECT_TIMEOUT 5
176 /* default socket options. Dave Miller thinks we should default to TCP_NODELAY
177 given the socket IO pattern that Samba uses*/
178 #ifdef TCP_NODELAY
179 #define DEFAULT_SOCKET_OPTIONS "TCP_NODELAY"
180 #else
181 #define DEFAULT_SOCKET_OPTIONS ""
182 #endif
184 /* the default netbios keepalive timeout */
185 #define DEFAULT_KEEPALIVE 300
187 /* the directory to sit in when idle */
188 /* #define IDLE_DIR "/" */
190 /* Timout (in seconds) to wait for an oplock break
191 message to return from the client. */
193 #define OPLOCK_BREAK_TIMEOUT 30
195 /* how many times do we try to resend the oplock break request - useful
196 for buggy MS clients */
197 #define OPLOCK_BREAK_RESENDS 3
199 /* Timout (in seconds) to add to the oplock break timeout
200 to wait for the smbd to smbd message to return. */
202 #define OPLOCK_BREAK_TIMEOUT_FUDGEFACTOR 2
204 /* the read preciction code has been disabled until some problems with
205 it are worked out */
206 #define USE_READ_PREDICTION 0
208 /* name of directory that netatalk uses to store macintosh resource forks */
209 #define APPLEDOUBLE ".AppleDouble/"
211 #endif