]> git.kaiwu.me - nginx.git/commitdiff
SSL: fixed compression workaround to remove all methods.
authorMaxim Dounin <mdounin@mdounin.ru>
Thu, 27 Sep 2012 17:59:59 +0000 (17:59 +0000)
committerMaxim Dounin <mdounin@mdounin.ru>
Thu, 27 Sep 2012 17:59:59 +0000 (17:59 +0000)
Previous code used sk_SSL_COMP_delete(ssl_comp_methods, i) while iterating
stack from 0 to n, resulting in removal of only even compression methods.

In real life this change is a nop, as there is only one compression method
which is enabled by default in OpenSSL.

src/event/ngx_event_openssl.c

index 4356a05ef663e5decf6b86f914d7b4c2882f195f..93d3f651be0970e72a8b12d96eba4424dad6cb99 100644 (file)
@@ -100,14 +100,14 @@ ngx_ssl_init(ngx_log_t *log)
      * Disable gzip compression in OpenSSL prior to 1.0.0 version,
      * this saves about 522K per connection.
      */
-    int                 i, n;
+    int                  n;
     STACK_OF(SSL_COMP)  *ssl_comp_methods;
 
     ssl_comp_methods = SSL_COMP_get_compression_methods();
     n = sk_SSL_COMP_num(ssl_comp_methods);
 
-    for (i = 0; i < n; i++) {
-        (void) sk_SSL_COMP_delete(ssl_comp_methods, i);
+    while (n--) {
+        (void) sk_SSL_COMP_pop(ssl_comp_methods);
     }
     }
 #endif