]> TLD Linux GIT Repositories - packages/squid.git/commitdiff
- updated to 3.5.1
authorMarcin Krol <hawk@tld-linux.org>
Thu, 29 Jan 2015 11:38:56 +0000 (11:38 +0000)
committerMarcin Krol <hawk@tld-linux.org>
Thu, 29 Jan 2015 11:38:56 +0000 (11:38 +0000)
squid.spec
squidv3-vary-headers-shm-hack.patch

index 7ba977e9092c6df253708acca93fcb4ea3daeda7..28c8c7712092ddc09290bad5db4efbe037384039 100644 (file)
@@ -16,13 +16,13 @@ Summary(ru.UTF-8):  Squid - кэш объектов Internet
 Summary(uk.UTF-8):     Squid - кеш об'єктів Internet
 Summary(zh_CN.UTF-8):  SQUID 高速缓冲代理服务器
 Name:          squid
-Version:       3.4.9
+Version:       3.5.1
 Release:       1
 Epoch:         7
 License:       GPL v2
 Group:         Networking/Daemons
-Source0:       http://www.squid-cache.org/Versions/v3/3.4/%{name}-%{version}.tar.xz
-# Source0-md5: 497e5be7b3430d12667628296760beca
+Source0:       http://www.squid-cache.org/Versions/v3/3.5/%{name}-%{version}.tar.xz
+# Source0-md5: b3c9d9726314c1136b7a4c06447db24b
 Source1:       %{name}.init
 Source2:       %{name}.sysconfig
 Source3:       http://squid-docs.sourceforge.net/latest/zip-files/book-full-html.zip
@@ -281,8 +281,8 @@ uwierzytelniać użytkowników proxy na serwerach SMB, jak Windows NT czy
 Samba.
 
 %package msnt_auth
-Summary:       MSNT domain authentication helper for Squid
-Summary(pl.UTF-8):     Obsługa uwierzytelniania w domenie MSNT dla squida
+Summary:       NT domain authentication helper for Squid
+Summary(pl.UTF-8):     Obsługa uwierzytelniania  domenie NT dla squida
 Group:         Networking/Admin
 Requires:      %{name} = %{epoch}:%{version}-%{release}
 
@@ -466,6 +466,20 @@ authenticate users on LDAP.
 Jest to moduł uwierzytelniania proxy, który pozwala na
 uwierzytelnianie użytkowników proxy poprzez LDAP.
 
+%package delayer_acl
+Summary:       Squid external ACL helper adding artificial delay to requests
+Summary(pl.UTF-8):     Wsparcie kontroli dostępu przez sztuczne opóźnianie zapytań
+Group:         Networking/Admin
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+
+%description delayer_acl
+Squid external acl helper. Causes squid to delay responding to HTTP
+requests.
+
+%description delayer_acl -l pl.UTF-8
+Jest to moduł kontroli dostępu (ACL) do proxy, który pozwala na
+opóźnianie odpowiedzi na zapytania HTTP.
+
 %package ip_acl
 Summary:       IP external ACL helper for Squid
 Summary(pl.UTF-8):     Wsparcie kontroli dostępu przez IP dla squida
@@ -825,8 +839,8 @@ fi
 
 %files
 %defattr(644,root,root,755)
