1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-23 09:57:40 +03:00

r6225: get rid of warnings from my compiler about nested externs

This commit is contained in:
Herb Lewis 2005-04-06 16:28:04 +00:00 committed by Gerald (Jerry) Carter
parent c8f808b076
commit efea76ac71
51 changed files with 138 additions and 138 deletions

View File

@ -20,6 +20,9 @@
#include "includes.h"
extern struct auth_context *negprot_global_auth_context;
extern BOOL global_encrypted_passwords_negotiated;
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_AUTH
@ -68,7 +71,6 @@ static NTSTATUS pass_check_smb(const char *smb_name,
{
NTSTATUS nt_status;
extern struct auth_context *negprot_global_auth_context;
auth_serversupplied_info *server_info = NULL;
if (encrypted) {
auth_usersupplied_info *user_info = NULL;
@ -94,7 +96,6 @@ BOOL password_ok(char *smb_name, DATA_BLOB password_blob)
{
DATA_BLOB null_password = data_blob(NULL, 0);
extern BOOL global_encrypted_passwords_negotiated;
BOOL encrypted = (global_encrypted_passwords_negotiated && password_blob.length == 24);
if (encrypted) {

View File

@ -23,6 +23,8 @@
#include "includes.h"
extern struct timeval smb_last_time;
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_AUTH
@ -74,7 +76,6 @@ static NTSTATUS sam_password_ok(const struct auth_context *auth_context,
static BOOL logon_hours_ok(SAM_ACCOUNT *sampass)
{
/* In logon hours first bit is Sunday from 12AM to 1AM */
extern struct timeval smb_last_time;
const uint8 *hours;
struct tm *utctime;
uint8 bitmask, bitpos;

View File

@ -29,6 +29,9 @@
#define REGISTER 0
#endif
extern BOOL AllowDebugChange;
extern BOOL override_logfile;
extern char tar_type;
extern BOOL in_client;
static int port = 0;
pstring cur_dir = "\\";
@ -3286,13 +3289,10 @@ static int do_message_op(void)
int main(int argc,char *argv[])
{
extern BOOL AllowDebugChange;
extern BOOL override_logfile;
pstring base_directory;
int opt;
pstring query_host;
BOOL message = False;
extern char tar_type;
pstring term_code;
static const char *new_name_resolve_order = NULL;
poptContext pc;

View File

@ -63,6 +63,7 @@ typedef struct {
} stack;
#define SEPARATORS " \t\n\r"
extern time_t newer_than;
extern struct cli_state *cli;
/* These defines are for the do_setrattr routine, to indicate
@ -1621,7 +1622,6 @@ int tar_parseargs(int argc, char *argv[], const char *Optarg, int Optind)
return 0;
} else {
SMB_STRUCT_STAT stbuf;
extern time_t newer_than;
if (sys_stat(argv[Optind], &stbuf) == 0) {
newer_than = stbuf.st_mtime;

View File

@ -21,6 +21,8 @@
#include "includes.h"
extern DOM_SID global_sid_Builtin;
static TDB_CONTEXT *tdb; /* used for driver files */
#define DATABASE_VERSION_V1 1 /* native byte format. */
@ -1253,8 +1255,6 @@ NTSTATUS pdb_default_enum_aliases(struct pdb_methods *methods,
uint32 *num_aliases,
struct acct_info **info)
{
extern DOM_SID global_sid_Builtin;
GROUP_MAP *map;
int i, num_maps;
enum SID_NAME_USE type = SID_NAME_UNKNOWN;

View File

@ -76,16 +76,20 @@
#define OPEN_CONN(conn) ((conn) && (conn)->open)
#define IS_IPC(conn) ((conn) && (conn)->ipc)
#define IS_PRINT(conn) ((conn) && (conn)->printer)
/* you must add the following extern declaration to files using this macro
* extern struct current_user current_user;
*/
#define FSP_BELONGS_CONN(fsp,conn) do {\
extern struct current_user current_user;\
if (!((fsp) && (conn) && ((conn)==(fsp)->conn) && (current_user.vuid==(fsp)->vuid))) \
return(ERROR_DOS(ERRDOS,ERRbadfid));\
} while(0)
#define FNUM_OK(fsp,c) (OPEN_FSP(fsp) && (c)==(fsp)->conn && current_user.vuid==(fsp)->vuid)
/* you must add the following extern declaration to files using this macro
* extern struct current_user current_user;
*/
#define CHECK_FSP(fsp,conn) do {\
extern struct current_user current_user;\
if (!FNUM_OK(fsp,conn)) \
return(ERROR_DOS(ERRDOS,ERRbadfid)); \
else if((fsp)->fd == -1) \

View File

@ -21,6 +21,8 @@
#include "includes.h"
extern struct current_user current_user;
fstring local_machine="";
fstring remote_arch="UNKNOWN";
userdom_struct current_user_info;
@ -800,7 +802,6 @@ char *alloc_sub_conn(connection_struct *conn, const char *str)
void standard_sub_snum(int snum, char *str, size_t len)
{
extern struct current_user current_user;
static uid_t cached_uid = -1;
static fstring cached_user;
/* calling uidtoname() on every substitute would be too expensive, so

View File

@ -23,6 +23,11 @@
#include "includes.h"
extern fstring local_machine;
extern char *global_clobber_region_function;
extern unsigned int global_clobber_region_line;
extern fstring remote_arch;
/* Max allowable allococation - 256mb - 0x10000000 */
#define MAX_ALLOC_SIZE (1024*1024*256)
@ -230,7 +235,6 @@ BOOL set_netbios_aliases(const char **str_array)
BOOL init_names(void)
{
extern fstring local_machine;
char *p;
int n;
@ -1453,8 +1457,6 @@ void smb_panic2(const char *why, BOOL decrement_pid_count )
#ifdef DEVELOPER
{
extern char *global_clobber_region_function;
extern unsigned int global_clobber_region_line;
if (global_clobber_region_function) {
DEBUG(0,("smb_panic: clobber_region() last called from [%s(%u)]\n",
@ -1919,7 +1921,6 @@ void ra_lanman_string( const char *native_lanman )
void set_remote_arch(enum remote_arch_types type)
{
extern fstring remote_arch;
ra_type = type;
switch( type ) {
case RA_WFWG:

View File

@ -22,6 +22,8 @@
#include "includes.h"
extern DOM_SID global_sid_Builtin;
extern DOM_SID global_sid_World;
extern NT_USER_TOKEN anonymous_token;
/*********************************************************************************
Check an ACE against a SID. We return the remaining needed permission
@ -214,7 +216,6 @@ BOOL se_access_check(const SEC_DESC *sd, const NT_USER_TOKEN *token,
uint32 acc_desired, uint32 *acc_granted,
NTSTATUS *status)
{
extern NT_USER_TOKEN anonymous_token;
size_t i;
SEC_ACL *the_acl;
fstring sid_str;
@ -323,7 +324,6 @@ BOOL se_access_check(const SEC_DESC *sd, const NT_USER_TOKEN *token,
NTSTATUS samr_make_sam_obj_sd(TALLOC_CTX *ctx, SEC_DESC **psd, size_t *sd_size)
{
extern DOM_SID global_sid_World;
DOM_SID adm_sid;
DOM_SID act_sid;

View File

@ -22,6 +22,8 @@
#include "includes.h"
extern struct in_addr loopback_ip;
/*
This is pretty much a complete rewrite of the earlier code. The main
aim of the rewrite is to add support for having multiple wins server
@ -280,7 +282,6 @@ struct in_addr wins_srv_ip_tag(const char *tag, struct in_addr src_ip)
/* if we are a wins server then we always just talk to ourselves */
if (lp_wins_support()) {
extern struct in_addr loopback_ip;
return loopback_ip;
}

View File

@ -23,6 +23,7 @@
#include "includes.h"
extern pstring user_socket_options;
static const struct {
int prot;
@ -1200,7 +1201,6 @@ BOOL cli_session_request(struct cli_state *cli,
{
char *p;
int len = 4;
extern pstring user_socket_options;
memcpy(&(cli->calling), calling, sizeof(*calling));
memcpy(&(cli->called ), called , sizeof(*called ));
@ -1290,7 +1290,6 @@ BOOL cli_session_request(struct cli_state *cli,
BOOL cli_connect(struct cli_state *cli, const char *host, struct in_addr *ip)
{
extern pstring user_socket_options;
int name_type = 0x20;
char *p;

View File

@ -22,6 +22,8 @@
#include "includes.h"
extern int smb_read_error;
/****************************************************************************
Change the timeout (in milliseconds).
****************************************************************************/
@ -81,7 +83,6 @@ static BOOL client_receive_smb(int fd,char *buffer, unsigned int timeout)
BOOL cli_receive_smb(struct cli_state *cli)
{
extern int smb_read_error;
BOOL ret;
/* fd == -1 causes segfaults -- Tom (tom@ninja.nl) */

View File

@ -22,6 +22,8 @@
#include "includes.h"
extern file_info def_finfo;
/****************************************************************************
Interpret a long filename structure - this is mostly guesses at the moment.
The length of the structure is returned
@ -32,7 +34,6 @@
static size_t interpret_long_filename(struct cli_state *cli,
int level,char *p,file_info *finfo)
{
extern file_info def_finfo;
file_info finfo2;
int len;
char *base = p;
@ -332,7 +333,6 @@ int cli_list_new(struct cli_state *cli,const char *Mask,uint16 attribute,
static int interpret_short_filename(struct cli_state *cli, char *p,file_info *finfo)
{
extern file_info def_finfo;
*finfo = def_finfo;

View File

@ -21,6 +21,9 @@
#include "includes.h"
extern struct in_addr lastip;
extern int lastport;
int num_good_sends = 0;
int num_good_receives = 0;
@ -692,8 +695,6 @@ void free_packet(struct packet_struct *packet)
struct packet_struct *parse_packet(char *buf,int length,
enum packet_type packet_type)
{
extern struct in_addr lastip;
extern int lastport;
struct packet_struct *p;
BOOL ok=False;

View File

@ -24,6 +24,8 @@
#include "includes.h"
extern struct current_user current_user;
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_VFS
@ -33,8 +35,6 @@ static int fake_perms_stat(vfs_handle_struct *handle, connection_struct *conn, c
ret = SMB_VFS_NEXT_STAT(handle, conn, fname, sbuf);
if (ret == 0) {
extern struct current_user current_user;
if (S_ISDIR(sbuf->st_mode)) {
sbuf->st_mode = S_IFDIR | S_IRWXU;
} else {
@ -53,8 +53,6 @@ static int fake_perms_fstat(vfs_handle_struct *handle, files_struct *fsp, int fd
ret = SMB_VFS_NEXT_FSTAT(handle, fsp, fd, sbuf);
if (ret == 0) {
extern struct current_user current_user;
if (S_ISDIR(sbuf->st_mode)) {
sbuf->st_mode = S_IFDIR | S_IRWXU;
} else {

View File

@ -27,6 +27,8 @@ int ClientNMB = -1;
int ClientDGRAM = -1;
int global_nmb_port = -1;
extern BOOL rescan_listen_set;
extern struct in_addr loopback_ip;
extern BOOL global_in_nmbd;
extern BOOL override_logfile;
@ -196,8 +198,6 @@ static BOOL reload_interfaces(time_t t)
static time_t lastt;
int n;
struct subnet_record *subrec;
extern BOOL rescan_listen_set;
extern struct in_addr loopback_ip;
if (t && ((t - lastt) < NMBD_INTERFACES_RELOAD)) return False;
lastt = t;

View File

@ -25,6 +25,7 @@
#include "includes.h"
extern struct in_addr loopback_ip;
extern int ClientNMB;
extern int ClientDGRAM;
extern int global_nmb_port;
@ -211,7 +212,6 @@ BOOL create_subnets(void)
int num_interfaces = iface_count();
int i;
struct in_addr unicast_ip, ipzero;
extern struct in_addr loopback_ip;
if(num_interfaces == 0) {
DEBUG(0,("create_subnets: No local interfaces !\n"));

View File

@ -29,6 +29,8 @@
#include "includes.h"
extern fstring local_machine;
struct sync_record {
struct sync_record *next, *prev;
unstring workgroup;
@ -65,7 +67,6 @@ static void sync_child(char *name, int nm_type,
struct in_addr ip, BOOL local, BOOL servers,
char *fname)
{
extern fstring local_machine;
fstring unix_workgroup;
static struct cli_state cli;
uint32 local_type = local ? SV_TYPE_LOCAL_LIST_ONLY : 0;

View File

@ -27,6 +27,8 @@
#ifdef HAVE_ADS
extern struct winbindd_methods msrpc_methods, cache_methods;
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_WINBIND
@ -76,7 +78,6 @@ static ADS_STRUCT *ads_cached_connection(struct winbindd_domain *domain)
status = ads_connect(ads);
if (!ADS_ERR_OK(status) || !ads->config.realm) {
extern struct winbindd_methods msrpc_methods, cache_methods;
DEBUG(1,("ads_connect for domain %s failed: %s\n",
domain->name, ads_errstr(status)));
ads_destroy(&ads);

View File

@ -26,6 +26,12 @@
#include "includes.h"
#include "winbindd.h"
extern BOOL opt_nocache;
extern struct winbindd_methods msrpc_methods;
extern struct winbindd_methods ads_methods;
extern BOOL opt_dual_daemon;
extern BOOL background_process;
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_WINBIND
@ -47,8 +53,6 @@ static struct winbind_cache *wcache;
/* flush the cache */
void wcache_flush_cache(void)
{
extern BOOL opt_nocache;
if (!wcache)
return;
if (wcache->tdb) {
@ -102,11 +106,9 @@ static struct winbind_cache *get_cache(struct winbindd_domain *domain)
struct winbind_cache *ret = wcache;
if (!domain->backend) {
extern struct winbindd_methods msrpc_methods;
switch (lp_security()) {
#ifdef HAVE_ADS
case SEC_ADS: {
extern struct winbindd_methods ads_methods;
/* always obey the lp_security parameter for our domain */
if (domain->primary) {
domain->backend = &ads_methods;
@ -469,13 +471,11 @@ static struct cache_entry *wcache_fetch(struct winbind_cache *cache,
centry->sequence_number = centry_uint32(centry);
if (centry_expired(domain, kstr, centry)) {
extern BOOL opt_dual_daemon;
DEBUG(10,("wcache_fetch: entry %s expired for domain %s\n",
kstr, domain->name ));
if (opt_dual_daemon) {
extern BOOL background_process;
background_process = True;
DEBUG(10,("wcache_fetch: background processing expired entry %s for domain %s\n",
kstr, domain->name ));

View File

@ -24,6 +24,10 @@
#include "includes.h"
#include "winbindd.h"
extern DOM_SID global_sid_Builtin;
extern struct winbindd_methods cache_methods;
extern struct winbindd_methods passdb_methods;
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_WINBIND
@ -85,8 +89,6 @@ void free_domain_list(void)
static BOOL is_internal_domain(const DOM_SID *sid)
{
extern DOM_SID global_sid_Builtin;
if (sid == NULL)
return False;
@ -183,7 +185,6 @@ static struct winbindd_domain *add_trusted_domain(const char *domain_name, const
static void add_trusted_domains( struct winbindd_domain *domain )
{
extern struct winbindd_methods cache_methods;
TALLOC_CTX *mem_ctx;
NTSTATUS result;
time_t t;
@ -284,9 +285,6 @@ void rescan_trusted_domains( void )
/* Look up global info for the winbind daemon */
BOOL init_domain_list(void)
{
extern DOM_SID global_sid_Builtin;
extern struct winbindd_methods cache_methods;
extern struct winbindd_methods passdb_methods;
struct winbindd_domain *domain;
/* Free existing list */

View File

@ -58,6 +58,7 @@ BOOL bLoaded = False;
extern userdom_struct current_user_info;
extern pstring user_socket_options;
extern enum protocol_types Protocol;
#ifndef GLOBAL_NAME
#define GLOBAL_NAME "global"
@ -4359,7 +4360,6 @@ const char *lp_printcapname(void)
BOOL lp_use_sendfile(int snum)
{
extern enum protocol_types Protocol;
/* Using sendfile blows the brains out of any DOS or Win9x TCP stack... JRA. */
if (Protocol < PROTOCOL_NT1) {
return False;

View File

@ -81,6 +81,8 @@
#include "includes.h"
extern BOOL in_client;
/* -------------------------------------------------------------------------- **
* Constants...
*/
@ -523,7 +525,6 @@ static BOOL Parse( myFILE *InFile,
static myFILE *OpenConfFile( const char *FileName )
{
const char *func = "params.c:OpenConfFile() -";
extern BOOL in_client;
int lvl = in_client?1:0;
myFILE *ret;

View File

@ -45,6 +45,8 @@
#include "includes.h"
extern DOM_SID global_sid_NULL;
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_PASSDB
@ -2436,7 +2438,6 @@ static NTSTATUS ldapsam_enum_group_memberships(struct pdb_methods *methods,
LDAPMessage *entry;
NTSTATUS result = NT_STATUS_UNSUCCESSFUL;
int num_sids, num_gids;
extern DOM_SID global_sid_NULL;
if (!lp_parm_bool(-1, "ldapsam", "trusted", False))
return pdb_default_enum_group_memberships(methods, username,

View File

@ -22,6 +22,7 @@
#include "includes.h"
extern struct current_user current_user;
extern DOM_SID global_sid_World;
static TDB_CONTEXT *tdb_forms; /* used for forms files */
@ -5115,7 +5116,6 @@ BOOL print_access_check(struct current_user *user, int snum, int access_type)
BOOL result;
const char *pname;
TALLOC_CTX *mem_ctx = NULL;
extern struct current_user current_user;
SE_PRIV se_printop = SE_PRINT_OPERATOR;
/* If user is NULL then use the current_user structure */

View File

@ -21,6 +21,8 @@
#include "includes.h"
extern struct current_user current_user;
/***************************************************************************
open a print file and setup a fsp for it. This is a wrapper around
print_job_start().
@ -30,7 +32,6 @@ files_struct *print_fsp_open(connection_struct *conn, char *fname)
{
int jobid;
SMB_STRUCT_STAT sbuf;
extern struct current_user current_user;
files_struct *fsp = file_new(conn);
fstring name;

View File

@ -33,6 +33,8 @@
#define DBGC_CLASS DBGC_RPC_SRV
extern PRIVS privs[];
extern DOM_SID global_sid_World;
extern DOM_SID global_sid_Builtin;
struct lsa_info {
DOM_SID sid;
@ -314,8 +316,6 @@ static void init_reply_lookup_sids(LSA_R_LOOKUP_SIDS *r_l,
static NTSTATUS lsa_get_generic_sd(TALLOC_CTX *mem_ctx, SEC_DESC **sd, size_t *sd_size)
{
extern DOM_SID global_sid_World;
extern DOM_SID global_sid_Builtin;
DOM_SID local_adm_sid;
DOM_SID adm_sid;

View File

@ -26,6 +26,9 @@
#include "includes.h"
extern struct dcinfo last_dcinfo;
extern userdom_struct current_user_info;
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_RPC_SRV
@ -424,7 +427,6 @@ NTSTATUS _net_auth_2(pipes_struct *p, NET_Q_AUTH_2 *q_u, NET_R_AUTH_2 *r_u)
init_net_r_auth_2(r_u, &srv_cred, &srv_flgs, status);
if (NT_STATUS_IS_OK(status)) {
extern struct dcinfo last_dcinfo;
last_dcinfo = p->dc;
}
@ -575,7 +577,6 @@ NTSTATUS _net_sam_logon(pipes_struct *p, NET_Q_SAM_LOGON *q_u, NET_R_SAM_LOGON *
fstring nt_username, nt_domain, nt_workstation;
auth_usersupplied_info *user_info = NULL;
auth_serversupplied_info *server_info = NULL;
extern userdom_struct current_user_info;
SAM_ACCOUNT *sampw;
struct auth_context *auth_context = NULL;

View File

@ -40,6 +40,9 @@
#include "includes.h"
extern struct pipe_id_info pipe_names[];
extern struct current_user current_user;
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_RPC_SRV
@ -751,7 +754,6 @@ BOOL setup_fault_pdu(pipes_struct *p, NTSTATUS status)
BOOL check_bind_req(struct pipes_struct *p, RPC_IFACE* abstract,
RPC_IFACE* transfer, uint32 context_id)
{
extern struct pipe_id_info pipe_names[];
char *pipe_name = p->name;
int i=0;
fstring pname;
@ -1427,7 +1429,6 @@ struct current_user *get_current_user(struct current_user *user, pipes_struct *p
if (p->ntlmssp_auth_validated) {
memcpy(user, &p->pipe_user, sizeof(struct current_user));
} else {
extern struct current_user current_user;
memcpy(user, &current_user, sizeof(struct current_user));
}

View File

@ -39,6 +39,7 @@
SA_RIGHT_USER_CHANGE_PASSWORD | \
SA_RIGHT_USER_SET_LOC_COM )
extern DOM_SID global_sid_World;
extern DOM_SID global_sid_Builtin;
extern rid_name domain_group_rids[];
@ -80,7 +81,6 @@ static NTSTATUS make_samr_object_sd( TALLOC_CTX *ctx, SEC_DESC **psd, size_t *sd
struct generic_mapping *map,
DOM_SID *sid, uint32 sid_access )
{
extern DOM_SID global_sid_World;
DOM_SID adm_sid, act_sid, domadmin_sid;
SEC_ACE ace[5]; /* at most 5 entries */
SEC_ACCESS mask;

View File

@ -28,6 +28,8 @@
#include "includes.h"
extern userdom_struct current_user_info;
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_RPC_SRV
@ -6027,7 +6029,6 @@ static BOOL check_printer_ok(NT_PRINTER_INFO_LEVEL_2 *info, int snum)
static BOOL add_printer_hook(NT_USER_TOKEN *token, NT_PRINTER_INFO_LEVEL *printer)
{
extern userdom_struct current_user_info;
char *cmd = lp_addprinter_cmd();
char **qlines;
pstring command;

View File

@ -24,6 +24,9 @@
#include "includes.h"
extern DOM_SID global_sid_World;
extern struct generic_mapping file_generic_mapping;
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_RPC_SRV
@ -170,8 +173,6 @@ BOOL share_info_db_init(void)
static SEC_DESC *get_share_security_default( TALLOC_CTX *ctx, int snum, size_t *psize)
{
extern DOM_SID global_sid_World;
extern struct generic_mapping file_generic_mapping;
SEC_ACCESS sa;
SEC_ACE ace;
SEC_ACL *psa = NULL;
@ -293,7 +294,6 @@ static BOOL delete_share_security(int snum)
void map_generic_share_sd_bits(SEC_DESC *psd)
{
extern struct generic_mapping file_generic_mapping;
int i;
SEC_ACL *ps_dacl = NULL;

View File

@ -24,6 +24,8 @@
This module implements directory related functions for Samba.
*/
extern struct current_user current_user;
/* Make directory handle internals available. */
#define NAME_CACHE_SIZE 100
@ -785,7 +787,6 @@ BOOL get_dir_entry(connection_struct *conn,char *mask,int dirtype, pstring fname
static BOOL user_can_read_file(connection_struct *conn, char *name, SMB_STRUCT_STAT *pst)
{
extern struct current_user current_user;
SEC_DESC *psd = NULL;
size_t sd_size;
files_struct *fsp;
@ -838,7 +839,6 @@ static BOOL user_can_read_file(connection_struct *conn, char *name, SMB_STRUCT_S
static BOOL user_can_write_file(connection_struct *conn, char *name, SMB_STRUCT_STAT *pst)
{
extern struct current_user current_user;
SEC_DESC *psd = NULL;
size_t sd_size;
files_struct *fsp;

View File

@ -23,6 +23,7 @@
/* From lib/error.c */
extern struct unix_error_map unix_dos_nt_errmap[];
extern uint32 global_client_caps;
/* these can be set by some functions to override the error codes */
static int override_ERR_class;
static int override_ERR_code;
@ -114,7 +115,6 @@ int unix_error_packet(char *outbuf,int def_class,uint32 def_code, NTSTATUS def_s
int error_packet(char *outbuf, uint8 eclass, uint32 ecode, NTSTATUS ntstatus, int line, const char *file)
{
int outsize = set_message(outbuf,0,0,True);
extern uint32 global_client_caps;
BOOL force_nt_status = False;
BOOL force_dos_status = False;

View File

@ -20,6 +20,8 @@
#include "includes.h"
extern struct current_user current_user;
/****************************************************************************
Open a file with a share mode.
****************************************************************************/
@ -29,7 +31,6 @@ files_struct *open_fake_file_shared1(enum FAKE_FILE_TYPE fake_file_type, connect
int share_mode,int ofun, uint32 new_dos_attr, int oplock_request,
int *Access,int *action)
{
extern struct current_user current_user;
int flags=0;
files_struct *fsp = NULL;

View File

@ -27,6 +27,9 @@
#include "includes.h"
extern struct current_user current_user;
extern userdom_struct current_user_info;
#ifdef CHECK_TYPES
#undef CHECK_TYPES
#endif
@ -2116,7 +2119,6 @@ static BOOL api_RDosPrintJobDel(connection_struct *conn,uint16 vuid, char *param
int snum;
fstring sharename;
int errcode;
extern struct current_user current_user;
WERROR werr = WERR_OK;
if(!rap_to_pjobid(SVAL(p,0), sharename, &jobid))
@ -2183,7 +2185,6 @@ static BOOL api_WPrintQueueCtrl(connection_struct *conn,uint16 vuid, char *param
int errcode = NERR_notsupported;
int snum;
WERROR werr = WERR_OK;
extern struct current_user current_user;
/* check it's a supported varient */
if (!(strcsequal(str1,"z") && strcsequal(str2,"")))
@ -2435,7 +2436,6 @@ static BOOL api_NetWkstaGetInfo(connection_struct *conn,uint16 vuid, char *param
char *str2 = skip_string(str1,1);
char *p = skip_string(str2,1);
char *p2;
extern userdom_struct current_user_info;
int level = SVAL(p,0);
DEBUG(4,("NetWkstaGetInfo level %d\n",level));

View File

@ -20,6 +20,7 @@
#include "includes.h"
extern fstring remote_proto;
extern enum protocol_types Protocol;
extern int max_recv;
BOOL global_encrypted_passwords_negotiated = False;
@ -549,7 +550,6 @@ int reply_negprot(connection_struct *conn,
SSVAL(outbuf,smb_vwv0,choice);
if(choice != -1) {
extern fstring remote_proto;
fstrcpy(remote_proto,supported_protocols[protocol].short_name);
reload_services(True);
outsize = supported_protocols[protocol].proto_reply_fn(inbuf, outbuf);

View File

@ -21,6 +21,8 @@
#include "includes.h"
extern DOM_SID global_sid_World;
extern int max_send;
extern enum protocol_types Protocol;
extern int smb_read_error;
extern int global_oplock_break;
@ -83,7 +85,6 @@ static char *nttrans_realloc(char **ptr, size_t size)
static int send_nt_replies(char *inbuf, char *outbuf, int bufsize, NTSTATUS nt_error, char *params,
int paramsize, char *pdata, int datasize)
{
extern int max_send;
int data_to_send = datasize;
int params_to_send = paramsize;
int useable_space;
@ -2020,7 +2021,6 @@ static int call_nt_transact_rename(connection_struct *conn, char *inbuf, char *o
static size_t get_null_nt_acl(TALLOC_CTX *mem_ctx, SEC_DESC **ppsd)
{
extern DOM_SID global_sid_World;
size_t sd_size;
*ppsd = make_standard_sec_desc( mem_ctx, &global_sid_World, &global_sid_World, NULL, &sd_size);

View File

@ -21,6 +21,7 @@
#include "includes.h"
extern struct current_user current_user;
extern userdom_struct current_user_info;
extern uint16 global_oplock_port;
extern uint16 global_smbpid;
@ -172,7 +173,6 @@ Error was %s\n",
static BOOL open_file(files_struct *fsp,connection_struct *conn,
const char *fname,SMB_STRUCT_STAT *psbuf,int flags,mode_t mode, uint32 desired_access)
{
extern struct current_user current_user;
int accmode = (flags & O_ACCMODE);
int local_flags = flags;
@ -1606,7 +1606,6 @@ int close_file_fchmod(files_struct *fsp)
files_struct *open_directory(connection_struct *conn, const char *fname, SMB_STRUCT_STAT *psbuf,
uint32 desired_access, int share_mode, int smb_ofun, int *action)
{
extern struct current_user current_user;
BOOL got_stat = False;
files_struct *fsp = file_new(conn);
BOOL delete_on_close = GET_DELETE_ON_CLOSE_FLAG(share_mode);
@ -1744,7 +1743,6 @@ files_struct *open_directory(connection_struct *conn, const char *fname, SMB_STR
files_struct *open_file_stat(connection_struct *conn, char *fname, SMB_STRUCT_STAT *psbuf)
{
extern struct current_user current_user;
files_struct *fsp = NULL;
if (!VALID_STAT(*psbuf))

View File

@ -31,6 +31,9 @@ static int32 level_II_oplocks_open = 0;
BOOL global_client_failed_oplock_break = False;
BOOL global_oplock_break = False;
extern struct timeval smb_last_time;
extern uint32 global_client_caps;
extern struct current_user current_user;
extern int smb_read_error;
static struct kernel_oplocks *koplocks;
@ -518,8 +521,6 @@ static void prepare_break_message(char *outbuf, files_struct *fsp, BOOL level2)
static void wait_before_sending_break(BOOL local_request)
{
extern struct timeval smb_last_time;
if(local_request) {
struct timeval cur_tv;
long wait_left = (long)lp_oplock_break_wait_time();
@ -603,7 +604,6 @@ static files_struct *initial_break_processing(SMB_DEV_T dev, SMB_INO_T inode, un
static BOOL oplock_break_level2(files_struct *fsp, BOOL local_request)
{
extern uint32 global_client_caps;
char outbuf[128];
SMB_DEV_T dev = fsp->dev;
SMB_INO_T inode = fsp->inode;
@ -676,8 +676,6 @@ static BOOL oplock_break_level2(files_struct *fsp, BOOL local_request)
static BOOL oplock_break(SMB_DEV_T dev, SMB_INO_T inode, unsigned long file_id, BOOL local_request)
{
extern uint32 global_client_caps;
extern struct current_user current_user;
char *inbuf = NULL;
char *outbuf = NULL;
files_struct *fsp = NULL;

View File

@ -22,6 +22,22 @@
#if HAVE_KERNEL_OPLOCKS_LINUX
/* these can be removed when they are in glibc headers */
struct cap_user_header {
uint32 version;
int pid;
} header;
struct cap_user_data {
uint32 effective;
uint32 permitted;
uint32 inheritable;
} data;
extern int capget(struct cap_user_header * hdrp,
struct cap_user_data * datap);
extern int capset(struct cap_user_header * hdrp,
const struct cap_user_data * datap);
static SIG_ATOMIC_T signals_received;
#define FD_PENDING_SIZE 100
static SIG_ATOMIC_T fd_pending_array[FD_PENDING_SIZE];
@ -68,22 +84,6 @@ static void set_capability(unsigned capability)
#ifndef _LINUX_CAPABILITY_VERSION
#define _LINUX_CAPABILITY_VERSION 0x19980330
#endif
/* these can be removed when they are in glibc headers */
struct cap_user_header {
uint32 version;
int pid;
} header;
struct cap_user_data {
uint32 effective;
uint32 permitted;
uint32 inheritable;
} data;
extern int capget(struct cap_user_header * hdrp,
struct cap_user_data * datap);
extern int capset(struct cap_user_header * hdrp,
const struct cap_user_data * datap);
header.version = _LINUX_CAPABILITY_VERSION;
header.pid = 0;

View File

@ -21,6 +21,14 @@
#include "includes.h"
extern struct current_user current_user;
extern DOM_SID global_sid_Creator_Owner;
extern DOM_SID global_sid_Creator_Group;
extern DOM_SID global_sid_World;
extern DOM_SID global_sid_Builtin_Administrators;
extern DOM_SID global_sid_Builtin_Users;
extern struct generic_mapping file_generic_mapping;
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_ACLS
@ -916,7 +924,6 @@ static BOOL unpack_nt_owners(int snum, SMB_STRUCT_STAT *psbuf, uid_t *puser, gid
if (lp_force_unknown_acl_user(snum)) {
/* this allows take ownership to work
* reasonably */
extern struct current_user current_user;
*puser = current_user.uid;
} else {
DEBUG(3,("unpack_nt_owners: unable to validate"
@ -938,7 +945,6 @@ static BOOL unpack_nt_owners(int snum, SMB_STRUCT_STAT *psbuf, uid_t *puser, gid
if (lp_force_unknown_acl_user(snum)) {
/* this allows take group ownership to work
* reasonably */
extern struct current_user current_user;
*pgrp = current_user.gid;
} else {
DEBUG(3,("unpack_nt_owners: unable to validate"
@ -1003,10 +1009,8 @@ static void apply_default_perms(files_struct *fsp, canon_ace *pace, mode_t type)
static BOOL uid_entry_in_group( canon_ace *uid_ace, canon_ace *group_ace )
{
extern DOM_SID global_sid_World;
fstring u_name;
fstring g_name;
extern struct current_user current_user;
/* "Everyone" always matches every uid. */
@ -1046,7 +1050,6 @@ static BOOL ensure_canon_entry_valid(canon_ace **pp_ace,
SMB_STRUCT_STAT *pst,
BOOL setting_acl)
{
extern DOM_SID global_sid_World;
canon_ace *pace;
BOOL got_user = False;
BOOL got_grp = False;
@ -1220,10 +1223,6 @@ static BOOL create_canon_ace_lists(files_struct *fsp, SMB_STRUCT_STAT *pst,
canon_ace **ppfile_ace, canon_ace **ppdir_ace,
SEC_ACL *dacl)
{
extern DOM_SID global_sid_Creator_Owner;
extern DOM_SID global_sid_Creator_Group;
extern DOM_SID global_sid_World;
extern struct generic_mapping file_generic_mapping;
BOOL all_aces_are_inherit_only = (fsp->is_directory ? True : False);
canon_ace *file_ace = NULL;
canon_ace *dir_ace = NULL;
@ -1647,7 +1646,6 @@ Deny entry after Allow entry. Failing to set on file %s.\n", fsp->fsp_name ));
static void process_deny_list( canon_ace **pp_ace_list )
{
extern DOM_SID global_sid_World;
canon_ace *ace_list = *pp_ace_list;
canon_ace *curr_ace = NULL;
canon_ace *curr_ace_next = NULL;
@ -2067,7 +2065,6 @@ static void arrange_posix_perms( char *filename, canon_ace **pp_list_head)
static canon_ace *canonicalise_acl( files_struct *fsp, SMB_ACL_T posix_acl, SMB_STRUCT_STAT *psbuf,
DOM_SID *powner, DOM_SID *pgroup, struct pai_val *pal, SMB_ACL_TYPE_T the_acl_type)
{
extern DOM_SID global_sid_World;
connection_struct *conn = fsp->conn;
mode_t acl_mask = (S_IRUSR|S_IWUSR|S_IXUSR);
canon_ace *list_head = NULL;
@ -2629,10 +2626,6 @@ static size_t merge_default_aces( SEC_ACE *nt_ace_list, size_t num_aces)
size_t get_nt_acl(files_struct *fsp, uint32 security_info, SEC_DESC **ppdesc)
{
extern DOM_SID global_sid_Builtin_Administrators;
extern DOM_SID global_sid_Builtin_Users;
extern DOM_SID global_sid_Creator_Owner;
extern DOM_SID global_sid_Creator_Group;
connection_struct *conn = fsp->conn;
SMB_STRUCT_STAT sbuf;
SEC_ACE *nt_ace_list = NULL;
@ -2920,7 +2913,6 @@ size_t get_nt_acl(files_struct *fsp, uint32 security_info, SEC_DESC **ppdesc)
static int try_chown(connection_struct *conn, const char *fname, uid_t uid, gid_t gid)
{
int ret;
extern struct current_user current_user;
files_struct *fsp;
SMB_STRUCT_STAT st;
@ -2976,7 +2968,6 @@ BOOL set_nt_acl(files_struct *fsp, uint32 security_info_sent, SEC_DESC *psd)
uid_t orig_uid;
gid_t orig_gid;
BOOL need_chown = False;
extern struct current_user current_user;
DEBUG(10,("set_nt_acl: called for file %s\n", fsp->fsp_name ));
@ -3760,7 +3751,6 @@ BOOL set_unix_posix_acl(connection_struct *conn, files_struct *fsp, const char *
static int check_posix_acl_group_write(connection_struct *conn, const char *fname, SMB_STRUCT_STAT *psbuf)
{
extern struct current_user current_user;
SMB_ACL_T posix_acl = NULL;
int entry_id = SMB_ACL_FIRST_ENTRY;
SMB_ACL_ENTRY_T entry;
@ -3922,7 +3912,6 @@ failed to match on user or group in token.\n", fname ));
BOOL can_delete_file_in_directory(connection_struct *conn, const char *fname)
{
extern struct current_user current_user;
SMB_STRUCT_STAT sbuf;
pstring dname;
int ret;
@ -3980,7 +3969,6 @@ BOOL can_delete_file_in_directory(connection_struct *conn, const char *fname)
BOOL can_write_to_file(connection_struct *conn, const char *fname)
{
extern struct current_user current_user;
SMB_STRUCT_STAT sbuf;
int ret;

View File

@ -20,6 +20,11 @@
#include "includes.h"
extern uint16 global_smbpid;
extern int keepalive;
extern struct auth_context *negprot_global_auth_context;
extern int smb_echo_count;
struct timeval smb_last_time;
static char *InBuffer = NULL;
@ -852,7 +857,6 @@ static int switch_message(int type,char *inbuf,char *outbuf,int size,int bufsize
{
static pid_t pid= (pid_t)-1;
int outsize = 0;
extern uint16 global_smbpid;
type &= 0xff;
@ -1331,7 +1335,6 @@ static BOOL timeout_processing(int deadtime, int *select_timeout, time_t *last_t
static time_t last_idle_closed_check = 0;
time_t t;
BOOL allidle = True;
extern int keepalive;
if (smb_read_error == READ_EOF) {
DEBUG(3,("timeout_processing: End of file from client (client has disconnected).\n"));
@ -1375,7 +1378,6 @@ static BOOL timeout_processing(int deadtime, int *select_timeout, time_t *last_t
}
if (keepalive && (t - last_keepalive_sent_time)>keepalive) {
extern struct auth_context *negprot_global_auth_context;
if (!send_keepalive(smbd_server_fd())) {
DEBUG( 2, ( "Keepalive failed - exiting.\n" ) );
return False;
@ -1493,7 +1495,6 @@ machine %s in domain %s.\n", global_myname(), lp_workgroup()));
void smbd_process(void)
{
extern int smb_echo_count;
time_t last_timeout_processing_time = time(NULL);
unsigned int num_smbs = 0;
const size_t total_buffer_size = BUFFER_SIZE + LARGE_WRITEX_HDR_SIZE + SAFETY_MARGIN;

View File

@ -35,6 +35,7 @@ extern int global_oplock_break;
unsigned int smb_echo_count = 0;
extern uint32 global_client_caps;
extern struct current_user current_user;
extern BOOL global_encrypted_passwords_negotiated;
/****************************************************************************
@ -471,7 +472,6 @@ int reply_tcon_and_X(connection_struct *conn, char *inbuf,char *outbuf,int lengt
int passlen = SVAL(inbuf,smb_vwv3);
pstring path;
char *p, *q;
extern BOOL global_encrypted_passwords_negotiated;
START_PROFILE(SMBtconX);
@ -2010,7 +2010,6 @@ void send_file_readbraw(connection_struct *conn, files_struct *fsp, SMB_OFF_T st
int reply_readbraw(connection_struct *conn, char *inbuf, char *outbuf, int dum_size, int out_buffsize)
{
extern struct current_user current_user;
ssize_t maxcount,mincount;
size_t nread = 0;
SMB_OFF_T startpos;
@ -2980,7 +2979,6 @@ int reply_exit(connection_struct *conn,
int reply_close(connection_struct *conn, char *inbuf,char *outbuf, int size,
int dum_buffsize)
{
extern struct current_user current_user;
int outsize = 0;
time_t mtime;
int32 eclass = 0, err = 0;

View File

@ -30,6 +30,8 @@ int last_message = -1;
/* a useful macro to debug the last message processed */
#define LAST_MESSAGE() smb_fn_name(last_message)
extern char *last_inbuf;
extern struct auth_context *negprot_global_auth_context;
extern pstring user_socket_options;
extern SIG_ATOMIC_T got_sig_term;
extern SIG_ATOMIC_T reload_after_sighup;
@ -598,8 +600,6 @@ static BOOL dump_core(void)
void exit_server(const char *reason)
{
static int firsttime=1;
extern char *last_inbuf;
extern struct auth_context *negprot_global_auth_context;
if (!firsttime)
exit(0);

View File

@ -20,6 +20,7 @@
#include "includes.h"
extern char magic_char;
extern struct timeval smb_last_time;
extern userdom_struct current_user_info;
@ -30,7 +31,6 @@ extern userdom_struct current_user_info;
BOOL set_current_service(connection_struct *conn, uint16 flags, BOOL do_chdir)
{
extern char magic_char;
static connection_struct *last_conn;
static uint16 last_flags;
int snum;

View File

@ -25,6 +25,12 @@
uint32 global_client_caps = 0;
extern BOOL global_encrypted_passwords_negotiated;
extern BOOL global_spnego_negotiated;
extern enum protocol_types Protocol;
extern int max_send;
extern struct auth_context *negprot_global_auth_context;
static struct auth_ntlmssp_state *global_ntlmssp_state;
/*
@ -637,13 +643,8 @@ int reply_sesssetup_and_X(connection_struct *conn, char *inbuf,char *outbuf,
fstring native_lanman;
fstring primary_domain;
static BOOL done_sesssetup = False;
extern BOOL global_encrypted_passwords_negotiated;
extern BOOL global_spnego_negotiated;
extern enum protocol_types Protocol;
extern int max_send;
auth_usersupplied_info *user_info = NULL;
extern struct auth_context *negprot_global_auth_context;
auth_serversupplied_info *server_info = NULL;
NTSTATUS nt_status;

View File

@ -23,6 +23,7 @@
#include "includes.h"
extern int max_send;
extern enum protocol_types Protocol;
extern int smb_read_error;
extern int global_oplock_break;
@ -574,7 +575,6 @@ static int send_trans2_replies(char *outbuf,
global struct. These different max_xmit variables should
be merged as this is now too confusing */
extern int max_send;
int data_to_send = datasize;
int params_to_send = paramsize;
int useable_space;

View File

@ -69,6 +69,9 @@
#include "tdb.h"
#include "tdbback.h"
extern int optind;
extern char *optarg;
/*
see if one file is newer than another
*/
@ -100,8 +103,6 @@ static void usage(void)
int c;
int verify = 0;
const char *suffix = ".bak";
extern int optind;
extern char *optarg;
while ((c = getopt(argc, argv, "vhs:")) != -1) {
switch (c) {

View File

@ -87,6 +87,7 @@ const char *opt_destination = NULL;
BOOL opt_have_ip = False;
struct in_addr opt_dest_ip;
extern struct in_addr loopback_ip;
extern BOOL AllowDebugChange;
uint32 get_sec_channel_type(const char *param)
@ -321,7 +322,6 @@ BOOL net_find_server(unsigned flags, struct in_addr *server_ip, char **server_na
}
*server_name = SMB_STRDUP(inet_ntoa(opt_dest_ip));
} else if (!(flags & NET_FLAGS_LOCALHOST_DEFAULT_INSANE)) {
extern struct in_addr loopback_ip;
*server_ip = loopback_ip;
*server_name = SMB_STRDUP("127.0.0.1");
}

View File

@ -23,6 +23,8 @@
#ifdef WITH_WINBIND
extern struct in_addr loopback_ip;
NSS_STATUS winbindd_request(int req_type,
struct winbindd_request *request,
struct winbindd_response *response);
@ -39,7 +41,6 @@ BOOL winbindd_running(void)
response */
BOOL nmbd_running(void)
{
extern struct in_addr loopback_ip;
int fd, count, flags;
struct in_addr *ip_list;
@ -64,7 +65,6 @@ BOOL nmbd_running(void)
BOOL smbd_running(void)
{
static struct cli_state cli;
extern struct in_addr loopback_ip;
if (!cli_initialise(&cli))
return False;