3 /* This file is automatically generated with "make proto". DO NOT EDIT */
5 /* The following definitions come from lib/charcnv.c */
7 char *unix2dos_format (char *str
, BOOL overwrite
);
8 char *dos2unix_format (char *str
, BOOL overwrite
);
9 void interpret_character_set (const char *str
);
11 /* The following definitions come from lib/charset.c */
13 void charset_initialise (void);
14 void codepage_initialise (int client_codepage
);
15 void add_char_string (const char *s
);
17 /* The following definitions come from lib/debug.c */
19 void setup_logging (const char *pname
, BOOL interactive
);
21 BOOL
dbghdr (int level
, const char *file
, const char *func
, int line
);
23 /* The following definitions come from lib/interface.c */
25 void load_interfaces (void);
26 void iface_set_default (char *ip
, char *bcast
, char *nmask
);
27 BOOL
ismyip (struct in_addr ip
);
28 BOOL
is_local_net (struct in_addr from
);
29 int iface_count (void);
30 BOOL
we_are_multihomed (void);
31 struct interface
*get_interface (int n
);
32 struct in_addr
*iface_n_ip (int n
);
33 unsigned iface_hash (void);
34 struct in_addr
*iface_bcast (struct in_addr ip
);
35 struct in_addr
*iface_ip (struct in_addr ip
);
37 /* The following definitions come from lib/kanji.c */
39 void interpret_coding_system (const char *str
);
40 BOOL
is_multibyte_codepage (void);
41 void initialize_multibyte_vectors (int client_codepage
);
43 /* The following definitions come from lib/md4.c */
45 void mdfour (unsigned char *out
, unsigned char *in
, int n
);
47 /* The following definitions come from lib/netmask.c */
49 int get_netmask (struct in_addr
*ipaddr
, struct in_addr
*nmask
);
51 /* The following definitions come from lib/slprintf.c */
53 int vslprintf (char *str
, int n
, const char *format
, va_list ap
);
55 /* The following definitions come from lib/system.c */
57 int sys_select (int maxfd
, fd_set
* fds
, struct timeval
*tval
);
58 int sys_stat (const char *fname
, SMB_STRUCT_STAT
* sbuf
);
59 int sys_lstat (const char *fname
, SMB_STRUCT_STAT
* sbuf
);
60 int sys_fseek (FILE * fp
, SMB_OFF_T offset
, int whence
);
61 SMB_OFF_T
sys_ftell (FILE * fp
);
62 int sys_open (const char *path
, int oflag
, mode_t mode
);
63 FILE *sys_fopen (const char *path
, const char *type
);
64 SMB_STRUCT_DIRENT
*sys_readdir (DIR * dirp
);
65 char *sys_getwd (char *s
);
66 int sys_chown (const char *fname
, uid_t uid
, gid_t gid
);
67 struct hostent
*sys_gethostbyname (const char *name
);
68 long sys_random (void);
69 void sys_srandom (unsigned int seed
);
71 /* The following definitions come from lib/time.c */
73 void GetTimeOfDay (struct timeval
*tval
);
75 int TimeDiff (time_t t
);
76 struct tm
*LocalTime (time_t * t
);
77 time_t nt_time_to_unix (NTTIME
* nt
);
78 time_t interpret_long_date (char *p
);
79 void unix_to_nt_time (NTTIME
* nt
, time_t t
);
80 void put_long_date (char *p
, time_t t
);
81 BOOL
null_mtime (time_t mtime
);
82 void put_dos_date (char *buf
, int offset
, time_t unixdate
);
83 void put_dos_date2 (char *buf
, int offset
, time_t unixdate
);
84 void put_dos_date3 (char *buf
, int offset
, time_t unixdate
);
85 time_t make_unix_date (void *date_ptr
);
86 time_t make_unix_date2 (void *date_ptr
);
87 time_t make_unix_date3 (void *date_ptr
);
88 char *http_timestring (time_t t
);
89 char *timestring (void);
90 time_t get_create_time (SMB_STRUCT_STAT
* st
, BOOL fake_dirs
);
92 /* The following definitions come from lib/username.c */
94 const char *get_home_dir (char *user
);
95 BOOL
map_username (const char *user
);
96 struct passwd
*Get_Pwnam (const char *user
);
97 BOOL
user_in_list (const char *user
, char *list
);
99 /* The following definitions come from lib/util.c */
101 const char *tmpdir (void);
102 BOOL
in_group (gid_t group
, gid_t current_gid
, int ngroups
, gid_t
* groups
);
103 char *Atoic (char *p
, int *n
, char *c
);
104 char *get_numlist (char *p
, uint32
** num
, int *count
);
105 void putip (void *dest
, void *src
);
106 char *dns_to_netbios_name (char *dns_name
);
107 int name_mangle (char *In
, char *Out
, char name_type
);
108 BOOL
file_exist (char *fname
, SMB_STRUCT_STAT
* sbuf
);
109 time_t file_modtime (char *fname
);
110 BOOL
directory_exist (char *dname
, SMB_STRUCT_STAT
* st
);
111 SMB_OFF_T
file_size (char *file_name
);
112 char *attrib_string (uint16 mode
);
113 void unix_format (char *fname
);
114 void dos_format (char *fname
);
115 void show_msg (char *buf
);
116 int smb_len (char *buf
);
117 void _smb_setlen (char *buf
, int len
);
118 void smb_setlen (char *buf
, int len
);
119 int set_message (char *buf
, int num_words
, int num_bytes
, BOOL zero
);
120 int smb_buflen (char *buf
);
121 char *smb_buf (char *buf
);
122 int smb_offset (char *p
, char *buf
);
123 void dos_clean_name (char *s
);
124 void unix_clean_name (char *s
);
125 BOOL
reduce_name (char *s
, char *dir
, BOOL widelinks
);
126 void expand_mask (char *Mask
, BOOL doext
);
127 void make_dir_struct (char *buf
, char *mask
, char *fname
, SMB_OFF_T size
, int mode
, time_t date
);
128 void close_low_fds (void);
129 int set_blocking (int fd
, BOOL set
);
130 int TvalDiff (struct timeval
*tvalold
, struct timeval
*tvalnew
);
131 SMB_OFF_T
transfer_file (int infd
, int outfd
, SMB_OFF_T n
, char *header
, int headlen
, int align
);
132 int name_extract (char *buf
, int ofs
, char *name
);
133 int name_len (char *s1
);
135 BOOL
do_match (char *str
, char *regexp
, int case_sig
);
136 BOOL
mask_match (char *str
, char *regexp
, int case_sig
, BOOL trans2
);
137 int set_filelen (int fd
, SMB_OFF_T len
);
138 void *Realloc (void *p
, size_t size
);
139 BOOL
get_myname (char *my_name
, struct in_addr
*ip
);
140 BOOL
ip_equal (struct in_addr ip1
, struct in_addr ip2
);
141 int interpret_protocol (char *str
, int def
);
142 uint32
interpret_addr (const char *str
);
143 struct in_addr
*interpret_addr2 (const char *str
);
144 BOOL
zero_ip (struct in_addr ip
);
145 BOOL
matchname (char *remotehost
, struct in_addr addr
);
146 void standard_sub_basic (char *str
);
147 void standard_sub (connection_struct
* conn
, char *str
);
148 BOOL
same_net (struct in_addr ip1
, struct in_addr ip2
, struct in_addr mask
);
149 struct hostent
*Get_Hostbyname (const char *name
);
150 char *uidtoname (uid_t uid
);
151 char *gidtoname (gid_t gid
);
152 uid_t
nametouid (const char *name
);
153 void smb_panic (const char *why
);
154 char *readdirname (DIR * p
);
155 BOOL
is_in_path (char *name
, name_compare_entry
* namelist
);
156 void set_namearray (name_compare_entry
** ppname_array
, char *namelist
);
157 void free_namearray (name_compare_entry
* name_array
);
158 BOOL
fcntl_lock (int fd
, int op
, SMB_OFF_T offset
, SMB_OFF_T count
, int type
);
159 BOOL
is_myname (char *s
);
160 void set_remote_arch (enum remote_arch_types type
);
161 enum remote_arch_types
get_remote_arch (void);
162 char *align2 (char *q
, char *base
);
163 void out_ascii (FILE * f
, unsigned char *buf
, int len
);
164 void out_data (FILE * f
, char *buf1
, int len
, int per_line
);
165 void print_asc (int level
, unsigned char *buf
, int len
);
166 void dump_data (int level
, char *buf1
, int len
);
167 char *tab_depth (int depth
);
168 int str_checksum (const char *s
);
169 void zero_free (void *p
, size_t size
);
170 int set_maxfiles (int requested_max
);
172 /* The following definitions come from lib/util_file.c */
174 BOOL
do_file_lock (int fd
, int waitsecs
, int type
);
175 BOOL
file_lock (int fd
, int type
, int secs
, int *plock_depth
);
176 BOOL
file_unlock (int fd
, int *plock_depth
);
177 void *startfilepwent (char *pfile
, char *s_readbuf
, int bufsize
, int *file_lock_depth
, BOOL update
);
178 void endfilepwent (void *vp
, int *file_lock_depth
);
179 SMB_BIG_UINT
getfilepwpos (void *vp
);
180 BOOL
setfilepwpos (void *vp
, SMB_BIG_UINT tok
);
181 int getfileline (void *vp
, char *linebuf
, int linebuf_size
);
182 char *fgets_slash (char *s2
, int maxlen
, FILE * f
);
184 /* The following definitions come from lib/util_sock.c */
186 BOOL
is_a_socket (int fd
);
187 void set_socket_options (int fd
, char *options
);
188 void close_sockets (void);
189 ssize_t
write_socket (int fd
, char *buf
, size_t len
);
190 ssize_t
read_udp_socket (int fd
, char *buf
, size_t len
);
191 ssize_t
read_with_timeout (int fd
, char *buf
, size_t mincnt
, size_t maxcnt
, unsigned int time_out
);
192 BOOL
send_keepalive (int client
);
193 ssize_t
read_data (int fd
, char *buffer
, size_t N
);
194 ssize_t
write_data (int fd
, char *buffer
, size_t N
);
195 ssize_t
read_smb_length (int fd
, char *inbuf
, unsigned int timeout
);
196 BOOL
receive_smb (int fd
, char *buffer
, unsigned int timeout
);
197 BOOL
client_receive_smb (int fd
, char *buffer
, unsigned int timeout
);
198 BOOL
send_null_session_msg (int fd
);
199 BOOL
send_smb (int fd
, char *buffer
);
200 BOOL
send_one_packet (char *buf
, int len
, struct in_addr ip
, int port
, int type
);
201 int open_socket_in (int type
, int port
, int dlevel
, uint32 socket_addr
, BOOL rebind
);
202 int open_socket_out (int type
, struct in_addr
*addr
, int port
, int timeout
);
203 char *client_name (int fd
);
204 char *client_addr (int fd
);
206 /* The following definitions come from lib/util_str.c */
208 void set_first_token (char *ptr
);
209 BOOL
next_token (char **ptr
, char *buff
, const char *sep
, size_t bufsize
);
210 char **toktocliplist (int *ctok
, char *sep
);
211 int StrCaseCmp (const char *s
, const char *t
);
212 int StrnCaseCmp (const char *s
, const char *t
, size_t n
);
213 BOOL
strequal (const char *s1
, const char *s2
);
214 BOOL
strnequal (const char *s1
, const char *s2
, size_t n
);
215 BOOL
strcsequal (const char *s1
, const char *s2
);
216 void strlower (char *s
);
217 void strupper (char *s
);
218 void strnorm (char *s
);
219 BOOL
strisnormal (char *s
);
220 void string_replace (char *s
, char oldc
, char newc
);
221 char *skip_string (char *buf
, size_t n
);
222 size_t str_charnum (const char *s
);
223 BOOL
trim_string (char *s
, const char *front
, const char *back
);
224 BOOL
strhasupper (const char *s
);
225 BOOL
strhaslower (const char *s
);
226 size_t count_chars (const char *s
, char c
);
227 char *safe_strcpy (char *dest
, const char *src
, size_t maxlength
);
228 char *safe_strcat (char *dest
, const char *src
, size_t maxlength
);
229 char *StrCpy (char *dest
, const char *src
);
230 char *StrnCpy (char *dest
, const char *src
, size_t n
);
231 char *strncpyn (char *dest
, const char *src
, size_t n
, char c
);
232 size_t strhex_to_str (char *p
, size_t len
, const char *strhex
);
233 BOOL
in_list (char *s
, char *list
, BOOL casesensitive
);
234 BOOL
string_init (char **dest
, const char *src
);
235 void string_free (char **s
);
236 BOOL
string_set (char **dest
, const char *src
);
237 void string_sub (char *s
, const char *pattern
, const char *insert
);
238 void all_string_sub (char *s
, const char *pattern
, const char *insert
);
239 void split_at_last_component (char *path
, char *front
, char sep
, char *back
);
241 /* The following definitions come from libsmb/clientgen.c */
243 int cli_set_port (struct cli_state
*cli
, int port
);
244 char *cli_errstr (struct cli_state
*cli
);
245 BOOL
cli_api_pipe (struct cli_state
*cli
, char *pipe_name
, int pipe_name_len
,
246 uint16
* setup
, uint32 setup_count
, uint32 max_setup_count
,
247 char *params
, uint32 param_count
, uint32 max_param_count
,
248 char *data
, uint32 data_count
, uint32 max_data_count
,
249 char **rparam
, uint32
* rparam_count
, char **rdata
, uint32
* rdata_count
);
250 BOOL
cli_api (struct cli_state
*cli
,
251 char *param
, int prcnt
, int mprcnt
,
252 char *data
, int drcnt
, int mdrcnt
,
253 char **rparam
, int *rprcnt
, char **rdata
, int *rdrcnt
);
254 BOOL
cli_NetWkstaUserLogon (struct cli_state
*cli
, char *user
, char *workstation
);
255 int cli_RNetShareEnum (struct cli_state
*cli
,
256 void (*fn
) (const char *, uint32
, const char *, void *), void *state
);
257 BOOL
cli_NetServerEnum (struct cli_state
*cli
, char *workgroup
, uint32 stype
,
258 void (*fn
) (const char *, uint32
, const char *, void *), void *state
);
259 BOOL
cli_session_setup (struct cli_state
*cli
, char *user
, char *pass
, int passlen
, char *ntpass
,
260 int ntpasslen
, char *workgroup
);
261 BOOL
cli_ulogoff (struct cli_state
*cli
);
262 BOOL
cli_send_tconX (struct cli_state
*cli
,
263 const char *share
, const char *dev
, const char *pass
, int passlen
);
264 BOOL
cli_tdis (struct cli_state
*cli
);
265 BOOL
cli_rename (struct cli_state
*cli
, char *fname_src
, char *fname_dst
);
266 BOOL
cli_unlink (struct cli_state
*cli
, char *fname
);
267 BOOL
cli_mkdir (struct cli_state
*cli
, char *dname
);
268 BOOL
cli_rmdir (struct cli_state
*cli
, char *dname
);
269 int cli_nt_create (struct cli_state
*cli
, char *fname
);
270 int cli_open (struct cli_state
*cli
, char *fname
, int flags
, int share_mode
);
271 BOOL
cli_close (struct cli_state
*cli
, int fnum
);
272 BOOL
cli_lock (struct cli_state
*cli
, int fnum
, uint32 offset
, uint32 len
, int timeout
);
273 BOOL
cli_unlock (struct cli_state
*cli
, int fnum
, uint32 offset
, uint32 len
, int timeout
);
274 size_t cli_read (struct cli_state
*cli
, int fnum
, char *buf
, off_t offset
, size_t size
);
275 ssize_t
cli_write (struct cli_state
*cli
,
276 int fnum
, uint16 write_mode
, const char *buf
, off_t offset
, size_t size
);
277 ssize_t
cli_smbwrite (struct cli_state
*cli
, int fnum
, const char *buf
, off_t offset
, size_t size
);
278 BOOL
cli_getattrE (struct cli_state
*cli
, int fd
,
279 uint16
* attr
, size_t * size
, time_t * c_time
, time_t * a_time
, time_t * m_time
);
280 BOOL
cli_getatr (struct cli_state
*cli
, char *fname
, uint16
* attr
, size_t * size
, time_t * t
);
281 BOOL
cli_setatr (struct cli_state
*cli
, char *fname
, uint16 attr
, time_t t
);
282 BOOL
cli_qpathinfo (struct cli_state
*cli
, const char *fname
,
283 time_t * c_time
, time_t * a_time
, time_t * m_time
,
284 size_t * size
, uint16
* mode
);
285 BOOL
cli_qpathinfo2 (struct cli_state
*cli
, const char *fname
,
286 time_t * c_time
, time_t * a_time
, time_t * m_time
,
287 time_t * w_time
, size_t * size
, uint16
* mode
, SMB_INO_T
* ino
);
288 BOOL
cli_qfileinfo (struct cli_state
*cli
, int fnum
,
289 uint16
* mode
, size_t * size
,
290 time_t * c_time
, time_t * a_time
, time_t * m_time
,
291 time_t * w_time
, SMB_INO_T
* ino
);
292 int cli_list (struct cli_state
*cli
, const char *Mask
, uint16 attribute
,
293 void (*fn
) (file_info
*, const char *, void *), void *state
);
294 BOOL
cli_negprot (struct cli_state
*cli
);
295 BOOL
cli_session_request (struct cli_state
*cli
, struct nmb_name
*calling
, struct nmb_name
*called
);
296 BOOL
cli_connect (struct cli_state
*cli
, const char *host
, struct in_addr
*ip
);
297 struct cli_state
*cli_initialise (struct cli_state
*cli
);
298 void cli_shutdown (struct cli_state
*cli
);
299 int cli_error (struct cli_state
*cli
, uint8
* eclass
, uint32
* num
, uint32
* nt_rpc_error
);
300 void cli_sockopt (struct cli_state
*cli
, char *options
);
301 uint16
cli_setpid (struct cli_state
*cli
, uint16 pid
);
302 BOOL
cli_reestablish_connection (struct cli_state
*cli
);
303 BOOL
cli_establish_connection (struct cli_state
*cli
,
304 char *dest_host
, struct in_addr
*dest_ip
,
305 struct nmb_name
*calling
, struct nmb_name
*called
,
306 char *service
, char *service_type
, BOOL do_shutdown
, BOOL do_tcon
);
307 BOOL
cli_chkpath (struct cli_state
*cli
, char *path
);
308 BOOL
cli_message_start (struct cli_state
*cli
, char *host
, char *username
, int *grp
);
309 BOOL
cli_message_text (struct cli_state
*cli
, char *msg
, int len
, int grp
);
310 BOOL
cli_message_end (struct cli_state
*cli
, int grp
);
311 BOOL
cli_dskattr (struct cli_state
*cli
, int *bsize
, int *total
, int *avail
);
313 /* The following definitions come from libsmb/namequery.c */
315 struct in_addr
*name_query (int fd
, const char *name
, int name_type
, BOOL bcast
, BOOL recurse
,
316 struct in_addr to_ip
, int *count
, void (*fn
) (struct packet_struct
*));
317 FILE *startlmhosts (const char *fname
);
318 BOOL
getlmhostsent (FILE * fp
, pstring name
, int *name_type
, struct in_addr
*ipaddr
);
319 void endlmhosts (FILE * fp
);
320 BOOL
resolve_name (const char *name
, struct in_addr
*return_ip
, int name_type
);
321 BOOL
find_master_ip (char *group
, struct in_addr
*master_ip
);
323 /* The following definitions come from libsmb/nmblib.c */
325 void debug_nmb_packet (struct packet_struct
*p
);
326 char *nmb_namestr (struct nmb_name
*n
);
327 struct packet_struct
*copy_packet (struct packet_struct
*packet
);
328 void free_packet (struct packet_struct
*packet
);
329 struct packet_struct
*read_packet (int fd
, enum packet_type packet_type
);
330 void make_nmb_name (struct nmb_name
*n
, const char *name
, int type
);
331 BOOL
nmb_name_equal (struct nmb_name
*n1
, struct nmb_name
*n2
);
332 BOOL
send_packet (struct packet_struct
*p
);
333 struct packet_struct
*receive_packet (int fd
, enum packet_type type
, int t
);
334 void sort_query_replies (char *data
, int n
, struct in_addr ip
);
336 /* The following definitions come from libsmb/nterr.c */
338 const char *get_nt_error_msg (uint32 nt_code
);
340 /* The following definitions come from libsmb/pwd_cache.c */
342 void pwd_init (struct pwd_info
*pwd
);
343 void pwd_obfuscate_key (struct pwd_info
*pwd
, uint32 int_key
, char *str_key
);
344 void pwd_read (struct pwd_info
*pwd
, char *passwd_report
, BOOL do_encrypt
);
345 void pwd_set_nullpwd (struct pwd_info
*pwd
);
346 void pwd_set_cleartext (struct pwd_info
*pwd
, char *clr
);
347 void pwd_get_cleartext (struct pwd_info
*pwd
, char *clr
);
348 void pwd_set_lm_nt_16 (struct pwd_info
*pwd
, uchar lm_pwd
[16], uchar nt_pwd
[16]);
349 void pwd_get_lm_nt_16 (struct pwd_info
*pwd
, uchar lm_pwd
[16], uchar nt_pwd
[16]);
350 void pwd_make_lm_nt_16 (struct pwd_info
*pwd
, char *clr
);
351 void pwd_make_lm_nt_owf (struct pwd_info
*pwd
, uchar cryptkey
[8]);
352 void pwd_get_lm_nt_owf (struct pwd_info
*pwd
, uchar lm_owf
[24], uchar nt_owf
[24]);
354 /* The following definitions come from libsmb/smbdes.c */
356 void E_P16 (unsigned char *p14
, unsigned char *p16
);
357 void E_P24 (unsigned char *p21
, unsigned char *c8
, unsigned char *p24
);
358 void D_P16 (unsigned char *p14
, unsigned char *in
, unsigned char *out
);
359 void E_old_pw_hash (unsigned char *p14
, unsigned char *in
, unsigned char *out
);
360 void cred_hash1 (unsigned char *out
, unsigned char *in
, unsigned char *key
);
361 void cred_hash2 (unsigned char *out
, unsigned char *in
, unsigned char *key
);
362 void cred_hash3 (unsigned char *out
, unsigned char *in
, unsigned char *key
, int forw
);
363 void SamOEMhash (unsigned char *data
, unsigned char *key
, int val
);
365 /* The following definitions come from libsmb/smbencrypt.c */
367 void SMBencrypt (uchar
* passwd
, uchar
* c8
, uchar
* p24
);
368 void E_md4hash (uchar
* passwd
, uchar
* p16
);
369 void nt_lm_owf_gen (char *pwd
, uchar nt_p16
[16], uchar p16
[16]);
370 void SMBOWFencrypt (uchar passwd
[16], uchar
* c8
, uchar p24
[24]);
371 void NTLMSSPOWFencrypt (uchar passwd
[8], uchar
* ntlmchalresp
, uchar p24
[24]);
372 void SMBNTencrypt (uchar
* passwd
, uchar
* c8
, uchar
* p24
);
374 /* The following definitions come from libsmb/smberr.c */
376 char *smb_errstr (char *inbuf
);
378 /* The following definitions come from param/loadparm.c */
380 char *lp_logfile (void);
381 char *lp_configfile (void);
382 char *lp_smb_passwd_file (void);
383 char *lp_serverstring (void);
384 char *lp_printcapname (void);
385 char *lp_lockdir (void);
386 char *lp_rootdir (void);
387 char *lp_defaultservice (void);
388 char *lp_msg_command (void);
389 char *lp_hosts_equiv (void);
390 char *lp_auto_services (void);
391 char *lp_passwd_program (void);
392 char *lp_passwd_chat (void);
393 char *lp_passwordserver (void);
394 char *lp_name_resolve_order (void);
395 char *lp_workgroup (void);
396 char *lp_username_map (void);
397 char *lp_groupname_map (void);
398 char *lp_logon_script (void);
399 char *lp_logon_path (void);
400 char *lp_logon_drive (void);
401 char *lp_logon_home (void);
402 char *lp_remote_announce (void);
403 char *lp_remote_browse_sync (void);
404 char *lp_wins_server (void);
405 char *lp_interfaces (void);
406 char *lp_socket_address (void);
407 char *lp_nis_home_map_name (void);
408 char *lp_netbios_aliases (void);
409 char *lp_driverfile (void);
410 char *lp_panic_action (void);
411 char *lp_adduser_script (void);
412 char *lp_deluser_script (void);
413 char *lp_domain_groups (void);
414 char *lp_domain_admin_group (void);
415 char *lp_domain_guest_group (void);
416 char *lp_domain_admin_users (void);
417 char *lp_domain_guest_users (void);
418 char *lp_ldap_server (void);
419 char *lp_ldap_suffix (void);
420 char *lp_ldap_filter (void);
421 char *lp_ldap_root (void);
422 char *lp_ldap_rootpasswd (void);
423 int lp_ssl_version (void);
424 char *lp_ssl_hosts (void);
425 char *lp_ssl_hosts_resign (void);
426 char *lp_ssl_cacertdir (void);
427 char *lp_ssl_cacertfile (void);
428 char *lp_ssl_cert (void);
429 char *lp_ssl_privkey (void);
430 char *lp_ssl_client_cert (void);
431 char *lp_ssl_client_privkey (void);
432 char *lp_ssl_ciphers (void);
433 BOOL
lp_ssl_enabled (void);
434 BOOL
lp_ssl_reqClientCert (void);
435 BOOL
lp_ssl_reqServerCert (void);
436 BOOL
lp_ssl_compatibility (void);
437 BOOL
lp_dns_proxy (void);
438 BOOL
lp_wins_support (void);
439 BOOL
lp_we_are_a_wins_server (void);
440 BOOL
lp_wins_proxy (void);
441 BOOL
lp_local_master (void);
442 BOOL
lp_domain_master (void);
443 BOOL
lp_domain_logons (void);
444 BOOL
lp_preferred_master (void);
445 BOOL
lp_load_printers (void);
446 BOOL
lp_use_rhosts (void);
447 BOOL
lp_readprediction (void);
448 BOOL
lp_readbmpx (void);
449 BOOL
lp_readraw (void);
450 BOOL
lp_writeraw (void);
451 BOOL
lp_null_passwords (void);
452 BOOL
lp_strip_dot (void);
453 BOOL
lp_encrypted_passwords (void);
454 BOOL
lp_update_encrypted (void);
455 BOOL
lp_syslog_only (void);
456 BOOL
lp_timestamp_logs (void);
457 BOOL
lp_browse_list (void);
458 BOOL
lp_unix_realname (void);
459 BOOL
lp_nis_home_map (void);
460 BOOL
lp_bind_interfaces_only (void);
461 BOOL
lp_unix_password_sync (void);
462 BOOL
lp_passwd_chat_debug (void);
463 BOOL
lp_ole_locking_compat (void);
464 BOOL
lp_nt_smb_support (void);
465 BOOL
lp_nt_pipe_support (void);
466 BOOL
lp_nt_acl_support (void);
467 BOOL
lp_stat_cache (void);
468 BOOL
lp_allow_trusted_domains (void);
469 BOOL
lp_restrict_anonymous (void);
470 int lp_os_level (void);
471 int lp_max_ttl (void);
472 int lp_max_wins_ttl (void);
473 int lp_min_wins_ttl (void);
474 int lp_max_open_files (void);
475 int lp_maxxmit (void);
476 int lp_maxmux (void);
477 int lp_passwordlevel (void);
478 int lp_usernamelevel (void);
479 int lp_readsize (void);
480 int lp_shmem_size (void);
481 int lp_deadtime (void);
482 int lp_maxprotocol (void);
483 int lp_security (void);
484 int lp_maxdisksize (void);
485 int lp_lpqcachetime (void);
486 int lp_syslog (void);
487 int lp_client_code_page (void);
488 int lp_lm_announce (void);
489 int lp_lm_interval (void);
490 int lp_machine_password_timeout (void);
491 int lp_change_notify_timeout (void);
492 int lp_stat_cache_size (void);
493 int lp_map_to_guest (void);
494 int lp_min_passwd_length (void);
495 int lp_oplock_break_wait_time (void);
496 int lp_ldap_port (void);
497 char *lp_preexec (int);
498 char *lp_postexec (int);
499 char *lp_rootpreexec (int);
500 char *lp_rootpostexec (int);
501 char *lp_servicename (int);
502 char *lp_pathname (int);
503 char *lp_dontdescend (int);
504 char *lp_username (int);
505 char *lp_guestaccount (int);
506 char *lp_invalid_users (int);
507 char *lp_valid_users (int);
508 char *lp_admin_users (int);
509 char *lp_printcommand (int);
510 char *lp_lpqcommand (int);
511 char *lp_lprmcommand (int);
512 char *lp_lppausecommand (int);
513 char *lp_lpresumecommand (int);
514 char *lp_queuepausecommand (int);
515 char *lp_queueresumecommand (int);
516 char *lp_printername (int);
517 char *lp_printerdriver (int);
518 char *lp_hostsallow (int);
519 char *lp_hostsdeny (int);
520 char *lp_magicscript (int);
521 char *lp_magicoutput (int);
522 char *lp_comment (int);
523 char *lp_force_user (int);
524 char *lp_force_group (int);
525 char *lp_readlist (int);
526 char *lp_writelist (int);
527 char *lp_fstype (int);
528 char *lp_mangled_map (int);
529 char *lp_veto_files (int);
530 char *lp_hide_files (int);
531 char *lp_veto_oplocks (int);
532 char *lp_driverlocation (int);
533 BOOL
lp_revalidate (int);
534 BOOL
lp_casesensitive (int);
535 BOOL
lp_preservecase (int);
536 BOOL
lp_shortpreservecase (int);
537 BOOL
lp_casemangle (int);
538 BOOL
lp_status (int);
539 BOOL
lp_hide_dot_files (int);
540 BOOL
lp_browseable (int);
541 BOOL
lp_readonly (int);
542 BOOL
lp_no_set_dir (int);
543 BOOL
lp_guest_ok (int);
544 BOOL
lp_guest_only (int);
545 BOOL
lp_print_ok (int);
546 BOOL
lp_postscript (int);
547 BOOL
lp_map_hidden (int);
548 BOOL
lp_map_archive (int);
549 BOOL
lp_locking (int);
550 BOOL
lp_strict_locking (int);
551 BOOL
lp_share_modes (int);
552 BOOL
lp_oplocks (int);
553 BOOL
lp_onlyuser (int);
554 BOOL
lp_manglednames (int);
555 BOOL
lp_widelinks (int);
556 BOOL
lp_symlinks (int);
557 BOOL
lp_syncalways (int);
558 BOOL
lp_strict_sync (int);
559 BOOL
lp_map_system (int);
560 BOOL
lp_delete_readonly (int);
561 BOOL
lp_fake_oplocks (int);
562 BOOL
lp_recursive_veto_delete (int);
563 BOOL
lp_dos_filetimes (int);
564 BOOL
lp_dos_filetime_resolution (int);
565 BOOL
lp_fake_dir_create_times (int);
566 BOOL
lp_blocking_locks (int);
567 BOOL
lp_mangle_locks (int);
568 int lp_create_mode (int);
569 int lp_force_create_mode (int);
570 int lp_dir_mode (int);
571 int lp_force_dir_mode (int);
572 int lp_max_connections (int);
573 int lp_defaultcase (int);
574 int lp_minprintspace (int);
575 int lp_printing (int);
576 int lp_oplock_contention_limit (int);
577 char lp_magicchar (int);
578 BOOL
lp_add_home (const char *pszHomename
, int iDefaultService
, const char *pszHomedir
);
579 int lp_add_service (char *pszService
, int iDefaultService
);
580 BOOL
lp_add_printer (char *pszPrintername
, int iDefaultService
);
581 BOOL
lp_file_list_changed (void);
582 void *lp_local_ptr (int snum
, void *ptr
);
583 BOOL
lp_do_parameter (int snum
, const char *pszParmName
, const char *pszParmValue
);
584 BOOL
lp_is_default (int snum
, struct parm_struct
*parm
);
585 struct parm_struct
*lp_next_parameter (int snum
, int *i
, int allparameters
);
586 BOOL
lp_snum_ok (int iService
);
587 void lp_add_one_printer (char *name
, char *comment
);
588 BOOL
lp_loaded (void);
589 void lp_killunused (BOOL (*snumused
) (int));
590 BOOL
lp_load (const char *pszFname
, BOOL global_only
, BOOL save_defaults
, BOOL add_ipc
);
591 void lp_resetnumservices (void);
592 int lp_numservices (void);
593 int lp_servicenumber (const char *pszServiceName
);
594 char *volume_label (int snum
);
595 int lp_default_server_announce (void);
596 int lp_major_announce_version (void);
597 int lp_minor_announce_version (void);
598 void lp_set_name_resolve_order (char *new_order
);
599 void lp_set_kernel_oplocks (BOOL val
);
600 BOOL
lp_kernel_oplocks (void);
602 /* The following definitions come from param/params.c */
604 BOOL
pm_process (const char *FileName
,
605 BOOL (*sfunc
) (const char *), BOOL (*pfunc
) (const char *, const char *));
606 #endif /* _PROTO_H_ */