1
0
mirror of https://github.com/samba-team/samba.git synced 2025-03-27 22:50:26 +03:00

param: Merge param headers into lib/param/loadparm.h

This defines a common table format, so we can in future define a
common table.

Andrew Bartlett
This commit is contained in:
Andrew Bartlett 2011-06-29 15:33:54 +10:00
parent ff13827537
commit 489f528857
19 changed files with 46 additions and 91 deletions

View File

@ -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

View File

@ -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

View File

@ -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);

View File

@ -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;

View File

@ -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

View File

@ -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

View File

@ -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;

View File

@ -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;

View File

@ -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());

View File

@ -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)
{

View File

@ -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

View File

@ -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;

View File

@ -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

View File

@ -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

View File

@ -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;

View File

@ -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,

View File

@ -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"
/**********************************************************************
*

View File

@ -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.

View File

@ -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;