-%doc CONTRIBUTORS COPYRIGHT CREDITS README ChangeLog QUICKSTART
-%doc RELEASENOTES.html SPONSORS docs/* src/mib.txt book-full.html
+%doc CONTRIBUTORS CREDITS README ChangeLog QUICKSTART
+%doc RELEASENOTES.html docs/* src/mib.txt book-full.html
 %doc src/squid.conf.default src/squid.conf.documented src/mime.conf.default
 %doc errors/TRANSLATORS
 %attr(755,root,root) %{_bindir}/purge
@@ -898,6 +912,8 @@ fi
 %lang(it) %{_datadir}/squid/errors/it-*
 %lang(ja) %{_datadir}/squid/errors/ja
 %lang(ja) %{_datadir}/squid/errors/ja-*
+%lang(ka) %{_datadir}/squid/errors/ka
+%lang(ka) %{_datadir}/squid/errors/ka-ge
 %lang(ko) %{_datadir}/squid/errors/ko
 %lang(ko) %{_datadir}/squid/errors/ko-*
 %lang(lt) %{_datadir}/squid/errors/lt
@@ -937,9 +953,16 @@ fi
 %lang(vi) %{_datadir}/squid/errors/vi
 %lang(vi) %{_datadir}/squid/errors/vi-*
 %lang(zh_CN) %{_datadir}/squid/errors/zh-cn
+%lang(zh_CN) %{_datadir}/squid/errors/zh-hans
+%lang(zh_CN) %{_datadir}/squid/errors/zh-hans-cn
+%lang(zh_CN) %{_datadir}/squid/errors/zh-hans-sg
 %lang(zh_CN) %{_datadir}/squid/errors/zh-sg
 %lang(zh_CN) %{_datadir}/squid/errors/zh-tw
 %lang(zh_TW) %{_datadir}/squid/errors/zh-hk
+%lang(zh_TW) %{_datadir}/squid/errors/zh-hant
+%lang(zh_TW) %{_datadir}/squid/errors/zh-hant-hk
+%lang(zh_TW) %{_datadir}/squid/errors/zh-hant-mo
+%lang(zh_TW) %{_datadir}/squid/errors/zh-hant-tw
 %lang(zh_TW) %{_datadir}/squid/errors/zh-mo
 
 %{systemdtmpfilesdir}/squid.conf
@@ -969,7 +992,6 @@ fi
 
 %files ldap_auth
 %defattr(644,root,root,755)
-%doc helpers/basic_auth/LDAP/README
 %attr(755,root,root) %{_libexecdir}/basic_ldap_auth
 %{_mandir}/man8/basic_ldap_auth.*
 
@@ -988,11 +1010,9 @@ fi
 
 %files msnt_auth
 %defattr(644,root,root,755)
-%doc helpers/basic_auth/MSNT/README*
-%doc helpers/basic_auth/MSNT-multi-domain/README*
-%attr(755,root,root) %{_libexecdir}/basic_msnt_auth
+%attr(755,root,root) %{_libexecdir}/basic_smb_lm_auth
 %attr(755,root,root) %{_libexecdir}/basic_msnt_multi_domain_auth
-%attr(640,root,squid) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/msntauth.conf
+%{_mandir}/man8/basic_msnt_multi_domain_auth.8*
 
 %files nis_auth
 %defattr(644,root,root,755)
@@ -1048,6 +1068,7 @@ fi
 %files pop3_auth
 %defattr(644,root,root,755)
 %{_libexecdir}/basic_pop3_auth
+%{_mandir}/man8/basic_pop3_auth.8*
 
 %files digest_edirectory_auth
 %defattr(644,root,root,755)
@@ -1057,11 +1078,16 @@ fi
 %defattr(644,root,root,755)
 %{_libexecdir}/negotiate_wrapper_auth
 
+%files delayer_acl
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libexecdir}/ext_delayer_acl
+%{_mandir}/man8/ext_delayer_acl.8*
+
 %files ip_acl
 %defattr(644,root,root,755)
 %doc helpers/external_acl/file_userip/example*
 %attr(755,root,root) %{_libexecdir}/ext_file_userip_acl
-%{_mandir}/man8/ext_file_userip_acl.*
+%{_mandir}/man8/ext_file_userip_acl.8*
 
 %files ldap_acl
 %defattr(644,root,root,755)
@@ -1121,7 +1147,6 @@ fi
 %attr(755,root,root) %{_libexecdir}/cachetrace.pl
 %attr(755,root,root) %{_libexecdir}/calc-must-ids.pl
 %attr(755,root,root) %{_libexecdir}/cert_tool
-%attr(755,root,root) %{_libexecdir}/cert_valid.pl
 %attr(755,root,root) %{_libexecdir}/check_cache.pl
 %attr(755,root,root) %{_libexecdir}/fileno-to-pathname.pl
 %attr(755,root,root) %{_libexecdir}/find-alive.pl
index f2923281328e72922e796d3c06628c5183bc709c..202b7b2fcff3f40eaf88cb356099302259945235 100644 (file)
@@ -1,42 +1,7 @@
-diff -uNrw squid-3.2.0.18/src/client_side.cc squid-3.2.0.18/src/client_side.cc
---- squid-3.2.0.18/src/client_side.cc  2012-07-18 19:36:09.982711673 +0400
-+++ squid-3.2.0.18/src/client_side.cc  2012-07-18 19:47:28.594672449 +0400
-@@ -1349,6 +1349,15 @@
- {
-     reply = rep;
-+    /* Remove our HDR_X_VARY_FOR hack if present.
-+     * Client won't get the joke anyway.
-+     */
-+    if (rep && rep->header.has(HDR_X_VARY_FOR))
-+    {
-+        debugs(11,3, HERE << "HDR_X_VARY_FOR hack detected. Cleaning it up");
-+        rep->header.delById(HDR_X_VARY_FOR);
-+    }
-+
-     if (http->request->range)
-         buildRangeHeader(rep);
- }
-diff -uNrw squid-3.2.0.18/src/http.cc squid-3.2.0.18/src/http.cc
---- squid-3.2.0.18/src/http.cc 2012-07-18 19:36:09.962712057 +0400
-+++ squid-3.2.0.18/src/http.cc 2012-07-18 19:40:02.442715425 +0400
-@@ -880,6 +880,12 @@
-         }
-         entry->mem_obj->vary_headers = xstrdup(vary);
-+        /* XXX: Currently we are losing vary_headers when
-+         * saving objects to shm, so we now add them as header
-+         * and remove on preparing client reply.
-+         */
-+        debugs(11,3,"haveParsedReplyHeaders: inserting HDR_X_VARY_FOR into the reply");
-+        rep->header.putStr(HDR_X_VARY_FOR, entry->mem_obj->vary_headers);
-     }
-     /*
-diff -uNrw squid-3.2.0.18/src/HttpHeader.cc squid-3.2.0.18/src/HttpHeader.cc
---- squid-3.2.0.18/src/HttpHeader.cc   2012-07-18 19:36:09.982711673 +0400
-+++ squid-3.2.0.18/src/HttpHeader.cc   2012-07-18 19:52:20.551796245 +0400
-@@ -147,6 +147,7 @@
+diff -urNp squid-3.5.1.orig/src/HttpHeader.cc squid-3.5.1/src/HttpHeader.cc
+--- squid-3.5.1.orig/src/HttpHeader.cc 2015-01-13 12:52:01.000000000 +0000
++++ squid-3.5.1/src/HttpHeader.cc      2015-01-28 20:41:31.478000000 +0000
+@@ -139,6 +139,7 @@ static const HttpHeaderFieldAttrs Header
      {"X-Cache", HDR_X_CACHE, ftStr},
      {"X-Cache-Lookup", HDR_X_CACHE_LOOKUP, ftStr},
      {"X-Forwarded-For", HDR_X_FORWARDED_FOR, ftStr},
@@ -44,31 +9,31 @@ diff -uNrw squid-3.2.0.18/src/HttpHeader.cc squid-3.2.0.18/src/HttpHeader.cc
      {"X-Request-URI", HDR_X_REQUEST_URI, ftStr},
      {"X-Squid-Error", HDR_X_SQUID_ERROR, ftStr},
  #if X_ACCELERATOR_VARY
-@@ -206,7 +207,8 @@
- #endif
+@@ -209,7 +210,8 @@ static http_hdr_type ListHeadersArr[] =
      HDR_SURROGATE_CAPABILITY,
      HDR_SURROGATE_CONTROL,
+     HDR_FORWARDED,
 -    HDR_X_FORWARDED_FOR
 +    HDR_X_FORWARDED_FOR,
 +    HDR_X_VARY_FOR
  };
  
  /* general-headers */
-diff -uNrw squid-3.2.0.18/src/HttpHeader.h squid-3.2.0.18/src/HttpHeader.h
---- squid-3.2.0.18/src/HttpHeader.h    2012-07-18 19:36:09.978711678 +0400
-+++ squid-3.2.0.18/src/HttpHeader.h    2012-07-18 19:36:44.754628494 +0400
-@@ -136,6 +136,7 @@
-     HDR_AUTHENTICATION_INFO,            /**< RFC 2617 */
+diff -urNp squid-3.5.1.orig/src/HttpHeader.h squid-3.5.1/src/HttpHeader.h
+--- squid-3.5.1.orig/src/HttpHeader.h  2015-01-13 12:52:01.000000000 +0000
++++ squid-3.5.1/src/HttpHeader.h       2015-01-28 20:47:36.228000000 +0000
+@@ -117,6 +117,7 @@ typedef enum {
      HDR_X_CACHE,                        /**< Squid custom header */
-     HDR_X_CACHE_LOOKUP,                       /**< Squid custom header. temporary hack that became de-facto. TODO remove */
-+    HDR_X_VARY_FOR,                       /**< Squid custom header. temporary hack */
-     HDR_X_FORWARDED_FOR,                /**< Squid custom header */
+     HDR_X_CACHE_LOOKUP,                 /**< Squid custom header. temporary hack that became de-facto. TODO remove */
+     HDR_X_FORWARDED_FOR,                /**< obsolete Squid custom header, RFC 7239 */
++    HDR_X_VARY_FOR,                     /**< Squid custom header. temporary hack */
      HDR_X_REQUEST_URI,                  /**< Squid custom header appended if ADD_X_REQUEST_URI is defined */
      HDR_X_SQUID_ERROR,                  /**< Squid custom header on generated error responses */
-diff -uNrw squid-3.2.0.18/src/MemObject.cc squid-3.2.0.18/src/MemObject.cc
---- squid-3.2.0.18/src/MemObject.cc    2012-07-18 19:36:09.986711701 +0400
-+++ squid-3.2.0.18/src/MemObject.cc    2012-07-18 19:43:45.843879163 +0400
-@@ -189,6 +189,24 @@
+ #if X_ACCELERATOR_VARY
+diff -urNp squid-3.5.1.orig/src/MemObject.cc squid-3.5.1/src/MemObject.cc
+--- squid-3.5.1.orig/src/MemObject.cc  2015-01-13 12:52:01.000000000 +0000
++++ squid-3.5.1/src/MemObject.cc       2015-01-28 20:40:12.122000000 +0000
+@@ -186,6 +186,24 @@ MemObject::getReply() const
      return _reply;
  }
  
