r6225: get rid of warnings from my compiler about nested externs
authorHerb Lewis <herb@samba.org>
Wed, 6 Apr 2005 16:28:04 +0000 (16:28 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 15:56:30 +0000 (10:56 -0500)
(This used to be commit efea76ac71412f8622cd233912309e91b9ea52da)

51 files changed:
source3/auth/auth_compat.c
source3/auth/auth_sam.c
source3/client/client.c
source3/client/clitar.c
source3/groupdb/mapping.c
source3/include/smb_macros.h
source3/lib/substitute.c
source3/lib/util.c
source3/lib/util_seaccess.c
source3/lib/wins_srv.c
source3/libsmb/cliconnect.c
source3/libsmb/clientgen.c
source3/libsmb/clilist.c
source3/libsmb/nmblib.c
source3/modules/vfs_fake_perms.c
source3/nmbd/nmbd.c
source3/nmbd/nmbd_subnetdb.c
source3/nmbd/nmbd_synclists.c
source3/nsswitch/winbindd_ads.c
source3/nsswitch/winbindd_cache.c
source3/nsswitch/winbindd_util.c
source3/param/loadparm.c
source3/param/params.c
source3/passdb/pdb_ldap.c
source3/printing/nt_printing.c
source3/printing/printfsp.c
source3/rpc_server/srv_lsa_nt.c
source3/rpc_server/srv_netlog_nt.c
source3/rpc_server/srv_pipe.c
source3/rpc_server/srv_samr_nt.c
source3/rpc_server/srv_spoolss_nt.c
source3/rpc_server/srv_srvsvc_nt.c
source3/smbd/dir.c
source3/smbd/error.c
source3/smbd/fake_file.c
source3/smbd/lanman.c
source3/smbd/negprot.c
source3/smbd/nttrans.c
source3/smbd/open.c
source3/smbd/oplock.c
source3/smbd/oplock_linux.c
source3/smbd/posix_acls.c
source3/smbd/process.c
source3/smbd/reply.c
source3/smbd/server.c
source3/smbd/service.c
source3/smbd/sesssetup.c
source3/smbd/trans2.c
source3/tdb/tdbbackup.c
source3/utils/net.c
source3/web/diagnose.c

index a70f1e98b7286b89dee21ddfa38ca1988fbaea0f..2ac70d7354663f32f4dab2bc9d989dabd60bcfce 100644 (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) {
index 9da59f220aa1f06e68a1af1c3078496ff4945e8b..023e441e24161cb4fdd9a18d0a2569d2e03b76d0 100644 (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;
index d739f84b386423e4a1d9c211929635d4c568b874..204e51d4cc395c14ba25cf72552d7814afece911 100644 (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;
index 919545291f19b05f39758a5cf328c771300ea6b7..b241bd0ec2a281aa79dd73614bc001559323c4ed 100644 (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;
index 244cbd8fe75e28364ce2ec56773b4a4f7cace318..d02c5120541776015f34561f653316bf272dbaa0 100644 (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;
index e19c51884ff8315b405dd87f24f4cb3dea175156..1076bd53e81e649144253b9bebca24293434d432 100644 (file)
 #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) \
index 615a8d73b0a36016381705b8a7fa99fdf026bb8a..af30e900ace87bba0e9f1b5730487f2128fb3b15 100644 (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
index b76d561ccddd91a51aea5615a4f90146d88026f5..d244e390d22df1d2188add385a7c78192c883482 100644 (file)
 
 #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:
index cb0f46e2f9d7a847c6369579f62f4d52794c932d..362504e46b87863a8d1f392c9035b0de9bd7efe9 100644 (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;
 
index b82e04e13ccea6b6ea2f2c7b6e840cc147cd7d7e..c139f427ca89c8e3c6b572e923c4429e6032300d 100644 (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;
        }
 
index 4208d6378d4d965e04e7f9800aff9c330605793e..5a9992d4e0369a4d3b70832f0f410ba6e5930b16 100644 (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;
 
index b7bc780a1a195ccd1f00fe579c9f72d329da77de..e787650c2f5388f35849348bc0874bef56d14bb5 100644 (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) */
index 0f1b9efed0e80f55c67f63cd38b1d67c53ebbac6..79c2ef66a19ac72320711bae55f96a8f6b4df2b3 100644 (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;
 
index 1c93f7b1e2bd15b36e236b4a46f926cfdabacefe..164f85be7bf13146242d9f1c1abeff504edbf61b 100644 (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;
 
index 740218dcd4192864cb1b2985b496d22c1a46b07a..4d10ea5f3378bd7a86ea874c9462137b5230b76f 100644 (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 {
index f8006a22a9edcbb6952f7752c4a0f7d5e77756d5..532b578f3c79b8937775c49a6da42394f643d8a3 100644 (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;
index ecfd92719bf8eb25267a76e9ee893a206b24960f..b53a6d7328fd037206c41032c34abe62e2e6271d 100644 (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"));
index c6bcb3e574284b862f2688530489344cf6b46657..33690133bf88de614e6aa94eb17da3f805d0d970 100644 (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;
index 88a7d3ed3b1c2186abd2b7eabf08e06afcc1a5ff..4daf4ba989085ed8ed31fad0d098711148fe01d9 100644 (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);
index 3fc62df005f27d67527185fa0342f03c83bc51ee..cc385a1dd72d56cbd0be86398a2d7be6369c8d3a 100644 (file)
 #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 ));
index 9ae24e401fdd2f1e2fddc1341370cada4527632d..b9fb49ea7f67162c0ef6c7c156690b794d07b05d 100644 (file)
 #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 */
index 8ec7efddcdc97af20fee7b878508df0af291a19a..ad952b636271672f8eb3e179328fb4ff08ee6db3 100644 (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;
index 9d21d25a240dd7ac91640355c3e70cfb2f3723c7..3b736113befc7bcf383210819ed642fcc1feb7e3 100644 (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;
 
index 6597dc0fb2337b1dac62fc88af4f358dff4676eb..090621666fb8fe147abab78d44ece60025a99208 100644 (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,
index 7faeb60efa257a174655087418acae8b45fc7799..97d01d43a53bef6729a09884435163c34feec06c 100644 (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 */
index 7c5de468701ce217b44fca62421c908adfa241d1..25f4d9bd464165b1bfb1f4be36ceddd87cc5e919 100644 (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;
 
index db1aa57ea9d22e1ce0d4ed0a33f16f653f24e1ae..58189fec786cfe1210a00d8519dbab95c2fbc9f8 100644 (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;
 
index 2bc0cf301e56c419a28d646f7eb4661e9840186a..c8ffa18c5a7475eab434424a214017a839caec36 100644 (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;
                
index ab21f60902b8dd86e42052b200f0e664017d27e5..ee6c42bd88fdf7a23ea59def0ca5cff693e54d47 100644 (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));
        }
 
index 7294a46d757a6d61e7cce7c94190756b7fea9999..24ff6f1f2c16a1b868673db68236ed859f8eb158 100644 (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;
index 2e84a7b909ae4191fbe3a04831ad1d0fa0a580f8..0f33fd7dec87c113b6167ae8069982652dca5979 100644 (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;
index a71f0f1c2940c9690d759f2b7c4c8897322635e2..d806dcdc5a40b5e8edc6c5ff6cb342ae115d7c83 100644 (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;
 
index 27ec003fb8f9d98c0c544a37aa341f71e9e9d98e..0f32dddd2d765a79c9b06db96a7892fc8cbc5be1 100644 (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;
index 6988d74f91e276e4df5f65fd7bb952c0fceffa21..090a2f6d813c93621d6822db91d61c5cfc81ebc9 100644 (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;
 
index 53aac1e0364773808863b7d2acf379ccc03ae2b2..ee510eb003f2add7a970cece65e0836a20868f9a 100644 (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;
 
index d8c5201ce679cb3d838796fe525cf405cf7b81be..f2794d29012409b4f4973bbdee5856a390eb9b25 100644 (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));
index bdb15cb3f7cb970ce2f3097c460a4f4799844a74..054afac683df8dfc083828d55e9884b286a40f23 100644 (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);
index d878df66368f907631f0b66892338bc27c2d290b..69b83fe3da492012259bd2d2241217e5dfcb318b 100644 (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);
index 5b349e2e448a221b7a9b68bd88138d0905e62cac..559994ca46c2e0fd3df110cd8ba2e3da3f63acaa 100644 (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))
index ea3ac4374497e4647b1d9b47cd16723cbe5c8967..858092407f85daef129b83d033b74db30456bebf 100644 (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;
index fe324577e11ccc4b884a155f88a0da1de1f88871..5d6bdb98832c875790fbcb76496bc26c35f60916 100644 (file)
 
 #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;
 
index 87173fca3b96bcae961c8d17780a3d6ae5822984..31135f090715c38b71abed40f3265cb82322f20d 100644 (file)
 
 #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;
 
index 3043cadfd81a9b301bfe9a0bb9b2c47ea51a5b52..1bf6f4f9d1430fa1f585d880493cf33654f9b4bf 100644 (file)
 
 #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;
index 0d1523ae3bb39a169055d767bbb1e4a4d19d2ebc..c3cb81ddfc412b8333d0147f408342386715cb85 100644 (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;
index 7f7d55c7e3a027e70c57ea34072273708441fe1f..9d910cd14adf1ff02ea9d8fdd379708f3b6d1e7b 100644 (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);
index 7bbf8d7f2a559d71d06f810e7096f5a04bfeee5a..d39d3d3836c05531e60303c3b48c64007adce54a 100644 (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;
index 60867df6535a75bd07c746e04174cff2acb90212..9fbf0b1d51ddb488102ff8f65e95ed944ab4b701 100644 (file)
 
 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;
index f8123bc11a1a0cf3ae32bd4cb5d9b7b0f17ad1f2..8d673c25bd3e02e6cf7d2db80e980296443b1d5b 100644 (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;
index 1a0e1c1588fdc4affd532ae7c699c6f1e6a35d91..f49cd339c79ff256d8c12b003a6f4a4299e2da0c 100644 (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) {
index 9c05828357c15f90d6f35ca844f502a7767afda7..ef992b10143e39186ab07231d9fd84a9e7189c96 100644 (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");
        }
index a49078606856d3af0b6a8dcad37da10b647501d1..0c9c854df786dd8c547a0999f5c3f87be171c94d 100644 (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;