s3-auth Remove pointless destructor in make_server_info
authorAndrew Bartlett <abartlet@samba.org>
Tue, 19 Jul 2011 06:05:32 +0000 (16:05 +1000)
committerAndrew Bartlett <abartlet@samba.org>
Tue, 19 Jul 2011 23:17:15 +0000 (09:17 +1000)
All the callers allocate ->info3 as a talloc child already.

As regardes the TALLOC_ZERO(), I added this originally out of parinoia
many years ago.  We do not consistantly zero session keys in memory,
and for NTLMv2 and Kerberos they are random for each sesssion, so
breaking into smbd far enough to read an old session key isn't a
particularly interesting attack, compared with (say) reading the
keytab or the password database.  (NTLM and LM session keys are fixed
derivitives of the passwords however).

Andrew Bartlett

source3/auth/server_info.c

index a53e556d283d2b11fca194e8972c7a4dc4f6ee33..dec99b669e0a29342b693ecf4975e6d9e1c2fd8f 100644 (file)
 #undef DBGC_CLASS
 #define DBGC_CLASS DBGC_AUTH
 
-/* FIXME: do we really still need this ? */
-static int server_info_dtor(struct auth_serversupplied_info *server_info)
-{
-       TALLOC_FREE(server_info->info3);
-       ZERO_STRUCTP(server_info);
-       return 0;
-}
-
 /***************************************************************************
  Make a server_info struct. Free with TALLOC_FREE().
 ***************************************************************************/
@@ -51,8 +43,6 @@ struct auth_serversupplied_info *make_server_info(TALLOC_CTX *mem_ctx)
                return NULL;
        }
 
-       talloc_set_destructor(result, server_info_dtor);
-
        /* Initialise the uid and gid values to something non-zero
           which may save us from giving away root access if there
           is a bug in allocating these fields. */