2003-03-22 23:48:02 +00: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
2007-07-09 19:25:36 +00:00
the Free Software Foundation ; either version 3 of the License , or
2003-03-22 23:48:02 +00:00
( 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
2007-07-10 00:52:41 +00:00
along with this program . If not , see < http : //www.gnu.org/licenses/>.
2003-03-22 23:48:02 +00:00
*/
# ifndef _POPT_COMMON_H
# define _POPT_COMMON_H
2005-03-14 11:00:31 +00:00
# include <popt.h>
2003-03-22 23:48:02 +00:00
/* Common popt structures */
2003-03-24 11:25:34 +00:00
extern struct poptOption popt_common_samba [ ] ;
2003-03-24 14:15:14 +00:00
extern struct poptOption popt_common_connection [ ] ;
extern struct poptOption popt_common_version [ ] ;
2003-03-22 23:48:02 +00:00
extern struct poptOption popt_common_credentials [ ] ;
2006-05-24 04:02:14 +00:00
extern const struct poptOption popt_common_dynconfig [ ] ;
2003-03-22 23:48:02 +00:00
2003-03-24 12:18:56 +00:00
# ifndef POPT_TABLEEND
# define POPT_TABLEEND { NULL, '\0', 0, 0, 0, NULL, NULL }
# endif
2003-03-24 11:25:34 +00:00
# define POPT_COMMON_SAMBA { NULL, 0, POPT_ARG_INCLUDE_TABLE, popt_common_samba, 0, "Common samba options:", NULL },
2003-03-24 14:15:14 +00: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 04:02:14 +00: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-22 23:48:02 +00:00
struct user_auth_info {
pstring username ;
pstring password ;
BOOL got_pass ;
BOOL use_kerberos ;
2003-07-30 23:49:29 +00:00
int signing_state ;
2003-03-22 23:48:02 +00:00
} ;
2007-04-20 18:34:33 +00: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-22 23:48:02 +00:00
extern struct user_auth_info cmdline_auth_info ;
# endif /* _POPT_COMMON_H */