[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[tor-commits] [tor/master] Use compression_method_get_by_name() instead of explicit checks.



commit f8218b5adaa54c61c3b79ad7f055e1a4a433daa0
Author: Alexander Færøy <ahf@xxxxxxxxxxxxxx>
Date:   Fri May 12 12:21:49 2017 +0200

    Use compression_method_get_by_name() instead of explicit checks.
    
    See: https://bugs.torproject.org/21667
---
 src/or/directory.c | 21 ++++++++-------------
 1 file changed, 8 insertions(+), 13 deletions(-)

diff --git a/src/or/directory.c b/src/or/directory.c
index 78e0fb3..bcd2eba 100644
--- a/src/or/directory.c
+++ b/src/or/directory.c
@@ -2057,20 +2057,15 @@ parse_http_response(const char *headers, int *code, time_t *date,
       if (!strcmpstart(s, "Content-Encoding: ")) {
         enc = s+18; break;
       });
-    if (!enc || !strcmp(enc, "identity")) {
+
+    if (enc == NULL)
       *compression = NO_METHOD;
-    } else if (!strcmp(enc, "deflate") || !strcmp(enc, "x-deflate")) {
-      *compression = ZLIB_METHOD;
-    } else if (!strcmp(enc, "gzip") || !strcmp(enc, "x-gzip")) {
-      *compression = GZIP_METHOD;
-    } else if (!strcmp(enc, "x-zstd")) {
-      *compression = ZSTD_METHOD;
-    } else if (!strcmp(enc, "x-tor-lzma")) {
-      *compression = LZMA_METHOD;
-    } else {
-      log_info(LD_HTTP, "Unrecognized content encoding: %s. Trying to deal.",
-               escaped(enc));
-      *compression = UNKNOWN_METHOD;
+    else {
+      *compression = compression_method_get_by_name(enc);
+
+      if (*compression == UNKNOWN_METHOD)
+        log_info(LD_HTTP, "Unrecognized content encoding: %s. Trying to deal.",
+                 escaped(enc));
     }
   }
   SMARTLIST_FOREACH(parsed_headers, char *, s, tor_free(s));



_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits