Make disabling last cipher work.
authorThijs Alkemade <me@thijsalkema.de>
Wed, 2 Jul 2014 02:32:19 +0000 (03:32 +0100)
committerDr. Stephen Henson <steve@openssl.org>
Wed, 2 Jul 2014 02:32:50 +0000 (03:32 +0100)
(cherry picked from commit 7cb472bd0d0fd9da3d42bed1acc56c3a79fc5328)

ssl/ssl_ciph.c

index 58f58e0ee96a084b413d521c441ce3abf21b99e8..00a067b7bed848b87fd3a931137d8778facc24f7 100644 (file)
@@ -926,7 +926,7 @@ static void ssl_cipher_apply_rule(unsigned long cipher_id,
                int rule, int strength_bits,
                CIPHER_ORDER **head_p, CIPHER_ORDER **tail_p)
        {
-       CIPHER_ORDER *head, *tail, *curr, *curr2, *last;
+       CIPHER_ORDER *head, *tail, *curr, *next, *last;
        const SSL_CIPHER *cp;
        int reverse = 0;
 
@@ -943,21 +943,25 @@ static void ssl_cipher_apply_rule(unsigned long cipher_id,
 
        if (reverse)
                {
-               curr = tail;
+               next = tail;
                last = head;
                }
        else
                {
-               curr = head;
+               next = head;
                last = tail;
                }
 
-       curr2 = curr;
+       curr = NULL;
        for (;;)
                {
-               if ((curr == NULL) || (curr == last)) break;
-               curr = curr2;
-               curr2 = reverse ? curr->prev : curr->next;
+               if (curr == last) break;
+
+               curr = next;
+
+               if (curr == NULL) break;
+
+               next = reverse ? curr->prev : curr->next;
 
                cp = curr->cipher;