diff options
Diffstat (limited to 'source/param/loadparm.c')
-rw-r--r-- | source/param/loadparm.c | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/source/param/loadparm.c b/source/param/loadparm.c index c61ab26781f..bbeb4801d52 100644 --- a/source/param/loadparm.c +++ b/source/param/loadparm.c @@ -58,7 +58,6 @@ BOOL bLoaded = False; extern int DEBUGLEVEL; extern int ReadSize; extern pstring user_socket_options; -extern pstring smbrun_path; #ifndef GLOBAL_NAME #define GLOBAL_NAME "global" @@ -132,6 +131,8 @@ typedef struct char *szUsernameMap; char *szCharacterSet; char *szLogonScript; + char *szSmbrun; + char *szWINSserver; int max_log_size; int mangled_stack; int max_xmit; @@ -147,6 +148,8 @@ typedef struct int syslog; int os_level; int max_ttl; + BOOL bWINSsupport; + BOOL bWINSproxy; BOOL bPreferredMaster; BOOL bDomainMaster; BOOL bDomainLogons; @@ -236,6 +239,7 @@ typedef struct BOOL bSyncAlways; char magic_char; BOOL *copymap; + BOOL bDeleteReadonly; char dummy[3]; /* for alignment */ } service; @@ -307,6 +311,7 @@ static service sDefault = False, /* bSyncAlways */ '~', /* magic char */ NULL, /* copymap */ + False, /* bDeleteReadonly */ "" /* dummy */ }; @@ -365,7 +370,7 @@ struct parm_struct {"strip dot", P_BOOL, P_GLOBAL, &Globals.bStripDot, NULL}, {"password server", P_STRING, P_GLOBAL, &Globals.szPasswordServer, NULL}, {"socket options", P_GSTRING, P_GLOBAL, user_socket_options, NULL}, - {"smbrun", P_GSTRING, P_GLOBAL, smbrun_path, NULL}, + {"smbrun", P_STRING, P_GLOBAL, &Globals.szSmbrun, NULL}, {"log file", P_STRING, P_GLOBAL, &Globals.szLogFile, NULL}, {"config file", P_STRING, P_GLOBAL, &Globals.szConfigFile, NULL}, {"smb passwd file", P_STRING, P_GLOBAL, &Globals.szSMBPasswdFile, NULL}, @@ -408,6 +413,9 @@ struct parm_struct #endif /* KANJI */ {"os level", P_INTEGER, P_GLOBAL, &Globals.os_level, NULL}, {"max ttl", P_INTEGER, P_GLOBAL, &Globals.max_ttl, NULL}, + {"wins support", P_BOOL, P_GLOBAL, &Globals.bWINSsupport, NULL}, + {"wins proxy", P_BOOL, P_GLOBAL, &Globals.bWINSproxy, NULL}, + {"wins server", P_STRING, P_GLOBAL, &Globals.szWINSserver, NULL}, {"preferred master", P_BOOL, P_GLOBAL, &Globals.bPreferredMaster, NULL}, {"prefered master", P_BOOL, P_GLOBAL, &Globals.bPreferredMaster, NULL}, {"domain master", P_BOOL, P_GLOBAL, &Globals.bDomainMaster, NULL}, @@ -493,6 +501,7 @@ struct parm_struct {"magic script", P_STRING, P_LOCAL, &sDefault.szMagicScript, NULL}, {"magic output", P_STRING, P_LOCAL, &sDefault.szMagicOutput, NULL}, {"mangled map", P_STRING, P_LOCAL, &sDefault.szMangledMap, NULL}, + {"delete readonly", P_BOOL, P_LOCAL, &sDefault.bDeleteReadonly, NULL}, {NULL, P_BOOL, P_NONE, NULL, NULL} }; @@ -538,6 +547,7 @@ static void init_globals(void) string_set(&Globals.szPrintcapname, PRINTCAP_NAME); string_set(&Globals.szLockDir, LOCKDIR); string_set(&Globals.szRootdir, "/"); + string_set(&Globals.szSmbrun, SMBRUN); sprintf(s,"Samba %s",VERSION); string_set(&Globals.szServerString,s); Globals.bLoadPrinters = True; @@ -568,6 +578,8 @@ static void init_globals(void) Globals.bDomainMaster = False; Globals.bDomainLogons = False; Globals.bBrowseList = True; + Globals.bWINSsupport = True; + Globals.bWINSproxy = False; #ifdef KANJI coding_system = interpret_coding_system (KANJI, SJIS_CODE); @@ -595,6 +607,7 @@ static void init_locals(void) { case PRINT_BSD: case PRINT_AIX: + case PRINT_PLP: string_initial(&sDefault.szLpqcommand,"lpq -P%p"); string_initial(&sDefault.szLprmcommand,"lprm -P%p %j"); string_initial(&sDefault.szPrintcommand,"lpr -r -P%p %s"); @@ -670,6 +683,7 @@ char *lp_string(char *s) int fn_name(int i) {return(LP_SNUM_OK(i)? pSERVICE(i)->val : sDefault.val);} FN_GLOBAL_STRING(lp_logfile,&Globals.szLogFile) +FN_GLOBAL_STRING(lp_smbrun,&Globals.szSmbrun) FN_GLOBAL_STRING(lp_configfile,&Globals.szConfigFile) FN_GLOBAL_STRING(lp_smb_passwd_file,&Globals.szSMBPasswdFile) FN_GLOBAL_STRING(lp_serverstring,&Globals.szServerString) @@ -689,7 +703,10 @@ FN_GLOBAL_STRING(lp_domain_controller,&Globals.szDomainController) FN_GLOBAL_STRING(lp_username_map,&Globals.szUsernameMap) FN_GLOBAL_STRING(lp_character_set,&Globals.szCharacterSet) FN_GLOBAL_STRING(lp_logon_script,&Globals.szLogonScript) +FN_GLOBAL_STRING(lp_wins_server,&Globals.szWINSserver) +FN_GLOBAL_BOOL(lp_wins_support,&Globals.bWINSsupport) +FN_GLOBAL_BOOL(lp_wins_proxy,&Globals.bWINSproxy) FN_GLOBAL_BOOL(lp_domain_master,&Globals.bDomainMaster) FN_GLOBAL_BOOL(lp_domain_logons,&Globals.bDomainLogons) FN_GLOBAL_BOOL(lp_preferred_master,&Globals.bPreferredMaster) @@ -778,6 +795,7 @@ FN_LOCAL_BOOL(lp_manglednames,bMangledNames) FN_LOCAL_BOOL(lp_widelinks,bWidelinks) FN_LOCAL_BOOL(lp_syncalways,bSyncAlways) FN_LOCAL_BOOL(lp_map_system,bMap_system) +FN_LOCAL_BOOL(lp_delete_readonly,bDeleteReadonly) FN_LOCAL_INTEGER(lp_create_mode,iCreate_mode) FN_LOCAL_INTEGER(lp_max_connections,iMaxConnections) @@ -1291,6 +1309,8 @@ static BOOL handle_printing(char *pszParmValue,int *val) *val = PRINT_BSD; else if (strequal(pszParmValue,"qnx")) *val = PRINT_QNX; + else if (strequal(pszParmValue,"plp")) + *val = PRINT_PLP; return(True); } |