2003-03-23 02:48:02 +03:00
/*
Unix SMB / CIFS implementation .
Common popt arguments
Copyright ( C ) Jelmer Vernooij 2003
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 . , 675 Mass Ave , Cambridge , MA 0213 9 , USA .
*/
# ifndef _POPT_COMMON_H
# define _POPT_COMMON_H
2005-03-14 14:00:31 +03:00
# include <popt.h>
2003-03-23 02:48:02 +03:00
/* Common popt structures */
2003-03-24 14:25:34 +03:00
extern struct poptOption popt_common_samba [ ] ;
2003-03-24 17:15:14 +03:00
extern struct poptOption popt_common_connection [ ] ;
extern struct poptOption popt_common_version [ ] ;
2003-03-23 02:48:02 +03:00
extern struct poptOption popt_common_credentials [ ] ;
2006-05-24 08:02:14 +04:00
extern const struct poptOption popt_common_dynconfig [ ] ;
2003-03-23 02:48:02 +03:00
2003-03-24 15:18:56 +03:00
# ifndef POPT_TABLEEND
# define POPT_TABLEEND { NULL, '\0', 0, 0, 0, NULL, NULL }
# endif
2003-03-24 14:25:34 +03:00
# define POPT_COMMON_SAMBA { NULL, 0, POPT_ARG_INCLUDE_TABLE, popt_common_samba, 0, "Common samba options:", NULL },
2003-03-24 17:15:14 +03:00
# define POPT_COMMON_CONNECTION { NULL, 0, POPT_ARG_INCLUDE_TABLE, popt_common_connection, 0, "Connection options:", NULL },
# define POPT_COMMON_VERSION { NULL, 0, POPT_ARG_INCLUDE_TABLE, popt_common_version, 0, "Common samba options:", NULL },
# define POPT_COMMON_CREDENTIALS { NULL, 0, POPT_ARG_INCLUDE_TABLE, popt_common_credentials, 0, "Authentication options:", NULL },
2006-05-24 08:02:14 +04:00
# define POPT_COMMON_DYNCONFIG { NULL, 0, POPT_ARG_INCLUDE_TABLE, \
CONST_DISCARD ( poptOption * , popt_common_dynconfig ) , 0 , \
" Build-time configuration overrides: " , NULL } ,
2003-03-23 02:48:02 +03:00
struct user_auth_info {
pstring username ;
pstring password ;
BOOL got_pass ;
BOOL use_kerberos ;
2003-07-31 03:49:29 +04:00
int signing_state ;
2003-03-23 02:48:02 +03:00
} ;
2007-04-20 22:34:33 +04:00
enum smb_server_mode {
/* Daemonize and manage our own sockets */
SERVER_MODE_DAEMON ,
/* Don't daemonize or manage sockets */
SERVER_MODE_INETD ,
/* Don't daemonize, but do manage sockets */
SERVER_MODE_FOREGROUND ,
/* Run in the foreground, log to stdout, don't fork children */
SERVER_MODE_INTERACTIVE
} ;
2003-03-23 02:48:02 +03:00
extern struct user_auth_info cmdline_auth_info ;
# endif /* _POPT_COMMON_H */