From 4733e2da04155486fdb872409b3107f4233e0215 Mon Sep 17 00:00:00 2001 From: "jpierre%netscape.com" Date: Tue, 6 Apr 2004 21:04:44 +0000 Subject: [PATCH] Fix for bugtraq 4877287 git-svn-id: svn://10.0.0.236/branches/SUN_SECURITY_3_3_BRANCH@154544 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/security/nss/lib/certdb/genname.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/mozilla/security/nss/lib/certdb/genname.c b/mozilla/security/nss/lib/certdb/genname.c index 9ee7126a308..a4eb971a8fc 100644 --- a/mozilla/security/nss/lib/certdb/genname.c +++ b/mozilla/security/nss/lib/certdb/genname.c @@ -373,6 +373,10 @@ cert_DecodeGeneralName(PRArenaPool *arena, if (genName == NULL) { genName = (CERTGeneralName *) PORT_ArenaZAlloc(arena, sizeof(CERTGeneralName)); } + if (!genName) { + return NULL; + } + genName->l.prev = genName->l.next = &genName->l; genNameType = (CERTGeneralNameType)((*(encodedName->data) & 0x0f) + 1); switch (genNameType) { case certURI: @@ -415,8 +419,6 @@ cert_DecodeGeneralName(PRArenaPool *arena, goto loser; } genName->type = genNameType; - genName->l.next = (PRCList *) ((char *) genName) + offsetof(CERTGeneralName, l); - genName->l.prev = genName->l.next; return genName; loser: return NULL;