@@ -93,10 +58,10 @@ diff -uNrw squid-3.2.0.18/src/MemObject.cc squid-3.2.0.18/src/MemObject.cc
  void
  MemObject::replaceHttpReply(HttpReply *newrep)
  {
-diff -uNrw squid-3.2.0.18/src/MemObject.h squid-3.2.0.18/src/MemObject.h
---- squid-3.2.0.18/src/MemObject.h     2012-07-18 20:06:23.151879182 +0400
-+++ squid-3.2.0.18/src/MemObject.h     2012-07-18 20:08:14.755379555 +0400
-@@ -76,6 +76,8 @@
+diff -urNp squid-3.5.1.orig/src/MemObject.h squid-3.5.1/src/MemObject.h
+--- squid-3.5.1.orig/src/MemObject.h   2015-01-13 12:52:01.000000000 +0000
++++ squid-3.5.1/src/MemObject.h        2015-01-28 20:40:12.123000000 +0000
+@@ -59,6 +59,8 @@ public:
      int64_t lowestMemReaderOffset() const;
      bool readAheadPolicyCanRead() const;
      void addClient(store_client *);
@@ -105,18 +70,52 @@ diff -uNrw squid-3.2.0.18/src/MemObject.h squid-3.2.0.18/src/MemObject.h
      /* XXX belongs in MemObject::swapout, once swaphdrsz is managed
       * better
       */
-diff -uNrw squid-3.2.0.18/src/store.cc squid-3.2.0.18/src/store.cc
---- squid-3.2.0.18/src/store.cc        2012-07-18 19:36:09.958711514 +0400
-+++ squid-3.2.0.18/src/store.cc        2012-07-18 19:55:00.518734384 +0400
-@@ -1689,6 +1689,10 @@
-         mem_obj = hidden_mem_obj;
-         hidden_mem_obj = NULL;
-         mem_obj->resetUrls(aUrl, aLogUrl);
-+        /* XXX: we're probably restoring from the cache,
-+         * so try to recover vary_headers in mem_obj
-+         */
-+        mem_obj->fillVaryHeader();
-         return;
+diff -urNp squid-3.5.1.orig/src/client_side.cc squid-3.5.1/src/client_side.cc
+--- squid-3.5.1.orig/src/client_side.cc        2015-01-13 12:52:01.000000000 +0000
++++ squid-3.5.1/src/client_side.cc     2015-01-28 20:40:12.116000000 +0000
+@@ -1384,6 +1384,15 @@ ClientSocketContext::prepareReply(HttpRe
+ {
+     reply = rep;
++    /* Remove our HDR_X_VARY_FOR hack if present.
++     * Client won't get the joke anyway.
++     */
++    if (rep && rep->header.has(HDR_X_VARY_FOR))
++    {
++        debugs(11,3, HERE << "HDR_X_VARY_FOR hack detected. Cleaning it up");
++        rep->header.delById(HDR_X_VARY_FOR);
++    }
++
+     if (http->request->range)
+         buildRangeHeader(rep);
+ }
+diff -urNp squid-3.5.1.orig/src/http.cc squid-3.5.1/src/http.cc
+--- squid-3.5.1.orig/src/http.cc       2015-01-13 12:52:01.000000000 +0000
++++ squid-3.5.1/src/http.cc    2015-01-28 20:48:48.962000000 +0000
+@@ -926,6 +926,12 @@ HttpStateData::haveParsedReplyHeaders()
+             varyFailure = true;
+         } else {
+             entry->mem_obj->vary_headers = xstrdup(vary);
++            /* XXX: Currently we are losing vary_headers when
++             * saving objects to shm, so we now add them as header
++             * and remove on preparing client reply.
++             */
++           debugs(11,3,"haveParsedReplyHeaders: inserting HDR_X_VARY_FOR into the reply");
++           rep->header.putStr(HDR_X_VARY_FOR, entry->mem_obj->vary_headers);
+         }
      }
  
-
+diff -urNp squid-3.5.1.orig/src/store.cc squid-3.5.1/src/store.cc
+--- squid-3.5.1.orig/src/store.cc      2015-01-13 12:52:01.000000000 +0000
++++ squid-3.5.1/src/store.cc   2015-01-28 20:51:00.538000000 +0000
+@@ -1707,6 +1707,10 @@ StoreEntry::createMemObject(const char *
+ {
+     makeMemObject();
+     mem_obj->setUris(aUrl, aLogUrl, aMethod);
++    /* XXX: we're probably restoring from the cache,
++     * so try to recover vary_headers in mem_obj
++     */
++    mem_obj->fillVaryHeader();
+ }
+ /* this just sets DELAY_SENDING */