diff options
author | Geoff Thorpe <geoff@openssl.org> | 2004-04-21 15:09:52 +0000 |
---|---|---|
committer | Geoff Thorpe <geoff@openssl.org> | 2004-04-21 15:09:52 +0000 |
commit | 1c27ce4e7040e52ad9c8df6446cc345e16d5076e (patch) | |
tree | c889421f84776e1c0c4da4c71eaa9b59fd8f1167 | |
parent | 22083b182a9b1ad848c20945b8678eff55259be9 (diff) | |
download | openssl-new-1c27ce4e7040e52ad9c8df6446cc345e16d5076e.tar.gz |
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.
-rw-r--r-- | crypto/stack/stack.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/crypto/stack/stack.c b/crypto/stack/stack.c index 7877b15a4f..108ecb6eaf 100644 --- a/crypto/stack/stack.c +++ b/crypto/stack/stack.c @@ -189,8 +189,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) @@ -310,7 +309,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); } |