From: Geoff Thorpe <geoff@openssl.org>
Date: Wed, 21 Apr 2004 15:08:56 +0000 (+0000)
Subject: Extend the index parameter checking from sk_value to sk_set(). Also tidy up
X-Git-Tag: BEN_FIPS_TEST_6~14^2~285
X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=8c521c7a34eb8852ef2e7ae174342896fa362378;p=oweals%2Fopenssl.git

Extend the index parameter checking from sk_value to sk_set(). Also tidy up
some similar code elsewhere.

Thanks to Francesco Petruzzi for bringing this to my attention.
---

diff --git a/crypto/stack/stack.c b/crypto/stack/stack.c
index 821b6caca5..9cc0a82962 100644
--- a/crypto/stack/stack.c
+++ b/crypto/stack/stack.c
@@ -192,8 +192,7 @@ char *sk_delete(STACK *st, int loc)
 	char *ret;
 	int i,j;
 
-	if ((st == NULL) || (st->num == 0) || (loc < 0)
-					 || (loc >= st->num)) return(NULL);
+	if(!st || (loc < 0) || (loc >= st->num)) return NULL;
 
 	ret=st->data[loc];
 	if (loc != st->num-1)
@@ -313,7 +312,7 @@ char *sk_value(const STACK *st, int i)
 
 char *sk_set(STACK *st, int i, char *value)
 {
-	if(st == NULL) return NULL;
+	if(!st || (i < 0) || (i >= st->num)) return NULL;
 	return (st->data[i] = value);
 }