Author: vlendec
Date: 2006-02-27 21:19:58 +0000 (Mon, 27 Feb 2006)
New Revision: 13727

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=13727

Log:
Fix a segfault
Modified:
   branches/SAMBA_3_0/source/passdb/pdb_interface.c
   trunk/source/passdb/pdb_interface.c


Changeset:
Modified: branches/SAMBA_3_0/source/passdb/pdb_interface.c
===================================================================
--- branches/SAMBA_3_0/source/passdb/pdb_interface.c    2006-02-27 19:55:21 UTC 
(rev 13726)
+++ branches/SAMBA_3_0/source/passdb/pdb_interface.c    2006-02-27 21:19:58 UTC 
(rev 13727)
@@ -342,10 +342,14 @@
                                        TALLOC_CTX *tmp_ctx, const char *name,
                                        uint32 acb_info, uint32 *rid)
 {
-       struct samu *sam_pass = NULL;
+       struct samu *sam_pass;
        NTSTATUS status;
        struct passwd *pwd;
 
+       if ((sam_pass = TALLOC_ZERO_P(tmp_ctx, struct samu)) == NULL) {
+               return NT_STATUS_NO_MEMORY;
+       }
+
        if ( !(pwd = Get_Pwnam_alloc(tmp_ctx, name)) ) {
                pstring add_script;
                int add_ret;

Modified: trunk/source/passdb/pdb_interface.c
===================================================================
--- trunk/source/passdb/pdb_interface.c 2006-02-27 19:55:21 UTC (rev 13726)
+++ trunk/source/passdb/pdb_interface.c 2006-02-27 21:19:58 UTC (rev 13727)
@@ -342,10 +342,14 @@
                                        TALLOC_CTX *tmp_ctx, const char *name,
                                        uint32 acb_info, uint32 *rid)
 {
-       struct samu *sam_pass = NULL;
+       struct samu *sam_pass;
        NTSTATUS status;
        struct passwd *pwd;
 
+       if ((sam_pass = TALLOC_ZERO_P(tmp_ctx, struct samu)) == NULL) {
+               return NT_STATUS_NO_MEMORY;
+       }
+
        if ( !(pwd = Get_Pwnam_alloc(tmp_ctx, name)) ) {
                pstring add_script;
                int add_ret;

Reply via email to