2 Unix SMB/Netbios implementation.
4 Main SMB server routines
5 Copyright (C) Andrew Tridgell 1992-1998
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2 of the License, or
10 (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program; if not, write to the Free Software
19 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
26 pstring servicesf
= CONFIGFILE
;
27 extern pstring debugf
;
28 extern BOOL append_log
;
29 extern int DEBUGLEVEL
;
31 /*****************************************************************************
32 initialise srv_auth_fns array
33 *****************************************************************************/
34 static void auth_init(rpcsrv_struct
*l
)
36 extern srv_auth_fns ntlmssp_fns
;
37 add_srv_auth_fn(l
, &ntlmssp_fns
);
40 /*************************************************************************
41 initialise an msrpc service
42 *************************************************************************/
43 static void service_init(char* service_name
)
45 DEBUG(10,("msrpc_service_init\n"));
47 add_msrpc_command_processor( pipe_name
, service_name
, api_samr_rpc
);
49 if (!pwdb_initialise(True
))
53 if (!pwdbsam_initialise())
59 /****************************************************************************
60 reload the services file
61 **************************************************************************/
62 static BOOL
reload_msrpc(BOOL test
)
68 pstrcpy(fname
,lp_configfile());
69 if (file_exist(fname
,NULL
) && !strcsequal(fname
,servicesf
)) {
70 pstrcpy(servicesf
,fname
);
77 if (test
&& !lp_file_list_changed())
82 ret
= lp_load(servicesf
,False
,False
,True
);
84 /* perhaps the config filename is now set */
95 /****************************************************************************
97 ****************************************************************************/
98 static int main_init(int argc
,char *argv
[])
100 #ifdef HAVE_SET_AUTH_PARAMETERS
101 set_auth_parameters(argc
,argv
);
105 /* needed for SecureWare on SCO */
113 setup_logging(argv
[0],False
);
114 fstrcpy(pipe_name
, "samr");
115 slprintf(debugf
, sizeof(debugf
), "%s/log.%s", LOGFILEBASE
, pipe_name
);
120 static msrpc_service_fns fn_table
=
129 msrpc_service_fns
*get_service_fns(void)