summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/param/loadparm.h (renamed from source4/param/loadparm.h)40
-rw-r--r--source3/include/local.h29
-rw-r--r--source3/include/proto.h3
-rw-r--r--source3/include/smb.h50
-rw-r--r--source3/modules/nfs4_acls.c1
-rw-r--r--source3/modules/vfs_audit.c1
-rw-r--r--source3/modules/vfs_extd_audit.c1
-rw-r--r--source3/modules/vfs_full_audit.c1
-rw-r--r--source3/param/loadparm.c3
-rw-r--r--source3/param/service.c1
-rw-r--r--source3/printing/load.c1
-rw-r--r--source3/printing/printing.c1
-rw-r--r--source3/smbd/msdfs.c1
-rw-r--r--source3/smbd/server_reload.c1
-rw-r--r--source3/smbd/service.c1
-rw-r--r--source3/smbd/smb2_tcon.c1
-rw-r--r--source3/utils/net_conf.c1
-rw-r--r--source3/utils/testparm.c1
-rw-r--r--source3/web/swat.c1
19 files changed, 47 insertions, 92 deletions
diff --git a/source4/param/loadparm.h b/lib/param/loadparm.h
index db583436b4..2627727f3a 100644
--- a/source4/param/loadparm.h
+++ b/lib/param/loadparm.h
@@ -1,6 +1,6 @@
-/*
+/*
Unix SMB/CIFS implementation.
-
+
type definitions for loadparm
Copyright (C) Karl Auer 1993-1998
@@ -12,28 +12,30 @@
Copyright (C) Stefan (metze) Metzmacher 2002
Copyright (C) Jim McDonough (jmcd@us.ibm.com) 2003.
Copyright (C) James Myers 2003 <myersjj@samba.org>
-
+
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 3 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, see <http://www.gnu.org/licenses/>.
*/
/* the following are used by loadparm for option lists */
+/* the following are used by loadparm for option lists */
typedef enum {
- P_BOOL,P_INTEGER,P_OCTAL,P_BYTES,P_LIST,P_CMDLIST,P_STRING,P_USTRING,P_ENUM
+ P_BOOL,P_BOOLREV,P_CHAR,P_INTEGER,P_OCTAL,P_LIST,
+ P_STRING,P_USTRING,P_ENUM,P_BYTES,P_CMDLIST,P_SEP
} parm_type;
typedef enum {
- P_LOCAL,P_GLOBAL,P_NONE
+ P_LOCAL,P_GLOBAL,P_SEPARATOR,P_NONE
} parm_class;
struct enum_list {
@@ -41,6 +43,7 @@ struct enum_list {
const char *name;
};
+struct loadparm_service;
struct loadparm_context;
struct parm_struct {
@@ -61,13 +64,28 @@ struct parm_struct {
} def;
};
-#define FLAG_DEFAULT 0x0001 /* this option was a default */
-#define FLAG_CMDLINE 0x0002 /* this option was set from the command line */
-
+/* The following flags are used in SWAT */
+#define FLAG_BASIC 0x0001 /* Display only in BASIC view */
+#define FLAG_SHARE 0x0002 /* file sharing options */
+#define FLAG_PRINT 0x0004 /* printing options */
+#define FLAG_GLOBAL 0x0008 /* local options that should be globally settable in SWAT */
+#define FLAG_WIZARD 0x0010 /* Parameters that the wizard will operate on */
+#define FLAG_ADVANCED 0x0020 /* Parameters that will be visible in advanced view */
+#define FLAG_DEVELOPER 0x0040 /* No longer used */
+#define FLAG_DEPRECATED 0x1000 /* options that should no longer be used */
+#define FLAG_HIDE 0x2000 /* options that should be hidden in SWAT */
+#define FLAG_META 0x8000 /* A meta directive - not a real parameter */
+#define FLAG_CMDLINE 0x10000 /* option has been overridden */
+#define FLAG_DEFAULT 0x20000 /* this option was a default */
+
+/* This defines the section name in the configuration file that will
+ refer to the special "printers" service */
#ifndef PRINTERS_NAME
#define PRINTERS_NAME "printers"
#endif
+/* This defines the section name in the configuration file that will
+ refer to the special "homes" service */
#ifndef HOMES_NAME
#define HOMES_NAME "homes"
#endif
@@ -97,5 +115,3 @@ struct parm_struct {
#ifndef PRINT_MAX_JOBID
#define PRINT_MAX_JOBID 10000
#endif
-
-
diff --git a/source3/include/local.h b/source3/include/local.h
index 680631c1c5..594f7003ef 100644
--- a/source3/include/local.h
+++ b/source3/include/local.h
@@ -5,26 +5,6 @@
#ifndef _LOCAL_H
#define _LOCAL_H
-/* The default workgroup - usually overridden in smb.conf */
-#ifndef WORKGROUP
-#define WORKGROUP "WORKGROUP"
-#endif
-
-/* This defines the section name in the configuration file that will contain */
-/* global parameters - that is, parameters relating to the whole server, not */
-/* just services. This name is then reserved, and may not be used as a */
-/* a service name. It will default to "global" if not defined here. */
-#define GLOBAL_NAME "global"
-#define GLOBAL_NAME2 "globals"
-
-/* This defines the section name in the configuration file that will
- refer to the special "homes" service */
-#define HOMES_NAME "homes"
-
-/* This defines the section name in the configuration file that will
- refer to the special "printers" service */
-#define PRINTERS_NAME "printers"
-
/* Yves Gaige <yvesg@hptnodur.grenoble.hp.com> requested this set this */
/* to a maximum of 8 if old smb clients break because of long printer names. */
#define MAXPRINTERLEN 15
@@ -171,12 +151,6 @@
it are worked out */
#define USE_READ_PREDICTION 0
-/*
- * Default passwd chat script.
- */
-
-#define DEFAULT_PASSWD_CHAT "*new*password* %n\\n *new*password* %n\\n *changed*"
-
/* Minimum length of allowed password when changing UNIX password. */
#define MINPASSWDLENGTH 5
@@ -212,9 +186,6 @@
/* this enables the "rabbit pellet" fix for SMBwritebraw */
#define RABBIT_PELLET_FIX 1
-/* Max number of jobs per print queue. */
-#define PRINT_MAX_JOBID 10000
-
/* Max number of open RPC pipes. */
#define MAX_OPEN_PIPES 2048
diff --git a/source3/include/proto.h b/source3/include/proto.h
index 20b5c0e2a7..73bd9baf5e 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -1545,6 +1545,7 @@ const char **lp_parm_string_list(int snum, const char *type, const char *option,
int lp_parm_int(int snum, const char *type, const char *option, int def);
unsigned long lp_parm_ulong(int snum, const char *type, const char *option, unsigned long def);
bool lp_parm_bool(int snum, const char *type, const char *option, bool def);
+struct enum_list;
int lp_parm_enum(int snum, const char *type, const char *option,
const struct enum_list *_enum, int def);
char *canonicalize_servicename(TALLOC_CTX *ctx, const char *src);
@@ -1577,6 +1578,8 @@ const char *lp_ldap_machine_suffix(void);
const char *lp_ldap_user_suffix(void);
const char *lp_ldap_group_suffix(void);
const char *lp_ldap_idmap_suffix(void);
+struct loadparm_service;
+struct parm_struct;
void *lp_parm_ptr(struct loadparm_service *service, struct parm_struct *parm);
void *lp_local_ptr_by_snum(int snum, struct parm_struct *parm);
bool lp_do_parameter(int snum, const char *pszParmName, const char *pszParmValue);
diff --git a/source3/include/smb.h b/source3/include/smb.h
index 598a0e9c4a..c867d607b6 100644
--- a/source3/include/smb.h
+++ b/source3/include/smb.h
@@ -709,56 +709,6 @@ struct connections_data {
uint32 unused_compatitibility_field;
};
-
-/* the following are used by loadparm for option lists */
-typedef enum {
- P_BOOL,P_BOOLREV,P_CHAR,P_INTEGER,P_OCTAL,P_LIST,
- P_STRING,P_USTRING,P_ENUM,P_SEP
-} parm_type;
-
-typedef enum {
- P_LOCAL,P_GLOBAL,P_SEPARATOR,P_NONE
-} parm_class;
-
-struct enum_list {
- int value;
- const char *name;
-};
-
-struct loadparm_service;
-struct loadparm_context;
-
-struct parm_struct {
- const char *label;
- parm_type type;
- parm_class p_class;
- offset_t offset;
- bool (*special)(struct loadparm_context *lpcfg_ctx,
- int snum, const char *, char **);
- const struct enum_list *enum_list;
- unsigned flags;
- union {
- bool bvalue;
- int ivalue;
- char *svalue;
- char cvalue;
- char **lvalue;
- } def;
-};
-
-/* The following flags are used in SWAT */
-#define FLAG_BASIC 0x0001 /* Display only in BASIC view */
-#define FLAG_SHARE 0x0002 /* file sharing options */
-#define FLAG_PRINT 0x0004 /* printing options */
-#define FLAG_GLOBAL 0x0008 /* local options that should be globally settable in SWAT */
-#define FLAG_WIZARD 0x0010 /* Parameters that the wizard will operate on */
-#define FLAG_ADVANCED 0x0020 /* Parameters that will be visible in advanced view */
-#define FLAG_DEVELOPER 0x0040 /* No longer used */
-#define FLAG_DEPRECATED 0x1000 /* options that should no longer be used */
-#define FLAG_HIDE 0x2000 /* options that should be hidden in SWAT */
-#define FLAG_META 0x8000 /* A meta directive - not a real parameter */
-#define FLAG_CMDLINE 0x10000 /* option has been overridden */
-
struct bitmap {
uint32 *b;
unsigned int n;
diff --git a/source3/modules/nfs4_acls.c b/source3/modules/nfs4_acls.c
index dbfa36e6c2..09ef522b41 100644
--- a/source3/modules/nfs4_acls.c
+++ b/source3/modules/nfs4_acls.c
@@ -27,6 +27,7 @@
#include "system/filesys.h"
#include "passdb/lookup_sid.h"
#include "util_tdb.h"
+#include "lib/param/loadparm.h"
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_ACLS
diff --git a/source3/modules/vfs_audit.c b/source3/modules/vfs_audit.c
index 8213bafa1c..eeeea8aafa 100644
--- a/source3/modules/vfs_audit.c
+++ b/source3/modules/vfs_audit.c
@@ -25,6 +25,7 @@
#include "system/filesys.h"
#include "system/syslog.h"
#include "smbd/smbd.h"
+#include "lib/param/loadparm.h"
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_VFS
diff --git a/source3/modules/vfs_extd_audit.c b/source3/modules/vfs_extd_audit.c
index 192b0750ab..fa8e9b14f9 100644
--- a/source3/modules/vfs_extd_audit.c
+++ b/source3/modules/vfs_extd_audit.c
@@ -26,6 +26,7 @@
#include "system/filesys.h"
#include "system/syslog.h"
#include "smbd/smbd.h"
+#include "lib/param/loadparm.h"
static int vfs_extd_audit_debug_level = DBGC_VFS;
diff --git a/source3/modules/vfs_full_audit.c b/source3/modules/vfs_full_audit.c
index e8129f4143..362749a90f 100644
--- a/source3/modules/vfs_full_audit.c
+++ b/source3/modules/vfs_full_audit.c
@@ -64,6 +64,7 @@
#include "../librpc/gen_ndr/ndr_netlogon.h"
#include "auth.h"
#include "ntioctl.h"
+#include "lib/param/loadparm.h"
static int vfs_full_audit_debug_level = DBGC_VFS;
diff --git a/source3/param/loadparm.c b/source3/param/loadparm.c
index 5104f4cefd..808774d1d7 100644
--- a/source3/param/loadparm.c
+++ b/source3/param/loadparm.c
@@ -59,6 +59,7 @@
#include "printing.h"
#include "lib/smbconf/smbconf.h"
#include "lib/smbconf/smbconf_init.h"
+#include "lib/param/loadparm.h"
#include "ads.h"
#include "../librpc/gen_ndr/svcctl.h"
@@ -5147,7 +5148,7 @@ static void init_globals(bool reinit_globals)
*/
string_set(&Globals.szPasswdChat, DEFAULT_PASSWD_CHAT);
- string_set(&Globals.szWorkgroup, WORKGROUP);
+ string_set(&Globals.szWorkgroup, DEFAULT_WORKGROUP);
string_set(&Globals.szPasswdProgram, "");
string_set(&Globals.szLockDir, get_dyn_LOCKDIR());
diff --git a/source3/param/service.c b/source3/param/service.c
index 358b7af2de..f0cec4e216 100644
--- a/source3/param/service.c
+++ b/source3/param/service.c
@@ -27,6 +27,7 @@
#include "printing/pcap.h"
#include "passdb/lookup_sid.h"
#include "auth.h"
+#include "lib/param/loadparm.h"
static int load_registry_service(const char *servicename)
{
diff --git a/source3/printing/load.c b/source3/printing/load.c
index 5acc25833d..161d71103c 100644
--- a/source3/printing/load.c
+++ b/source3/printing/load.c
@@ -20,6 +20,7 @@
#include "includes.h"
#include "printing/pcap.h"
#include "printing/load.h"
+#include "lib/param/loadparm.h"
/***************************************************************************
auto-load some homes and printer services
diff --git a/source3/printing/printing.c b/source3/printing/printing.c
index 0c070c7668..c9edab686e 100644
--- a/source3/printing/printing.c
+++ b/source3/printing/printing.c
@@ -33,6 +33,7 @@
#include "auth.h"
#include "messages.h"
#include "util_tdb.h"
+#include "lib/param/loadparm.h"
extern struct current_user current_user;
extern userdom_struct current_user_info;
diff --git a/source3/smbd/msdfs.c b/source3/smbd/msdfs.c
index 47c2b1ee78..31c5a2d07a 100644
--- a/source3/smbd/msdfs.c
+++ b/source3/smbd/msdfs.c
@@ -27,6 +27,7 @@
#include "smbd/globals.h"
#include "msdfs.h"
#include "auth.h"
+#include "lib/param/loadparm.h"
/**********************************************************************
Parse a DFS pathname of the form \hostname\service\reqpath
diff --git a/source3/smbd/server_reload.c b/source3/smbd/server_reload.c
index fef66dac6a..259a963abf 100644
--- a/source3/smbd/server_reload.c
+++ b/source3/smbd/server_reload.c
@@ -29,6 +29,7 @@
#include "printing/load.h"
#include "auth.h"
#include "messages.h"
+#include "lib/param/loadparm.h"
/****************************************************************************
purge stale printers and reload from pre-populated pcap cache
diff --git a/source3/smbd/service.c b/source3/smbd/service.c
index 0857645d1c..1f87b9d785 100644
--- a/source3/smbd/service.c
+++ b/source3/smbd/service.c
@@ -27,6 +27,7 @@
#include "printing/pcap.h"
#include "passdb/lookup_sid.h"
#include "auth.h"
+#include "lib/param/loadparm.h"
extern userdom_struct current_user_info;
diff --git a/source3/smbd/smb2_tcon.c b/source3/smbd/smb2_tcon.c
index 1b4aa79070..7c2014c90c 100644
--- a/source3/smbd/smb2_tcon.c
+++ b/source3/smbd/smb2_tcon.c
@@ -24,6 +24,7 @@
#include "../libcli/smb/smb_common.h"
#include "../libcli/security/security.h"
#include "auth.h"
+#include "lib/param/loadparm.h"
static NTSTATUS smbd_smb2_tree_connect(struct smbd_smb2_request *req,
const char *in_path,
diff --git a/source3/utils/net_conf.c b/source3/utils/net_conf.c
index 9381159814..e4b335a0a5 100644
--- a/source3/utils/net_conf.c
+++ b/source3/utils/net_conf.c
@@ -33,6 +33,7 @@
#include "lib/smbconf/smbconf.h"
#include "lib/smbconf/smbconf_init.h"
#include "lib/smbconf/smbconf_reg.h"
+#include "lib/param/loadparm.h"
/**********************************************************************
*
diff --git a/source3/utils/testparm.c b/source3/utils/testparm.c
index 721034dedf..0634b25839 100644
--- a/source3/utils/testparm.c
+++ b/source3/utils/testparm.c
@@ -34,6 +34,7 @@
#include "includes.h"
#include "system/filesys.h"
#include "popt_common.h"
+#include "lib/param/loadparm.h"
/*******************************************************************
Check if a directory exists.
diff --git a/source3/web/swat.c b/source3/web/swat.c
index 190006b3cc..3c209b5b3c 100644
--- a/source3/web/swat.c
+++ b/source3/web/swat.c
@@ -35,6 +35,7 @@
#include "printing/load.h"
#include "passdb.h"
#include "intl/lang_tdb.h"
+#include "lib/param/loadparm.h"
static int demo_mode = False;
static int passwd_only = False;