[SCM] Samba Shared Repository - branch v3-5-test updated

Karolin Seeger kseeger at samba.org
Wed Feb 17 06:46:51 MST 2010


The branch, v3-5-test has been updated
       via  0175085... cifs.upcall: allocate a talloc context for smb_krb5_unparse_name
      from  f6a7e9e... s3-docs: Document 'smbclient -C'. (cherry picked from commit f6c39cec27eea2522c62e6f1ff85efdafde351ac)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-5-test


- Log -----------------------------------------------------------------
commit 01750852c1e9983b9d59a73d412101b4e0eb81a1
Author: Jeff Layton <jlayton at redhat.com>
Date:   Tue Feb 16 09:16:42 2010 -0500

    cifs.upcall: allocate a talloc context for smb_krb5_unparse_name
    
    cifs.upcall calls smb_krb5_unparse_name with a NULL talloc context.
    Older versions of this function though will conditionally use
    SMB_REALLOC instead of TALLOC_REALLOC when a NULL context is passed
    in. To make it more consistent, just spawn a talloc context that
    we can pass into this function.
    
    Resolves:
    https://bugzilla.redhat.com/show_bug.cgi?id=565446
    https://bugzilla.samba.org/show_bug.cgi?id=6868
    
    Reported-by: Ludek Finstrle <luf at seznam.cz>
    Signed-off-by: Jeff Layton <jlayton at redhat.com>
    Signed-off-by: Günther Deschner <gd at samba.org>
    (cherry picked from commit a8cc2fa09ed43a167f62711bef363a5ac335dc78)
    
    Fix bug #6868 (make bin/cifs.upcall fails).

-----------------------------------------------------------------------

Summary of changes:
 client/cifs.upcall.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/client/cifs.upcall.c b/client/cifs.upcall.c
index bfc70d1..42632a0 100644
--- a/client/cifs.upcall.c
+++ b/client/cifs.upcall.c
@@ -56,6 +56,7 @@ get_tgt_time(const char *ccname) {
 	krb5_principal principal;
 	time_t credtime = 0;
 	char *realm = NULL;
+	TALLOC_CTX *mem_ctx;
 
 	if (krb5_init_context(&context)) {
 		syslog(LOG_DEBUG, "%s: unable to init krb5 context", __func__);
@@ -87,9 +88,10 @@ get_tgt_time(const char *ccname) {
 		goto err_ccstart;
 	}
 
+	mem_ctx = talloc_init("cifs.upcall");
 	while (!credtime && !krb5_cc_next_cred(context, ccache, &cur, &creds)) {
 		char *name;
-		if (smb_krb5_unparse_name(NULL, context, creds.server, &name)) {
+		if (smb_krb5_unparse_name(mem_ctx, context, creds.server, &name)) {
 			syslog(LOG_DEBUG, "%s: unable to unparse name", __func__);
 			goto err_endseq;
 		}
@@ -102,6 +104,7 @@ get_tgt_time(const char *ccname) {
 		TALLOC_FREE(name);
         }
 err_endseq:
+	TALLOC_FREE(mem_ctx);
         krb5_cc_end_seq_get(context, ccache, &cur);
 err_ccstart:
 	krb5_free_principal(context, principal);


-- 
Samba Shared Repository


More information about the samba-cvs mailing list