diff -ruN squid-2.5.STABLE7/ChangeLog squid-2.5.STABLE8/ChangeLog --- squid-2.5.STABLE7/ChangeLog Mon Oct 11 14:11:48 2004 +++ squid-2.5.STABLE8/ChangeLog Fri Feb 11 04:25:14 2005 @@ -1,3 +1,55 @@ +Changes to squid-2.5.STABLE8 (11 Feb 2005) + + - [Minor] 100% CPU usage on half-closed PUT/POST requests (Bug #354, + #1096) + - [Cosmetic] Document -v (protocol version) option to LDAP helpers + - [Minor] The new req_header and resp_header acls segfaults + immediately on parse of squid.conf (Bug #961) + - [Minor] Failure to shut down busy helpers on -k rotate/reconfigure + (Bug #1118) + - [Minor] Don't use O_NONBLOCK on disk files. (Bug #1102) + - [Minor] Squid fails to close TCP connection after blank HTTP + response (Bug #1116) + - [Minor security] Random error messages in response to malformed + host name (Bug #1143) + - [Minor] PURGE should not be able to delete internal objects + (Bug #1112) + - [Minor] httpd_accel_port 0 (virtual) not working correctly (Bug + #1121) + - [Minor] cachemgr vm_objects segfault (Bug #1149) + - [Minor security] Confusing results on empty acl declarations (Bug + #1166) + - [Minor] Don't close all "other" filedescriptors on startup (Bug + #1177) + - [Minor] fakeauth_auth memory leak and NULL pointer access (Bug + #1183) + - [Security] buffer overflow bug in gopherToHTML() (Bug #1189) + - [Medium security] Denial of service with forged WCCP messages + (Bug #1190) + - [Minor] DNS related memory leak on certain malformed DNS responses + (Bug #1197) + - [Minor] Internal DNS sometimes truncates host names in reverse + (PTR) lookups (Bug #1136) + - [Minor Security] Add sanity checks on LDAP user names (Bug #1187) + - [Security] Harden Squid agains HTTP request smuggling attacks + - [Minor] Icon URLs fails in non-anonymous FTP directory listings is + short_icon_urls is on (Bug #1203) + - [Security] Harden Squid agains HTTP response splitting attacks + (Bug #1200) + - [Medium security] Buffer overflow in WCCP recvfrom() call + (Bug #1217) + - [Security] Properly handle oversized reply headers (Bug #1216) + - [Minor] LDAP helpers search fixed to properly ask for no attributes + - [Minor] A sporadic segmentation fault when using ntlm authentication + fixed (Bug #1127) + - [Major] Segmentation fault on failed PUT/POST requests (Bug #1224) + - [Medium] Persistent connection mismatch on failed PUT/POST request + (Bug #1122) + - [Minor] WCCP easily disturbed by forged packets (Bug #1225) + - [Minor] Password management in ftp:// gatewaying improved (Bug #1226) + - [Major] HTTP reply data corruption in certain situations involving + reply headers split over multiple packets (Bug #1233) + Changes to squid-2.5.STABLE7 (11 Oct 2004) - [Medium] No objects cached in ufs cache_dir type in some @@ -9,13 +61,13 @@ (Bug #852) - [Cosmetic] request_header_max_size configuration partly ignored (Bug #899) - - [Minor] Partial hit results in TCP_HIT, not TCP_MISS. (Bug #1001) - - Bug #1012: [Cosmetic] HEAD requests may return stale information - (Bug #1012) - - [Cosmetic] Warn if cache_dir ufs can not create files. (Bug #918) + - [Minor] Partial hit results in TCP_HIT, not TCP_MISS. (Bug #1001) + - [Cosmetic] HEAD requests may return stale information + (Bug #1012) + - [Cosmetic] Warn if cache_dir ufs can not create files. (Bug #918) - [Minor] case insensitive authentication (Bug #431) - [Cosmetic] Add delay pools information to active_requests. (Bug - #882) + #882) - [Minor] Apparent memory leak in client_db (Bug #833) - [Minor] NTLM authentication truncated causing failures. (Bug #1016) diff -ruN squid-2.5.STABLE7/RELEASENOTES.html squid-2.5.STABLE8/RELEASENOTES.html --- squid-2.5.STABLE7/RELEASENOTES.html Mon Oct 11 14:27:12 2004 +++ squid-2.5.STABLE8/RELEASENOTES.html Fri Feb 11 04:30:25 2005 @@ -1,13 +1,13 @@ - + Squid 2.5 release notes

Squid 2.5 release notes

-

Squid Developers

$Id: release-2.5.html,v 1.1.2.39 2004/10/11 20:13:43 hno Exp $ +

Squid Developers

$Id: release-2.5.html,v 1.1.2.41 2005/02/04 14:39:49 hno Exp $
This document contains the release notes for version 2.5 of Squid. Squid is a WWW Cache application developed by the National Laboratory @@ -130,10 +130,14 @@
reference_age

This has been removed - starting with Squid-2.4 this directive have had no effect and has now been fully removed to avoid confusion.

siteselect_timeout

This has been removed - it is not referenced anywhere in the source code.

minimum_retry_timeout

This has been removed - it is not referenced anywhere in the source code.

-
short_icon_urls

New directive to enable an alternative way of referring to icons in FTP directory listings etc.

-
acl urllogin

New acl type to match the login component of Internet style URLs (protocol://user:password@host/path/to/file)

-
balance_on_multiple_ip

New directive to make it possible to disable the automatic round-robin load balancing on multiple IP addresses normally done by Squid.

-
reply_header_max_size

New directive limiting the size of HTTP reply headers, similar to request_header_max_size but in the reply direction (from servers to clients). Default is 20KB.

+
forward_timeout

New directive in 2.5.STABLE5 complement connect_timeout in +management of timeouts while connecting to origin servers or peers

+
short_icon_urls

New directive in 2.5.STABLE5 to enable an alternative way of referring to icons in FTP directory listings etc.

+
acl urllogin

New acl type in 2.5.STABLE5 to match the login component of Internet style URLs (protocol://user:password@host/path/to/file)

+
balance_on_multiple_ip

New directive in 2.5.STABLE7 to make it possible to disable the automatic round-robin load balancing on multiple IP addresses normally done by Squid.

+
reply_header_max_size

New directive in 2.5.STABLE7 limiting the size of HTTP reply headers, similar to request_header_max_size but in the reply direction (from servers to clients). Default is 20KB.

+
acl req_hdr/resp_hdr

New acl types in 2.5.STABLE7 to match arbitrary HTTP headers, useful to block certain malware/spyware etc.

+
relaxed_http_parser

New directive in 2.5.STABLE8 to control how strict the HTTP parser should be.

@@ -145,8 +149,23 @@
Bug #761

assertion failed: cbdata.c:249: "c->locks > 0" when using diskd

Bug +#1193

Interception fails if intercepting multiple ports and Squid is not listening on the same ports

+
Bug +#1094

cachemgr.cgi should have a built-in access control layer to prevent malicious use

+
Bug +#649

Problems refreshing pages stored with 'vary' information

+
Bug #779

users going above their allowed IP count no longer logged in cache.log

Bug +#1204

FTP listings uses "BASE HREF" much more than it needs to

+ +

+ + +

In addition there is a set of limitations in this version of Squid which we hope to correct later

+

+

+
Bug #1059

mime.conf and referenced icons must be within chroot

Bug #1033

CARP ignores cache_peer_access and cache_peer_domain

@@ -319,6 +338,36 @@
  • new balance_on_multiple_ip squid.conf directive
  • a number of other minor and cosmetic bugfixes. See the list of squid-2.5.STABLE6 patches and the +ChangeLog file for details.
  • + +

    + +

    10. Key changes squid-2.5.STABLE7 to 2.5.STABLE8:

    + +

    +

      +
    • Squid no longer closes all open filedescriptors. Previous Squid +versions have for increased security closed any open filedescriptors left +open by the process starting Squid, but this is not really our business +and causes problems for certain libraries opening internal filedescriptors +in some conditions (some SSL libraries, syslog, DNS resolver etc).
    • +
    • Configuration parser made more strict and consistent. Previously empty acl +declarations were ignored in http_access causing some unexpected results. +Now empty acl declarations are allowed (matching nothing) and http_access +requires all listed acls to be defined.
    • +
    • A minor information leak in error messages due to malformed host +names corrected
    • +
    • Several HTTP security fixes to prevent cache pollution attacks or theft +of user confidential information. New relaxed_http_parser directive to control +how strict the HTTP parser should be.
    • +
    • Buffer overflow fix in gopherToHTML.
    • +
    • Corrected a Segmentation fault on malformed WCCP packets.
    • +
    • squid_ldap_auth now sanity checks usernames
    • +
    • Corrected a Segmentation fault and other malfunctions on failed PUT/POST +requests.
    • +
    • Properly handle oversized reply headers
    • +
    • a number of other minor and cosmetic bugfixes. See the list of +squid-2.5.STABLE7 patches and the ChangeLog file for details.

    diff -ruN squid-2.5.STABLE7/configure squid-2.5.STABLE8/configure --- squid-2.5.STABLE7/configure Mon Oct 11 14:27:03 2004 +++ squid-2.5.STABLE8/configure Fri Feb 11 04:30:17 2005 @@ -1000,7 +1000,7 @@ # Define the identity of the package. PACKAGE=squid -VERSION=2.5.STABLE7 +VERSION=2.5.STABLE8 cat >> confdefs.h <&6 echo "configure:1057: checking whether to enable maintainer-specific portions of Makefiles" >&5 # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. diff -ruN squid-2.5.STABLE7/configure.in squid-2.5.STABLE8/configure.in --- squid-2.5.STABLE7/configure.in Mon Oct 11 14:27:03 2004 +++ squid-2.5.STABLE8/configure.in Fri Feb 11 04:30:17 2005 @@ -3,15 +3,15 @@ dnl dnl Duane Wessels, wessels@nlanr.net, February 1996 (autoconf v2.9) dnl -dnl $Id: configure.in,v 1.251.2.73 2004/10/11 20:13:43 hno Exp $ +dnl $Id: configure.in,v 1.251.2.78 2005/02/11 11:25:14 hno Exp $ dnl dnl dnl AC_INIT(src/main.c) AC_CONFIG_AUX_DIR(cfgaux) -AM_INIT_AUTOMAKE(squid, 2.5.STABLE7) +AM_INIT_AUTOMAKE(squid, 2.5.STABLE8) AM_CONFIG_HEADER(include/autoconf.h) -AC_REVISION($Revision: 1.251.2.73 $)dnl +AC_REVISION($Revision: 1.251.2.78 $)dnl AC_PREFIX_DEFAULT(/usr/local/squid) AM_MAINTAINER_MODE diff -ruN squid-2.5.STABLE7/errors/Bulgarian/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Bulgarian/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Bulgarian/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Bulgarian/ERR_INVALID_RESP Mon Jan 17 15:13:00 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/Catalan/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Catalan/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Catalan/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Catalan/ERR_INVALID_RESP Mon Jan 17 15:13:00 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_ACCESS_DENIED squid-2.5.STABLE8/errors/Czech/ERR_ACCESS_DENIED --- squid-2.5.STABLE7/errors/Czech/ERR_ACCESS_DENIED Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_ACCESS_DENIED Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_CACHE_ACCESS_DENIED squid-2.5.STABLE8/errors/Czech/ERR_CACHE_ACCESS_DENIED --- squid-2.5.STABLE7/errors/Czech/ERR_CACHE_ACCESS_DENIED Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_CACHE_ACCESS_DENIED Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pristup ke cache serveru zamítnut @@ -31,6 +31,6 @@ Pro úspěšnou autorizaci potřebujete prohlížeče NETSCAPE 2.0 a vyšší, Microsoft Internet Explorer 3.0 nebo prohlížeč podporující protokol HTTP/1.1. V případě problému se prosím obraťte na cache -administratora nebo si změňte +administratora nebo si změňte heslo.

    diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_CACHE_MGR_ACCESS_DENIED squid-2.5.STABLE8/errors/Czech/ERR_CACHE_MGR_ACCESS_DENIED --- squid-2.5.STABLE7/errors/Czech/ERR_CACHE_MGR_ACCESS_DENIED Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_CACHE_MGR_ACCESS_DENIED Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pristup ke cache manazeru zamitnut @@ -26,7 +26,7 @@ je dostupný pouze po Vaší autorizaci.

    -

    +

    Pro úspěšnou autorizaci potřebujete prohlížeče NETSCAPE 2.0 a vyšší, Microsoft Internet Explorer 3.0 nebo prohlížeč podporující protokol HTTP/1.1. V případě problému se prosím obraťte na cache diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_CANNOT_FORWARD squid-2.5.STABLE8/errors/Czech/ERR_CANNOT_FORWARD --- squid-2.5.STABLE7/errors/Czech/ERR_CANNOT_FORWARD Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_CANNOT_FORWARD Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_CONNECT_FAIL squid-2.5.STABLE8/errors/Czech/ERR_CONNECT_FAIL --- squid-2.5.STABLE7/errors/Czech/ERR_CONNECT_FAIL Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_CONNECT_FAIL Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_DNS_FAIL squid-2.5.STABLE8/errors/Czech/ERR_DNS_FAIL --- squid-2.5.STABLE7/errors/Czech/ERR_DNS_FAIL Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_DNS_FAIL Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_FORWARDING_DENIED squid-2.5.STABLE8/errors/Czech/ERR_FORWARDING_DENIED --- squid-2.5.STABLE7/errors/Czech/ERR_FORWARDING_DENIED Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_FORWARDING_DENIED Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_FTP_DISABLED squid-2.5.STABLE8/errors/Czech/ERR_FTP_DISABLED --- squid-2.5.STABLE7/errors/Czech/ERR_FTP_DISABLED Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_FTP_DISABLED Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_FTP_FAILURE squid-2.5.STABLE8/errors/Czech/ERR_FTP_FAILURE --- squid-2.5.STABLE7/errors/Czech/ERR_FTP_FAILURE Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_FTP_FAILURE Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_FTP_FORBIDDEN squid-2.5.STABLE8/errors/Czech/ERR_FTP_FORBIDDEN --- squid-2.5.STABLE7/errors/Czech/ERR_FTP_FORBIDDEN Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_FTP_FORBIDDEN Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_FTP_NOT_FOUND squid-2.5.STABLE8/errors/Czech/ERR_FTP_NOT_FOUND --- squid-2.5.STABLE7/errors/Czech/ERR_FTP_NOT_FOUND Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_FTP_NOT_FOUND Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_FTP_PUT_CREATED squid-2.5.STABLE8/errors/Czech/ERR_FTP_PUT_CREATED --- squid-2.5.STABLE7/errors/Czech/ERR_FTP_PUT_CREATED Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_FTP_PUT_CREATED Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + FTP PUT: Soubor Vytvoren diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_FTP_PUT_ERROR squid-2.5.STABLE8/errors/Czech/ERR_FTP_PUT_ERROR --- squid-2.5.STABLE7/errors/Czech/ERR_FTP_PUT_ERROR Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_FTP_PUT_ERROR Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: neuspesny FTP upload diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_FTP_PUT_MODIFIED squid-2.5.STABLE8/errors/Czech/ERR_FTP_PUT_MODIFIED --- squid-2.5.STABLE7/errors/Czech/ERR_FTP_PUT_MODIFIED Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_FTP_PUT_MODIFIED Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + FTP PUT: Soubor aktualizovan diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_FTP_UNAVAILABLE squid-2.5.STABLE8/errors/Czech/ERR_FTP_UNAVAILABLE --- squid-2.5.STABLE7/errors/Czech/ERR_FTP_UNAVAILABLE Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_FTP_UNAVAILABLE Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_INVALID_REQ squid-2.5.STABLE8/errors/Czech/ERR_INVALID_REQ --- squid-2.5.STABLE7/errors/Czech/ERR_INVALID_REQ Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_INVALID_REQ Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Czech/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Czech/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Czech/ERR_INVALID_RESP Mon Jan 31 08:38:43 2005 @@ -0,0 +1,27 @@ + + + +CHYBA: Pozadovany dokument je nedostupny + + +

    ERROR

    +

    Požadovaný dokument je nedostupný

    +
    +

    +Při provádění požadavku: +

    +%R
    +
    +

    +se objevila následující chyba: +

      +
    • + +Invalid Response + +
    + +

    +HTTP odpověď obdržená od vzdáleného serveru je nesrozumitelná či poškozená. +Kontaktujte prosím správce vzdáleného serveru. Další informace Vám poskytne +správce tohoto proxy serveru %w diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_INVALID_URL squid-2.5.STABLE8/errors/Czech/ERR_INVALID_URL --- squid-2.5.STABLE7/errors/Czech/ERR_INVALID_URL Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_INVALID_URL Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_LIFETIME_EXP squid-2.5.STABLE8/errors/Czech/ERR_LIFETIME_EXP --- squid-2.5.STABLE7/errors/Czech/ERR_LIFETIME_EXP Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_LIFETIME_EXP Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny @@ -20,5 +20,5 @@

    -Squid stornoval požadavek z důvodu překročení maximální délky trvání spojení. +Squid stornoval požadavek z důvodu překročení maximální délky trvání spojení.

    diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_NO_RELAY squid-2.5.STABLE8/errors/Czech/ERR_NO_RELAY --- squid-2.5.STABLE7/errors/Czech/ERR_NO_RELAY Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_NO_RELAY Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_ONLY_IF_CACHED_MISS squid-2.5.STABLE8/errors/Czech/ERR_ONLY_IF_CACHED_MISS --- squid-2.5.STABLE7/errors/Czech/ERR_ONLY_IF_CACHED_MISS Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_ONLY_IF_CACHED_MISS Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_READ_ERROR squid-2.5.STABLE8/errors/Czech/ERR_READ_ERROR --- squid-2.5.STABLE7/errors/Czech/ERR_READ_ERROR Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_READ_ERROR Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_READ_TIMEOUT squid-2.5.STABLE8/errors/Czech/ERR_READ_TIMEOUT --- squid-2.5.STABLE7/errors/Czech/ERR_READ_TIMEOUT Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_READ_TIMEOUT Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_SHUTTING_DOWN squid-2.5.STABLE8/errors/Czech/ERR_SHUTTING_DOWN --- squid-2.5.STABLE7/errors/Czech/ERR_SHUTTING_DOWN Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_SHUTTING_DOWN Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_SOCKET_FAILURE squid-2.5.STABLE8/errors/Czech/ERR_SOCKET_FAILURE --- squid-2.5.STABLE7/errors/Czech/ERR_SOCKET_FAILURE Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_SOCKET_FAILURE Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_TOO_BIG squid-2.5.STABLE8/errors/Czech/ERR_TOO_BIG --- squid-2.5.STABLE7/errors/Czech/ERR_TOO_BIG Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_TOO_BIG Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_UNSUP_REQ squid-2.5.STABLE8/errors/Czech/ERR_UNSUP_REQ --- squid-2.5.STABLE7/errors/Czech/ERR_UNSUP_REQ Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_UNSUP_REQ Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_URN_RESOLVE squid-2.5.STABLE8/errors/Czech/ERR_URN_RESOLVE --- squid-2.5.STABLE7/errors/Czech/ERR_URN_RESOLVE Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_URN_RESOLVE Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Požadované URN je nedostupné diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_WRITE_ERROR squid-2.5.STABLE8/errors/Czech/ERR_WRITE_ERROR --- squid-2.5.STABLE7/errors/Czech/ERR_WRITE_ERROR Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_WRITE_ERROR Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Czech/ERR_ZERO_SIZE_OBJECT squid-2.5.STABLE8/errors/Czech/ERR_ZERO_SIZE_OBJECT --- squid-2.5.STABLE7/errors/Czech/ERR_ZERO_SIZE_OBJECT Mon Aug 26 19:16:58 2002 +++ squid-2.5.STABLE8/errors/Czech/ERR_ZERO_SIZE_OBJECT Mon Jan 31 08:39:33 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Danish/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Danish/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Danish/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Danish/ERR_INVALID_RESP Mon Jan 17 15:13:00 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/Dutch/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Dutch/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Dutch/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Dutch/ERR_INVALID_RESP Mon Jan 17 15:13:00 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/English/ERR_INVALID_RESP squid-2.5.STABLE8/errors/English/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/English/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/English/ERR_INVALID_RESP Mon Jan 17 15:13:00 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/Estonian/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Estonian/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Estonian/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Estonian/ERR_INVALID_RESP Sun Jan 30 10:39:46 2005 @@ -0,0 +1,28 @@ + + +VIGA: Soovitud URLi ei őnnestu laadida + + +

    VIGA

    +

    Soovitud URLi ei őnnestu laadida

    +
    +

    +Üritades käsitleda järgnevat päringut: +

    +%R
    +
    +

    +Tekkis viga: +

      +
    • + +Vigane vastus + +
    + +

    +Vasti vőetud HTTP vastus on tundmatu vői muidu katki. Palun kontakteeruge +saidi operaatoriga. Teie vehemälu serveri administraator vőib saada anda +täiendavat infot selle vea detailide kohta. + +

    Teie vehemälu serveri administraator on %w. diff -ruN squid-2.5.STABLE7/errors/Estonian/README squid-2.5.STABLE8/errors/Estonian/README --- squid-2.5.STABLE7/errors/Estonian/README Mon Apr 27 10:23:04 1998 +++ squid-2.5.STABLE8/errors/Estonian/README Sun Jan 30 10:39:46 2005 @@ -1,2 +1,2 @@ -Thank you to Toomas Soome for +Thank you to Toomas Soome for creating these error pages in Estonian! diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_ACCESS_DENIED squid-2.5.STABLE8/errors/Finnish/ERR_ACCESS_DENIED --- squid-2.5.STABLE7/errors/Finnish/ERR_ACCESS_DENIED Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_ACCESS_DENIED Wed Feb 2 15:41:02 2005 @@ -1,13 +1,13 @@ -VIRHE: Pyydettyä URL-osoitettua ei voitu hakea +VIRHE: Pyydettyä osoitettua ei voitu hakea

    VIRHE

    -

    Pyydettyä URL-osoitetta ei voitu hakea

    +

    Pyydettyä osoitetta ei voitu hakea


    -Yritettäessä hakea URL-osoitetta +Yritettäessä hakea osoitetta %U

    Ilmeni seuraava virhe: @@ -21,4 +21,4 @@ Jos koet, että tämä on väärin, ota yhteyttä palveluntarjoajaasi.

    - +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_CACHE_ACCESS_DENIED squid-2.5.STABLE8/errors/Finnish/ERR_CACHE_ACCESS_DENIED --- squid-2.5.STABLE7/errors/Finnish/ERR_CACHE_ACCESS_DENIED Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_CACHE_ACCESS_DENIED Wed Feb 2 15:41:02 2005 @@ -8,7 +8,7 @@

    Pääsy välityspalvelimeen evätty


    -Yritettäessä hakea URL-osoitetta +Yritettäessä hakea osoitetta %U

    Ilmeni seuraava virhe: @@ -26,7 +26,7 @@

    -Jotta tämä onnistuisi, sinun tulee käyttää Netscapen versiota 2.0 tai uudempaa, +Jotta todentaminen onnisttuu, sinun tulee käyttää Netscapen versiota 2.0 tai uudempaa, Microsoft Internet Explorer 3.0:aa tai HTTP/1.1 -yhteensopivaa selainta. Jos sinulla on hankaluuksia hekilöllisyytesi todentamisessa, ota yhteyttä välityspalvelimen ylläpitoon tai diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_CACHE_MGR_ACCESS_DENIED squid-2.5.STABLE8/errors/Finnish/ERR_CACHE_MGR_ACCESS_DENIED --- squid-2.5.STABLE7/errors/Finnish/ERR_CACHE_MGR_ACCESS_DENIED Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_CACHE_MGR_ACCESS_DENIED Wed Feb 2 15:41:02 2005 @@ -8,7 +8,7 @@

    Pääsy välityspalvelimen hallintaan evätty


    -Yritettäessä hakea URL-osoitetta +Yritettäessä hakea osoitetta %U

    Ilmeni seuraava virhe: @@ -26,7 +26,7 @@

    -Jotta tämä onnistuisi, sinun tulee käyttää Netscapen versiota 2.0 tai uudempaa, +Jotta henkilöllisyyden todentaminen onnistuisi, sinun tulee käyttää Netscapen versiota 2.0 tai uudempaa, Microsoft Internet Explorer 3.0:aa tai HTTP/1.1 -yhteensopivaa selainta. Jos sinulla on hankaluuksia hekilöllisyytesi osoittamisessa, ota yhteyttä välityspalvelimen ylläpitoon tai jos sinä olet diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_CANNOT_FORWARD squid-2.5.STABLE8/errors/Finnish/ERR_CANNOT_FORWARD --- squid-2.5.STABLE7/errors/Finnish/ERR_CANNOT_FORWARD Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_CANNOT_FORWARD Wed Feb 2 15:41:02 2005 @@ -1,13 +1,13 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

    VIRHE

    -

    Pyydettyä URL-osoitetta ei voitu hakea

    +

    Pyydettyä osoitetta ei voitu hakea


    -Yritettäessä hakea URL-osoitetta +Yritettäessä hakea osoitetta %U

    Ilmeni seuraava virhe: @@ -29,3 +29,4 @@ tavoittamattomissa.

    +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_CONNECT_FAIL squid-2.5.STABLE8/errors/Finnish/ERR_CONNECT_FAIL --- squid-2.5.STABLE7/errors/Finnish/ERR_CONNECT_FAIL Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_CONNECT_FAIL Wed Feb 2 15:41:02 2005 @@ -1,13 +1,13 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

    VIRHE

    -

    Pyydettyä URL-osoitetta ei voitu hakea

    +

    Pyydettyä osoitetta ei voitu hakea


    -Yritettäessä hakea URL-osoitetta: +Yritettäessä hakea osoitetta: %U

    Ilmeni seuraava virhe: @@ -25,3 +25,4 @@

    Kohdepalvelin tai -verkko saattaa olla alhaalla. Uusi hakupyyntösi.

    +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_DNS_FAIL squid-2.5.STABLE8/errors/Finnish/ERR_DNS_FAIL --- squid-2.5.STABLE7/errors/Finnish/ERR_DNS_FAIL Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_DNS_FAIL Wed Feb 2 15:41:02 2005 @@ -1,12 +1,12 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea -

    Pyydettyä URL-osoitetta ei voitu hakea

    +

    Pyydettyä osoitetta ei voitu hakea


    -Yritettäessä hakea URL-osoitetta: +Yritettäessä hakea osoitetta: %U

    Ilmeni seuraava virhe: @@ -30,4 +30,4 @@ Tarkista, että osoite on oikein.

    - +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_FORWARDING_DENIED squid-2.5.STABLE8/errors/Finnish/ERR_FORWARDING_DENIED --- squid-2.5.STABLE7/errors/Finnish/ERR_FORWARDING_DENIED Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_FORWARDING_DENIED Wed Feb 2 15:41:02 2005 @@ -1,13 +1,13 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

    VIRHE

    -

    Pyydettyä URL-osoitetta ei voitu hakea

    +

    Pyydettyä osoitetta ei voitu hakea


    -Yritettäessä hakea URL-osoitetta: +Yritettäessä hakea osoitetta: %U

    Ilmeni seuraava virhe: @@ -22,3 +22,4 @@ Tämä välityspalvelin ei edelleenohjaa pyyntöäsi koska se yrittää vahvistaa sisarsuhdetta. Ehkä asiakas osoitteessa %i on väärin konfiguroitu välityspalvelin.

    +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_FTP_DISABLED squid-2.5.STABLE8/errors/Finnish/ERR_FTP_DISABLED --- squid-2.5.STABLE7/errors/Finnish/ERR_FTP_DISABLED Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_FTP_DISABLED Wed Feb 2 15:41:02 2005 @@ -1,13 +1,13 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

    VIRHE

    -

    Pyydettyä URL-osoitetta ei voitu hakea

    +

    Pyydettyä osoitetta ei voitu hakea


    -Yritettäessä hakea URL-osoitetta: +Yritettäessä hakea osoitetta: %U

    Ilmeni seuraava virhe: @@ -21,3 +21,4 @@

    Tämä välityspalvelin ei tue FTP:tä.

    +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_FTP_FAILURE squid-2.5.STABLE8/errors/Finnish/ERR_FTP_FAILURE --- squid-2.5.STABLE7/errors/Finnish/ERR_FTP_FAILURE Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_FTP_FAILURE Wed Feb 2 15:41:02 2005 @@ -1,14 +1,14 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

    VIRHE

    -

    Pyydettyä URL-osoitetta ei voitu hakea

    +

    Pyydettyä osoitetta ei voitu hakea


    Tapahtui FTP-protokollavirhe yritettäessä -hakea URL-osoitetta +hakea osoitetta %U

    Squid lähetti seuraavan FTP-komennon: @@ -16,9 +16,4 @@ ja vastaanotti seuraavan vastauksen:

    %F
    %g
    -

    -Tämä saattaa johtua FTP-osoitteesta, jossa on absoluuttinen polku -(joka ei ole yhteensopiva RFC:n 1738 kanssa). Jos syy on tämä, -tiedosto löytyy osoitteesta %B. -

    - +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_FTP_FORBIDDEN squid-2.5.STABLE8/errors/Finnish/ERR_FTP_FORBIDDEN --- squid-2.5.STABLE7/errors/Finnish/ERR_FTP_FORBIDDEN Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_FTP_FORBIDDEN Wed Feb 2 15:41:02 2005 @@ -1,19 +1,18 @@ -ERROR: The requested URL could not be retrieved +VIRHE: Pyydettyä osoitetta ei voitu hakea -

    ERROR

    -

    The requested URL could not be retrieved

    +

    VIRHE

    +

    Pyydettyä osoitetta ei voitu hakea


    -An FTP authentication failure occurred -while trying to retrieve the URL: -%U +FTP:n käyttäjän henkilöllisyyden tarkastuksessa tapahtui virhe kun +osoitetta %U yritettiin hakea.

    -Squid sent the following FTP command: +Squid lähetti seuraavan FTP-komennon:

    %f
    -and then received this reply +ja sai tämän vastauksen:
    %F
    %g
    -

    Your cache administrator is %w. +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_FTP_NOT_FOUND squid-2.5.STABLE8/errors/Finnish/ERR_FTP_NOT_FOUND --- squid-2.5.STABLE7/errors/Finnish/ERR_FTP_NOT_FOUND Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_FTP_NOT_FOUND Wed Feb 2 15:41:02 2005 @@ -1,22 +1,22 @@ -ERROR: The requested URL could not be retrieved +VIRHE: Pyydettyä osoitetta ei voitu hakea -

    ERROR

    -

    The requested URL could not be retrieved

    +

    VIRHE

    +

    Pyydettyä osoitetta ei voitu hakea


    -The following URL could not be retrieved: -%U +Osoitetta %U ei voitu hakea.

    -Squid sent the following FTP command: +Squid lähetti seuraavan FTP-komennon:

    %f
    -and then received this reply +ja sai seuraavan vastauksen:
    %F
    %g

    -This might be caused by an FTP URL with an absolute path (which does -not comply with RFC 1738). If this is the cause, then the file -can be found at %B. -

    Your cache administrator is %w. +Tämän saattaa aiheuttaa FTP-osoite, jossa on absoluutinen +polku (mikä ei ole RFC:n 1738 mukaista). Jos syynä on tämä, +niin tiedosto löytyy osoitteesta %B. +

    Välityspalvelintasi ylläpitää %w. + diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_FTP_PUT_CREATED squid-2.5.STABLE8/errors/Finnish/ERR_FTP_PUT_CREATED --- squid-2.5.STABLE7/errors/Finnish/ERR_FTP_PUT_CREATED Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_FTP_PUT_CREATED Wed Feb 2 15:41:02 2005 @@ -6,6 +6,3 @@

    Toiminto onnistui:

    Tiedosto luotu


    -

    -

    - diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_FTP_PUT_ERROR squid-2.5.STABLE8/errors/Finnish/ERR_FTP_PUT_ERROR --- squid-2.5.STABLE7/errors/Finnish/ERR_FTP_PUT_ERROR Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_FTP_PUT_ERROR Wed Feb 2 15:41:02 2005 @@ -3,11 +3,11 @@ VIRHE: FTP-lähetys epäonnistui -

    ERROR

    +

    VIRHE

    FTP PUT/lähetys epäonnistui


    -Yritettäessä lähettää seuraavaa URL-osoitetta: +Yritettäessä lähettää seuraavaa osoitetta: %U

    Squid lähetti seuraavan FTP-komennon: @@ -24,4 +24,4 @@ Tarkista polku, oikeudet sekä levytila ja kokeile uudelleen.

    - +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_FTP_PUT_MODIFIED squid-2.5.STABLE8/errors/Finnish/ERR_FTP_PUT_MODIFIED --- squid-2.5.STABLE7/errors/Finnish/ERR_FTP_PUT_MODIFIED Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_FTP_PUT_MODIFIED Wed Feb 2 15:41:02 2005 @@ -6,6 +6,3 @@

    Toiminto onnistui

    Tiedosto päivitetty


    -

    -

    - diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_FTP_UNAVAILABLE squid-2.5.STABLE8/errors/Finnish/ERR_FTP_UNAVAILABLE --- squid-2.5.STABLE7/errors/Finnish/ERR_FTP_UNAVAILABLE Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_FTP_UNAVAILABLE Wed Feb 2 15:41:02 2005 @@ -1,18 +1,18 @@ -ERROR: The requested URL could not be retrieved +VIRHE: Pyydettyä osoitetta ei voitu hakea -

    ERROR

    -

    The requested URL could not be retrieved

    +

    VIRHE

    +

    Pyydettyä osoitetta ei voitu hakea


    -The FTP server was too busy while trying to retrieve the URL: -%U +FTP-palvelin oli liian kuormitettu kun osoitetta +%U yritettiin hakea.

    -Squid sent the following FTP command: +Squid lähetti seuraavan FTP-komennon:

    %f
    -and then received this reply +ja sai seuraavan vastauksen:
    %F
    %g
    -

    Your cache administrator is %w. +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_INVALID_REQ squid-2.5.STABLE8/errors/Finnish/ERR_INVALID_REQ --- squid-2.5.STABLE7/errors/Finnish/ERR_INVALID_REQ Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_INVALID_REQ Wed Feb 2 15:41:02 2005 @@ -1,10 +1,10 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

    VIRHE

    -

    Pyydettyä URL-osoitetta ei voitu hakea

    +

    Pyydettyä osoitetta ei voitu hakea


    Yritettäessä toteuttaa hakupyyntöä @@ -31,3 +31,4 @@

  • Virheellinen merkki palvelinnimessä; alaviivat eivät ole sallittuja

    +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Finnish/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Finnish/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Finnish/ERR_INVALID_RESP Wed Feb 2 15:41:02 2005 @@ -0,0 +1,28 @@ + + +VIRHE: Pyydettyä osoitetta ei voitu hakea + + +

    VIRHE

    +

    Pyydettyä osoitetta ei voitu hakea

    +
    +

    +Yritettäessä toimittaa pyyntöä: +

    +%R
    +
    +

    +Tapahtui seuraava virhe: +

      +
    • + +Virheellinen vastaus + +
    + +

    +Palvelimen lähettämää HTTP-vastausta ei ymmärretty tai se oli +väärän muotoinen. Ota yhteyttä palvelimen ylläpitäjään. +Välipalvelimesi ylläpitäjältä voit saada lisätietoja +ongelman luonteesta. +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_INVALID_URL squid-2.5.STABLE8/errors/Finnish/ERR_INVALID_URL --- squid-2.5.STABLE7/errors/Finnish/ERR_INVALID_URL Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_INVALID_URL Wed Feb 2 15:41:02 2005 @@ -1,25 +1,25 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

    VIRHE

    -

    Pyydettyä URL-osoitetta ei voitu hakea

    +

    Pyydettyä osoitetta ei voitu hakea


    -Yritettäessä hakea URL-osoitetta +Yritettäessä hakea osoitetta %U

    Ilmeni seuraava ongelma:

    • -Virheellinen URL-osoite +Virheellinen osoite

    -Joku osa URL-osoitetta on virheellinen. Mahdollisia ongelmia: +Joku osa osoitetta on virheellinen. Mahdollisia ongelmia:

    • Puuttuva tai virheellinen yhteyskäytäntö (tulisi olla "http://" tai vastaava)
    • Puuttuva palvelinnimi @@ -27,3 +27,4 @@
    • Virheellinen merkki palvelinnimessä; alaviivat eivät ole sallittuja

    +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_LIFETIME_EXP squid-2.5.STABLE8/errors/Finnish/ERR_LIFETIME_EXP --- squid-2.5.STABLE7/errors/Finnish/ERR_LIFETIME_EXP Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_LIFETIME_EXP Wed Feb 2 15:41:02 2005 @@ -1,13 +1,13 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

    VIRHE

    -

    Pyydettyä URL-osoitetta ei voitu hakea

    +

    Pyydettyä osoitetta ei voitu hakea


    -Yritettäessä hakea URL-osoitetta +Yritettäessä hakea osoitetta %U

    Ilmeni seuraava ongelma: @@ -22,3 +22,4 @@ Squid on keskeyttänyt hakupuunnön, koska se ylitti suurimman mahdollisimman yhteyden elinajan.

    +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_NO_RELAY squid-2.5.STABLE8/errors/Finnish/ERR_NO_RELAY --- squid-2.5.STABLE7/errors/Finnish/ERR_NO_RELAY Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_NO_RELAY Wed Feb 2 15:41:02 2005 @@ -1,24 +1,25 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

    VIRHE

    -

    Pyydettyä URL-osoitetta ei voitu hakea

    +

    Pyydettyä osoitetta ei voitu hakea


    -Yritettäessä hakea URL-osoitetta +Yritettäessä hakea osoitetta %U

    Ilmeni seuraava ongelma:

    • -Ei WAIS-linkkiä +Ei WAIS-reititintä

    -Tälle välityspalvelimelle ei ole määritelty WAIS-linkkipalvelinta. +Tälle välityspalvelimelle ei ole määritelty WAIS-reititinä! Komenna ylläpitoa.

    +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_ONLY_IF_CACHED_MISS squid-2.5.STABLE8/errors/Finnish/ERR_ONLY_IF_CACHED_MISS --- squid-2.5.STABLE7/errors/Finnish/ERR_ONLY_IF_CACHED_MISS Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_ONLY_IF_CACHED_MISS Wed Feb 2 15:41:02 2005 @@ -1,13 +1,13 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

    VIRHE

    -

    Pyydettyä URL-osoitetta ei voitu hakea

    +

    Pyydettyä osoitetta ei voitu hakea


    -Yritettäessä hakea URL-osoitetta +Yritettäessä hakea osoitetta %U

    Ilmeni seuraava ongelma: @@ -24,3 +24,4 @@ -välityspalvelinmääritys. Pyydettyä dokumenttia ei löytynyt välityspalvelimesta tai se vaati uudellenvahvistuksen, jonka vain välityspalvelimesta -määritys kieltää.

    +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_READ_ERROR squid-2.5.STABLE8/errors/Finnish/ERR_READ_ERROR --- squid-2.5.STABLE7/errors/Finnish/ERR_READ_ERROR Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_READ_ERROR Wed Feb 2 15:41:02 2005 @@ -1,13 +1,13 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

    VIRHE

    -

    Pyydettyä URL-osoitetta ei voitu hakea

    +

    Pyydettyä osoitetta ei voitu hakea


    -Yritettäessä hakea URL-osoitetta +Yritettäessä hakea osoitetta %U

    Ilmeni seuraava ongelma: @@ -23,6 +23,7 @@

        %E

    -On ilmennyt virhetila luettaessa tietoa verkosta. +Luettaessa tietoa verkosta tapahtui virhe. Uusi hakupyyntösi.

    +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_READ_TIMEOUT squid-2.5.STABLE8/errors/Finnish/ERR_READ_TIMEOUT --- squid-2.5.STABLE7/errors/Finnish/ERR_READ_TIMEOUT Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_READ_TIMEOUT Wed Feb 2 15:41:02 2005 @@ -1,13 +1,13 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

    VIRHE

    -

    Pyydettyä URL-osoitetta ei voitu hakea

    +

    Pyydettyä osoitetta ei voitu hakea


    -Yritettäessä hakea URL-osoitetta +Yritettäessä hakea osoitetta %U

    Ilmeni seuraava ongelma: @@ -24,5 +24,6 @@

    Odotettaessa tietoa verkosta yhteys aikakatkaistiin. Verkko tai palvelin -saattaa olla alhaalla tai ruuhkautunut. Uusi hakupyyntösi. +saattaa olla alhaalla tai ruuhkautunut. Yritä uudelleen.

    +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_SHUTTING_DOWN squid-2.5.STABLE8/errors/Finnish/ERR_SHUTTING_DOWN --- squid-2.5.STABLE7/errors/Finnish/ERR_SHUTTING_DOWN Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_SHUTTING_DOWN Wed Feb 2 15:41:02 2005 @@ -1,19 +1,19 @@ -ERROR: The requested URL could not be retrieved +VIRHE: Pyydettyä osoitetta ei voitu hakea -

    ERROR

    -

    The requested URL could not be retrieved

    +

    VIRHE

    +

    Pyydettyä osoitetta ei voitu hakea


    -While trying to retrieve the URL: +Haettaessa osoitetta: %U

    -The following error was encountered: +Tapahtui seuraava virhe:

      -This cache is in the process of shutting down and can not -service your request at this time. Please retry your -request again soon. -

      Your cache administrator is %w. +Välityspalvelinta ollaan juuri sammuttamassa, joten se ei +voi palvella sinua nyt. Yritä hetken kuluttua uudelleen. +

      Välityspalvelintasi ylläpitää %w. + diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_SOCKET_FAILURE squid-2.5.STABLE8/errors/Finnish/ERR_SOCKET_FAILURE --- squid-2.5.STABLE7/errors/Finnish/ERR_SOCKET_FAILURE Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_SOCKET_FAILURE Wed Feb 2 15:41:02 2005 @@ -1,13 +1,13 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

      VIRHE

      -

      Pyydettyä URL-osoitetta ei voitu hakea

      +

      Pyydettyä osoitetta ei voitu hakea


      -Yritettäessä hakea URL-osoitetta +Yritettäessä hakea osoitetta %U

      Ilmeni seuraava ongelma: @@ -24,5 +24,6 @@

      Squid ei voinut luoda TCP-sokettia, oletettavasti valtavan kuorman -vuoksi. Uusi hakupyyntösi. +vuoksi. Yritä uudestaan.

      +

      Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_TOO_BIG squid-2.5.STABLE8/errors/Finnish/ERR_TOO_BIG --- squid-2.5.STABLE7/errors/Finnish/ERR_TOO_BIG Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_TOO_BIG Wed Feb 2 15:41:02 2005 @@ -1,28 +1,27 @@ -ERROR: The requested URL could not be retrieved +VIRHE: Pyydettyä osoitetta ei voitu hakea -

      ERROR

      -

      The requested URL could not be retrieved

      +

      VIRHE

      +

      Pyydettyä osoitetta ei voitu hakea


      -While trying to retrieve the URL: +Yritettäessä hakea osoitetta: %U

      -The following error was encountered: +Tapahtui seuraava virhe:

      • -The request or reply is too large. +Joko pyyntö tai vastaus on liian iso.

        -If you are making a POST or PUT request, then your request body -(the thing you are trying to upload) is too large. If you are -making a GET request, then the reply body (what you are trying -to download) is too large. These limits have been established -by the Internet Service Provider who operates this cache. Please -contact them directly if you feel this is an error. +Jos lähetät POST- tai PUT-pyyntöä, niin pyyntösi runko +(se tavara, jota yrität lähettää) on liian iso. Jos olet +tekemässä GET-pyyntöä, niin vastauksen runko (se, mitä yrität +ladata) on liian iso. Nämä rajoitukset on asettanut +Internet-palvelusi tarjoaja, joka ylläpitää tätä välityspalvelinta. +Ota yhteyttä heihin, jos rajoitus on sinusta virheellinen.

      -

      -Your cache administrator is %w. +

      Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_UNSUP_REQ squid-2.5.STABLE8/errors/Finnish/ERR_UNSUP_REQ --- squid-2.5.STABLE7/errors/Finnish/ERR_UNSUP_REQ Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_UNSUP_REQ Wed Feb 2 15:41:02 2005 @@ -1,13 +1,13 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

      VIRHE

      -

      Pyydettyä URL-osoitetta ei voitu hakea

      +

      Pyydettyä osoitetta ei voitu hakea


      -Yritettäessä hakea URL-osoitetta +Yritettäessä hakea osoitetta %U

      Ilmeni seuraava ongelma: @@ -22,4 +22,4 @@ Squid ei tue kaikkia hakupyynnon tyyppejä kaikilla protokollilla. Et voi esimerkiksi käyttää POST-pyyntöä gopherilla.

      - +

      Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_URN_RESOLVE squid-2.5.STABLE8/errors/Finnish/ERR_URN_RESOLVE --- squid-2.5.STABLE7/errors/Finnish/ERR_URN_RESOLVE Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_URN_RESOLVE Wed Feb 2 15:41:02 2005 @@ -1,13 +1,13 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

      VIRHE

      -

      Pyydettyä URL-osoitetta ei voitu hakea

      +

      Pyydettyä osoitetta ei voitu hakea


      -Yritettäessä hakea URL-osoitetta +Yritettäessä hakea osoitetta %U

      Ilmeni seuraava ongelma: @@ -19,5 +19,6 @@

    -Hei, älä odota liikaa URN:iltä kun kyseessä on %T :-) +Hei, älä odota liikaa URN:iltä kun kyseessä on %T :)

    +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_WRITE_ERROR squid-2.5.STABLE8/errors/Finnish/ERR_WRITE_ERROR --- squid-2.5.STABLE7/errors/Finnish/ERR_WRITE_ERROR Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_WRITE_ERROR Wed Feb 2 15:41:02 2005 @@ -1,13 +1,13 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

    VIRHE

    -

    Pyydettyä URL-osoitetta ei voitu hakea

    +

    Pyydettyä osoitetta ei voitu hakea


    -Yritettäessä hakea URL-osoitetta +Yritettäessä hakea osoitetta %U

    Ilmeni seuraava ongelma: @@ -23,5 +23,6 @@

        %E

    -Kirjoitettaessa tietoa verkkoon ilmeni virhetilanne. Uusi hakupyyntösi. +Kirjoitettaessa tietoa verkkoon tapahtui virhe. Yritä uudestaan.

    +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/ERR_ZERO_SIZE_OBJECT squid-2.5.STABLE8/errors/Finnish/ERR_ZERO_SIZE_OBJECT --- squid-2.5.STABLE7/errors/Finnish/ERR_ZERO_SIZE_OBJECT Wed Aug 28 15:08:01 2002 +++ squid-2.5.STABLE8/errors/Finnish/ERR_ZERO_SIZE_OBJECT Wed Feb 2 15:41:02 2005 @@ -1,13 +1,13 @@ -VIRHE: Pyydettyä URL-osoitetta ei voitu hakea +VIRHE: Pyydettyä osoitetta ei voitu hakea

    VIRHE

    -

    Pyydettyä URL-osoitetta ei voitu hakea

    +

    Pyydettyä osoitetta ei voitu hakea


    -Yritettäessä hakea URL-osoitetta +Yritettäessä hakea osoitetta %U

    Ilmeni seuraava ongelma: @@ -19,5 +19,6 @@

    -Haku ei tuonut Squidille mitään tietoa. +Squid ei saanut vastauksena yhtään dataa.

    +

    Välityspalvelintasi ylläpitää %w. diff -ruN squid-2.5.STABLE7/errors/Finnish/README squid-2.5.STABLE8/errors/Finnish/README --- squid-2.5.STABLE7/errors/Finnish/README Thu Jun 24 14:32:35 1999 +++ squid-2.5.STABLE8/errors/Finnish/README Wed Feb 2 15:41:02 2005 @@ -1 +1,2 @@ Finnish translation by Panu Hällfors +Last revision on 29.1.2005. \ No newline at end of file diff -ruN squid-2.5.STABLE7/errors/French/ERR_INVALID_RESP squid-2.5.STABLE8/errors/French/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/French/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/French/ERR_INVALID_RESP Mon Jan 17 15:13:00 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/German/ERR_INVALID_RESP squid-2.5.STABLE8/errors/German/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/German/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/German/ERR_INVALID_RESP Mon Jan 31 08:05:10 2005 @@ -0,0 +1,29 @@ + + +FEHLER: Der angeforderte URL konnte nicht geholt werden + + +

    FEHLER

    +

    Der angeforderte URL konnte nicht geholt werden

    +
    +

    +Während des Versuches, die Anfrage +

    +%R
    +
    +

    +zu verarbeiten, trat der folgende Fehler auf: +

      +
    • + +Ungültige Antwort + +
    + +

    +Die HTTP Antwortmeldung des kontaktierten Servers konnte nicht verstanden werden +oder war auf andere Weise missgebildet. Bitte kontaktieren Sie den Betreiber der +betreffenden Webseite. Wenn nötig kann Ihr Cache Administrator in der Lage sein, +Sie mit mehr Details über die genaue Ursache des Problems zu versorgen. + +

    Ihr Cache Administrator ist %w. diff -ruN squid-2.5.STABLE7/errors/Hebrew/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Hebrew/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Hebrew/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Hebrew/ERR_INVALID_RESP Mon Jan 17 15:13:01 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/Hungarian/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Hungarian/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Hungarian/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Hungarian/ERR_INVALID_RESP Mon Jan 17 15:13:01 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/Italian/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Italian/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Italian/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Italian/ERR_INVALID_RESP Mon Jan 24 06:22:24 2005 @@ -0,0 +1,29 @@ + + +ERRORE: La URL richiesta non può essere recuperata + + +

    ERRORE

    +

    La URL richiesta non può essere recuperata

    +
    +

    +Mentre si elaborava la richiesta: +

    +%R
    +
    +

    +È avvenuto il seguente errore: +

      +
    • + +Risposta non valida + +
    + +

    +Il messaggio contenente la risposta HTTP ricevuto dal server che si sta +contattando non può essere interpretato od è stato in qualche modo alterato. +Si prega di contattare un operatore del sito. Se necessario, l'amministratore della vostra +cache potrà fornirvi maggiori dettagli sull'esatta natura del problema. + +

    L'amministratore della vostra cache è %w. diff -ruN squid-2.5.STABLE7/errors/Japanese/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Japanese/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Japanese/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Japanese/ERR_INVALID_RESP Mon Jan 17 15:13:02 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/Korean/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Korean/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Korean/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Korean/ERR_INVALID_RESP Mon Jan 17 15:13:03 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_ACCESS_DENIED squid-2.5.STABLE8/errors/Lithuanian/ERR_ACCESS_DENIED --- squid-2.5.STABLE7/errors/Lithuanian/ERR_ACCESS_DENIED Thu Nov 6 08:33:26 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_ACCESS_DENIED Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_CACHE_ACCESS_DENIED squid-2.5.STABLE8/errors/Lithuanian/ERR_CACHE_ACCESS_DENIED --- squid-2.5.STABLE7/errors/Lithuanian/ERR_CACHE_ACCESS_DENIED Thu Nov 6 08:33:26 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_CACHE_ACCESS_DENIED Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Priëjimas prie keđo uţdraustas - +

    KLAIDA

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_CACHE_MGR_ACCESS_DENIED squid-2.5.STABLE8/errors/Lithuanian/ERR_CACHE_MGR_ACCESS_DENIED --- squid-2.5.STABLE7/errors/Lithuanian/ERR_CACHE_MGR_ACCESS_DENIED Thu Nov 6 08:33:26 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_CACHE_MGR_ACCESS_DENIED Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Keđo menedţerio priëjimas uţdraustas - +

    KLAIDA

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_CANNOT_FORWARD squid-2.5.STABLE8/errors/Lithuanian/ERR_CANNOT_FORWARD --- squid-2.5.STABLE7/errors/Lithuanian/ERR_CANNOT_FORWARD Thu Nov 6 08:33:26 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_CANNOT_FORWARD Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_CONNECT_FAIL squid-2.5.STABLE8/errors/Lithuanian/ERR_CONNECT_FAIL --- squid-2.5.STABLE7/errors/Lithuanian/ERR_CONNECT_FAIL Thu Nov 6 08:33:27 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_CONNECT_FAIL Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_DNS_FAIL squid-2.5.STABLE8/errors/Lithuanian/ERR_DNS_FAIL --- squid-2.5.STABLE7/errors/Lithuanian/ERR_DNS_FAIL Thu Nov 6 08:33:27 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_DNS_FAIL Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_FORWARDING_DENIED squid-2.5.STABLE8/errors/Lithuanian/ERR_FORWARDING_DENIED --- squid-2.5.STABLE7/errors/Lithuanian/ERR_FORWARDING_DENIED Thu Nov 6 08:33:27 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_FORWARDING_DENIED Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_FTP_DISABLED squid-2.5.STABLE8/errors/Lithuanian/ERR_FTP_DISABLED --- squid-2.5.STABLE7/errors/Lithuanian/ERR_FTP_DISABLED Thu Nov 6 08:33:27 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_FTP_DISABLED Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_FTP_FAILURE squid-2.5.STABLE8/errors/Lithuanian/ERR_FTP_FAILURE --- squid-2.5.STABLE7/errors/Lithuanian/ERR_FTP_FAILURE Thu Nov 6 08:33:27 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_FTP_FAILURE Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_FTP_FORBIDDEN squid-2.5.STABLE8/errors/Lithuanian/ERR_FTP_FORBIDDEN --- squid-2.5.STABLE7/errors/Lithuanian/ERR_FTP_FORBIDDEN Thu Nov 6 08:33:27 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_FTP_FORBIDDEN Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_FTP_NOT_FOUND squid-2.5.STABLE8/errors/Lithuanian/ERR_FTP_NOT_FOUND --- squid-2.5.STABLE7/errors/Lithuanian/ERR_FTP_NOT_FOUND Thu Nov 6 08:33:27 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_FTP_NOT_FOUND Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_FTP_PUT_CREATED squid-2.5.STABLE8/errors/Lithuanian/ERR_FTP_PUT_CREATED --- squid-2.5.STABLE7/errors/Lithuanian/ERR_FTP_PUT_CREATED Thu Nov 6 08:33:28 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_FTP_PUT_CREATED Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ FTP PUT operacija buvo sëkminga: Failas sukurtas - +

    Operacija buvo sëkminga

    Failas sukurtas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_FTP_PUT_ERROR squid-2.5.STABLE8/errors/Lithuanian/ERR_FTP_PUT_ERROR --- squid-2.5.STABLE7/errors/Lithuanian/ERR_FTP_PUT_ERROR Thu Nov 6 08:33:28 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_FTP_PUT_ERROR Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: FTP uploadas nepavyko - +

    KLAIDA

    FTP PUT/uploadas nepavyko

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_FTP_PUT_MODIFIED squid-2.5.STABLE8/errors/Lithuanian/ERR_FTP_PUT_MODIFIED --- squid-2.5.STABLE7/errors/Lithuanian/ERR_FTP_PUT_MODIFIED Thu Nov 6 08:33:28 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_FTP_PUT_MODIFIED Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ FTP PUT operacija sëkminga: Failas atnaujintas - +

    Operacija sëkminga

    Failas atnaujintas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_FTP_UNAVAILABLE squid-2.5.STABLE8/errors/Lithuanian/ERR_FTP_UNAVAILABLE --- squid-2.5.STABLE7/errors/Lithuanian/ERR_FTP_UNAVAILABLE Thu Nov 6 08:33:28 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_FTP_UNAVAILABLE Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_INVALID_REQ squid-2.5.STABLE8/errors/Lithuanian/ERR_INVALID_REQ --- squid-2.5.STABLE7/errors/Lithuanian/ERR_INVALID_REQ Thu Feb 12 10:22:23 2004 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_INVALID_REQ Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Lithuanian/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Lithuanian/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_INVALID_RESP Thu Feb 3 09:19:52 2005 @@ -0,0 +1,27 @@ + + +KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas + + +

    KLAIDA

    +

    Puslapis nurodytu adresu negali bűti atsiřstas

    +
    +

    +Bandant ávykdyti uţklausŕ: +

    +%R
    +
    +

    +Gautas klaidos praneđimas: +

      +
    • + +Klaidingas atsakymas + +
    + +

    +Iđ serverio gautas nesuprantamas HTTP atsakymas arba jis buvo klaidingai +suformuotas. Susisiekite su serverio operatoriumi. Jűsř proxy serverio +administratorius gali suteikti jums daugiau informacijos apie điŕ problemŕ. +

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_INVALID_URL squid-2.5.STABLE8/errors/Lithuanian/ERR_INVALID_URL --- squid-2.5.STABLE7/errors/Lithuanian/ERR_INVALID_URL Thu Nov 6 08:33:28 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_INVALID_URL Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_LIFETIME_EXP squid-2.5.STABLE8/errors/Lithuanian/ERR_LIFETIME_EXP --- squid-2.5.STABLE7/errors/Lithuanian/ERR_LIFETIME_EXP Thu Nov 6 08:33:28 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_LIFETIME_EXP Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_NO_RELAY squid-2.5.STABLE8/errors/Lithuanian/ERR_NO_RELAY --- squid-2.5.STABLE7/errors/Lithuanian/ERR_NO_RELAY Thu Nov 6 08:33:29 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_NO_RELAY Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_ONLY_IF_CACHED_MISS squid-2.5.STABLE8/errors/Lithuanian/ERR_ONLY_IF_CACHED_MISS --- squid-2.5.STABLE7/errors/Lithuanian/ERR_ONLY_IF_CACHED_MISS Thu Nov 6 08:33:29 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_ONLY_IF_CACHED_MISS Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_READ_ERROR squid-2.5.STABLE8/errors/Lithuanian/ERR_READ_ERROR --- squid-2.5.STABLE7/errors/Lithuanian/ERR_READ_ERROR Thu Nov 6 08:33:29 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_READ_ERROR Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_READ_TIMEOUT squid-2.5.STABLE8/errors/Lithuanian/ERR_READ_TIMEOUT --- squid-2.5.STABLE7/errors/Lithuanian/ERR_READ_TIMEOUT Thu Nov 6 08:33:29 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_READ_TIMEOUT Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_SHUTTING_DOWN squid-2.5.STABLE8/errors/Lithuanian/ERR_SHUTTING_DOWN --- squid-2.5.STABLE7/errors/Lithuanian/ERR_SHUTTING_DOWN Thu Nov 6 08:33:29 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_SHUTTING_DOWN Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_SOCKET_FAILURE squid-2.5.STABLE8/errors/Lithuanian/ERR_SOCKET_FAILURE --- squid-2.5.STABLE7/errors/Lithuanian/ERR_SOCKET_FAILURE Thu Nov 6 08:33:29 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_SOCKET_FAILURE Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_TOO_BIG squid-2.5.STABLE8/errors/Lithuanian/ERR_TOO_BIG --- squid-2.5.STABLE7/errors/Lithuanian/ERR_TOO_BIG Thu Nov 6 08:33:30 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_TOO_BIG Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_UNSUP_REQ squid-2.5.STABLE8/errors/Lithuanian/ERR_UNSUP_REQ --- squid-2.5.STABLE7/errors/Lithuanian/ERR_UNSUP_REQ Thu Nov 6 08:33:30 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_UNSUP_REQ Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_URN_RESOLVE squid-2.5.STABLE8/errors/Lithuanian/ERR_URN_RESOLVE --- squid-2.5.STABLE7/errors/Lithuanian/ERR_URN_RESOLVE Thu Nov 6 08:33:30 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_URN_RESOLVE Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Nurodytas URN negali bűti atsiřstas - +

    KLAIDA

    puslapis nurodytam URN negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_WRITE_ERROR squid-2.5.STABLE8/errors/Lithuanian/ERR_WRITE_ERROR --- squid-2.5.STABLE7/errors/Lithuanian/ERR_WRITE_ERROR Thu Nov 6 08:33:30 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_WRITE_ERROR Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Lithuanian/ERR_ZERO_SIZE_OBJECT squid-2.5.STABLE8/errors/Lithuanian/ERR_ZERO_SIZE_OBJECT --- squid-2.5.STABLE7/errors/Lithuanian/ERR_ZERO_SIZE_OBJECT Thu Nov 6 08:33:30 2003 +++ squid-2.5.STABLE8/errors/Lithuanian/ERR_ZERO_SIZE_OBJECT Thu Feb 3 09:19:52 2005 @@ -1,7 +1,7 @@ KLAIDA: Puslapis nurodytu adresu negali bűti atsiřstas - +

    KLAIDA

    Puslapis nurodytu adresu negali bűti atsiřstas

    diff -ruN squid-2.5.STABLE7/errors/Polish/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Polish/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Polish/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Polish/ERR_INVALID_RESP Mon Jan 17 15:13:03 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/Portuguese/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Portuguese/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Portuguese/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Portuguese/ERR_INVALID_RESP Mon Jan 17 15:13:03 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/Romanian/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Romanian/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Romanian/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Romanian/ERR_INVALID_RESP Mon Jan 17 15:13:03 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/Russian-1251/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Russian-1251/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Russian-1251/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Russian-1251/ERR_INVALID_RESP Mon Jan 17 15:13:03 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/Russian-koi8-r/ERR_FTP_FORBIDDEN squid-2.5.STABLE8/errors/Russian-koi8-r/ERR_FTP_FORBIDDEN --- squid-2.5.STABLE7/errors/Russian-koi8-r/ERR_FTP_FORBIDDEN Wed Aug 28 15:08:11 2002 +++ squid-2.5.STABLE8/errors/Russian-koi8-r/ERR_FTP_FORBIDDEN Tue Feb 1 08:27:13 2005 @@ -1,19 +1,19 @@ - -ERROR: The requested URL could not be retrieved + +ďűéâëá: úÁĐŇĎŰĹÎÎŮĘ URL ÎĹ ÍĎÖĹÔ ÂŮÔŘ ÄĎÓÔÁ×ĚĹÎ -

    ERROR

    -

    The requested URL could not be retrieved

    +

    ďűéâëá:

    +

    úÁĐŇĎŰĹÎÎŮĘ URL ÎĹ ÍĎÖĹÔ ÂŮÔŘ ÄĎÓÔÁ×ĚĹÎ


    -An FTP authentication failure occurred -while trying to retrieve the URL: +đŇĎÉÚĎŰĚÁ ĎŰÉÂËÁ FTP-ÁŐÄĹÎÔÉĆÉËÁĂÉÉ +×Ď ×ŇĹÍŃ ÄĎÓÔÁ×ËÉ URL: %U

    -Squid sent the following FTP command: +Squid ĐĎÓĚÁĚ ÓĚĹÄŐÝŐŔ FTP-ËĎÍÁÎÄŐ:

    %f
    -and then received this reply +É ĐĎĚŐŢÉĚ ĎÔ×ĹÔ:
    %F
    %g

    diff -ruN squid-2.5.STABLE7/errors/Russian-koi8-r/ERR_FTP_NOT_FOUND squid-2.5.STABLE8/errors/Russian-koi8-r/ERR_FTP_NOT_FOUND --- squid-2.5.STABLE7/errors/Russian-koi8-r/ERR_FTP_NOT_FOUND Wed Aug 28 15:08:11 2002 +++ squid-2.5.STABLE8/errors/Russian-koi8-r/ERR_FTP_NOT_FOUND Tue Feb 1 08:27:13 2005 @@ -1,23 +1,24 @@ - -ERROR: The requested URL could not be retrieved + + +ďűéâëá: úÁĐŇĎŰĹÎÎŮĘ URL ÎĹ ÍĎÖĹÔ ÂŮÔŘ ÄĎÓÔÁ×ĚĹÎ -

    ERROR

    -

    The requested URL could not be retrieved

    +

    ďűéâëá:

    +

    úÁĐŇĎŰĹÎÎŮĘ URL ÎĹ ÍĎÖĹÔ ÂŮÔŘ ÄĎÓÔÁ×ĚĹÎ


    -The following URL could not be retrieved: +äÁÎÎŮĘ URL ÎĹ ÍĎÖĹÔ ÂŮÔŘ ÄĎÓÔÁ×ĚĹÎ: %U

    -Squid sent the following FTP command: +Squid ĐĎÓĚÁĚ ÓĚĹÄŐÝŐŔ FTP-ËĎÍÁÎÄŐ:

    %f
    -and then received this reply +É ĐĎĚŐŢÉĚ ĎÔ×ĹÔ:
    %F
    %g

    -This might be caused by an FTP URL with an absolute path (which does -not comply with RFC 1738). If this is the cause, then the file -can be found at %B. +üÔĎ ÍĎÖĹÔ ÂŮÔŘ ÓĚĹÄÓÔ×ÉĹÍ ÚÁĐŇĎÓÁ FTP URL Ó ÁÂÓĎĚŔÔÎŮÍ ĐŐÔĹÍ (ŢÔĎ ÎĹ ÓĎĎÔ×ĹÔÓÔ×ŐĹÔ +RFC 1738). ĺÓĚÉ ÜÔĎ Ń×ĚŃĹÔÓŃ ĐŇÉŢÉÎĎĘ ĎŰÉÂËÉ, ÔĎÇÄÁ ĆÁĘĚ ÍĎÖĹÔ ÎÁČĎÄÉÔÓŃ ĐĎ +URL %B.

    diff -ruN squid-2.5.STABLE7/errors/Russian-koi8-r/ERR_FTP_UNAVAILABLE squid-2.5.STABLE8/errors/Russian-koi8-r/ERR_FTP_UNAVAILABLE --- squid-2.5.STABLE7/errors/Russian-koi8-r/ERR_FTP_UNAVAILABLE Wed Aug 28 15:08:11 2002 +++ squid-2.5.STABLE8/errors/Russian-koi8-r/ERR_FTP_UNAVAILABLE Tue Feb 1 08:27:13 2005 @@ -1,18 +1,18 @@ - -ERROR: The requested URL could not be retrieved + +ďűéâëá: úÁĐŇĎŰĹÎÎŮĘ URL ÎĹ ÍĎÖĹÔ ÂŮÔŘ ÄĎÓÔÁ×ĚĹÎ -

    ERROR

    -

    The requested URL could not be retrieved

    +

    ďűéâëá:

    +

    úÁĐŇĎŰĹÎÎŮĘ URL ÎĹ ÍĎÖĹÔ ÂŮÔŘ ÄĎÓÔÁ×ĚĹÎ


    -The FTP server was too busy while trying to retrieve the URL: +FTP ÓĹŇ×ĹŇ ĎËÁÚÁĚÓŃ ĐĹŇĹÇŇŐÖĹÎ ×Ď ×ŇĹÍŃ ĐĎĐŮÔËÉ ÄĎÓÔÁ×ÉÔŘ URL: %U

    -Squid sent the following FTP command: +Squid ĐĎÓĚÁĚ ÓĚĹÄŐÝŐŔ FTP-ËĎÍÁÎÄŐ:

    %f
    -and then received this reply +É ĐĎĚŐŢÉĚ ĎÔ×ĹÔ:
    %F
    %g

    diff -ruN squid-2.5.STABLE7/errors/Russian-koi8-r/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Russian-koi8-r/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Russian-koi8-r/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Russian-koi8-r/ERR_INVALID_RESP Tue Feb 1 08:27:13 2005 @@ -0,0 +1,31 @@ + + + +ďűéâëá: úÁĐŇĎŰĹÎÎŮĘ URL ÎĹ ÍĎÖĹÔ ÂŮÔŘ ÄĎÓÔÁ×ĚĹÎ + + +

    ďűéâëá

    +

    úÁĐŇĎŰĹÎÎŮĘ URL ÎĹ ÍĎÖĹÔ ÂŮÔŘ ÄĎÓÔÁ×ĚĹÎ.

    +
    +

    +÷Ď ×ŇĹÍŃ ĎÂŇÁÂĎÔËÉ ÚÁĐŇĎÓÁ: +

    +%R
    +
    +

    +đŇĎÉÚĎŰĚÁ ÓĚĹÄŐŔÝÁŃ ĎŰÉÂËÁ: +

      +
    • + +îĹ×ĹŇÎŮĘ ÚÁĐŇĎÓ. + +
    + +

    +HTTP ĎÔ×ĹÔ, ĐĎĚŐŢĹÎÎŮĘ ĎÔ ÚÁĐŇÁŰÉ×ÁĹÍĎÇĎ ÓĹŇ×ĹŇÁ ÎĹĐĎÎŃÔĹÎ ÉĚÉ +ÉÚŐŇĎÄĎ×ÁÎ. ďÂŇÁÝÁĘÔĹÓŘ Ë ÁÄÍÉÎÉÓÔŇÁÔĎŇÁÍ ÚÁĐŇÁŰÉ×ÁĹÍĎÇĎ ÓÁĘÔÁ. +áÄÍÉÎÉÓÔŇÁÔĎŇ ×ÁŰĹÇĎ ĐŇĎËÓÉ-ÓĹŇ×ĹŇÁ ÍĎÖĹÔ ĐŇÉ ÎĹĎÂČĎÄÉÍĎÓÔÉ +ÂĎĚĹĹ ÄĹÔÁĚŘÎĎ ĎĐÉÓÁÔŘ ÓŐÝĹÓÔ×Ď ĐŇĎÂĚĹÍŮ. + +

    +áÄŇĹÓ áÄÍÉÎÉÓÔŇÁÔĎŇÁ ×ÁŰĹÇĎ ĐŇĎËÓÉ-ÓĹŇ×ĹŇÁ: %w. diff -ruN squid-2.5.STABLE7/errors/Russian-koi8-r/ERR_SHUTTING_DOWN squid-2.5.STABLE8/errors/Russian-koi8-r/ERR_SHUTTING_DOWN --- squid-2.5.STABLE7/errors/Russian-koi8-r/ERR_SHUTTING_DOWN Wed Aug 28 15:08:11 2002 +++ squid-2.5.STABLE8/errors/Russian-koi8-r/ERR_SHUTTING_DOWN Tue Feb 1 08:27:13 2005 @@ -1,19 +1,18 @@ - -ERROR: The requested URL could not be retrieved + +ďűéâëá: úÁĐŇĎŰĹÎÎŮĘ URL ÎĹ ÍĎÖĹÔ ÂŮÔŘ ÄĎÓÔÁ×ĚĹÎ -

    ERROR

    -

    The requested URL could not be retrieved

    +

    ďűéâëá:

    +

    úÁĐŇĎŰĹÎÎŮĘ URL ÎĹ ÍĎÖĹÔ ÂŮÔŘ ÄĎÓÔÁ×ĚĹÎ


    -While trying to retrieve the URL: +÷Ď ×ŇĹÍŃ ÄĎÓÔÁ×ËÉ URL: %U

    -The following error was encountered: +đŇĎÉÚĎŰĚÁ ÓĚĹÄŐŔÝÁŃ ĎŰÉÂËÁ:

      -This cache is in the process of shutting down and can not -service your request at this time. Please retry your -request again soon. +üÔĎÔ ĐŇĎËÓÉ-ÓĹŇ×ĹŇ ÎÁČĎÄÉÔÓŃ × ĐŇĎĂĹÓÓĹ ×ŮËĚŔŢĹÎÉŃ É ÎĹ ÍĎÖĹÔ ĎÂÓĚŐÖÉÔŘ ×ÁŰ +ÚÁĐŇĎÓ × ÎÁÓÔĎŃÝĹĹ ×ŇĹÍŃ. đĎĐŇĎÂŐĘÔĹ ĐĎ×ÔĎŇÉÔŘ ÚÁĐŇĎÓ ŢĹŇĹÚ ÎĹËĎÔĎŇĎĹ ×ŇĹÍŃ.

      diff -ruN squid-2.5.STABLE7/errors/Russian-koi8-r/ERR_TOO_BIG squid-2.5.STABLE8/errors/Russian-koi8-r/ERR_TOO_BIG --- squid-2.5.STABLE7/errors/Russian-koi8-r/ERR_TOO_BIG Wed Aug 28 15:08:11 2002 +++ squid-2.5.STABLE8/errors/Russian-koi8-r/ERR_TOO_BIG Tue Feb 1 08:27:13 2005 @@ -1,22 +1,33 @@ - -ERROR: The requested URL could not be retrieved + + +ďűéâëá: úÁĐŇĎŰĹÎÎŮĘ URL ÎĹ ÍĎÖĹÔ ÂŮÔŘ ÄĎÓÔÁ×ĚĹÎ -

      ERROR

      -

      The requested URL could not be retrieved

      +

      ďűéâëá

      +

      úÁĐŇĎŰĹÎÎŮĘ URL ÎĹ ÍĎÖĹÔ ÂŮÔŘ ÄĎÓÔÁ×ĚĹÎ


      -While trying to retrieve the URL: +÷Ď ×ŇĹÍŃ ÄĎÓÔÁ×ËÉ URL: %U

      -The following error was encountered: +đŇĎÉÚĎŰĚÁ ÓĚĹÄŐŔÝÁŃ ĎŰÉÂËÁ:

      • -The request or reply is too large. +úÁĐŇĎÓ ÉĚÉ ĎÔ×ĹÔ ÓĚÉŰËĎÍ ÂĎĎĚŘŰĎĘ.

        +ĺÓĚÉ ÷Ů ÄĹĚÁĹÔĹ POST ÉĚÉ PUT ÚÁĐŇĎÓ, ÔĎÇÄÁ ÔĹĚĎ ÚÁĐŇĎÓÁ (ÔÁ ŰÔŐËÁ, +ËĎÔĎŇŐŔ ČĎÔÉÔĹ ×ŮĚĎÖÉÔŘ ×Ď ×ÎĹ) ÓĚÉŰËĎÍ ÂĎĚŘŰĎĹ. +
        +ĺÓĚÉ ÷Ů ÄĹĚÁĹÔĹ GET ÚÁĐŇĎÓ, ÔĎÇÄÁ ÔĹĚĎ ĎÔ×ĹÔÁ (ÔÁ ŰÔŐËÁ, ËĎÔĎŇŐŔ +×Ů ČĎÔÉÔĹ ĐĎĚŐŢÉÔŘ ÉÚ×ÎĹ) - ÓĚÉŰËĎÍ ÂĎĚŘŰĎĹ. +
        +ďÇŇÁÎÉŢĹÎÉŃ ŐÓÔÁÎĎ×ĚĹÎŮ ÷ÁŰÉÍ ĐĎÓÔÁ×ÝÉËĎÍ ŐÓĚŐÇ éÎÔĹŇÎĹÔ. +đĎÖÁĚŐĘÓÔÁ, Ó×ŃÖÉÔĹÓŘ Ó áÍÉÎÉÓÔŇÁÔĎŇĎÍ ×ÁŰĹÇĎ ĐŇĎËÓÉ-ÓĹŇ×ĹŇÁ, +ĹÓĚÉ ÓŢÉÔÁĹÔĹ ÜÔĎ ÎĹĐŇÁ×ÉĚŘÎŮÍ. +

        If you are making a POST or PUT request, then your request body (the thing you are trying to upload) is too large. If you are making a GET request, then the reply body (what you are trying @@ -25,4 +36,4 @@ contact them directly if you feel this is an error.

      -Your cache administrator is %w. +áÄŇĹÓ áÄÍÉÎÉÓÔŇÁÔĎŇÁ ×ÁŰĹÇĎ ĐŇĎËÓÉ-ÓĹŇ×ĹŇÁ: %w. diff -ruN squid-2.5.STABLE7/errors/Serbian/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Serbian/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Serbian/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Serbian/ERR_INVALID_RESP Mon Jan 17 15:13:03 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

      ERROR

      +

      The requested URL could not be retrieved

      +
      +

      +While trying to process the request: +

      +%R
      +
      +

      +The following error was encountered: +

        +
      • + +Invalid Response + +
      + +

      +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

      Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/Simplify_Chinese/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Simplify_Chinese/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Simplify_Chinese/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Simplify_Chinese/ERR_INVALID_RESP Mon Jan 17 15:13:04 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

      ERROR

      +

      The requested URL could not be retrieved

      +
      +

      +While trying to process the request: +

      +%R
      +
      +

      +The following error was encountered: +

        +
      • + +Invalid Response + +
      + +

      +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

      Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_ACCESS_DENIED squid-2.5.STABLE8/errors/Slovak/ERR_ACCESS_DENIED --- squid-2.5.STABLE7/errors/Slovak/ERR_ACCESS_DENIED Mon Aug 26 19:17:27 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_ACCESS_DENIED Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_CACHE_ACCESS_DENIED squid-2.5.STABLE8/errors/Slovak/ERR_CACHE_ACCESS_DENIED --- squid-2.5.STABLE7/errors/Slovak/ERR_CACHE_ACCESS_DENIED Mon Aug 26 19:17:27 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_CACHE_ACCESS_DENIED Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Cache Access Denied diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_CACHE_MGR_ACCESS_DENIED squid-2.5.STABLE8/errors/Slovak/ERR_CACHE_MGR_ACCESS_DENIED --- squid-2.5.STABLE7/errors/Slovak/ERR_CACHE_MGR_ACCESS_DENIED Mon Aug 26 19:17:27 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_CACHE_MGR_ACCESS_DENIED Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Cache Manager Access Denied diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_CANNOT_FORWARD squid-2.5.STABLE8/errors/Slovak/ERR_CANNOT_FORWARD --- squid-2.5.STABLE7/errors/Slovak/ERR_CANNOT_FORWARD Mon Aug 26 19:17:27 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_CANNOT_FORWARD Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_CONNECT_FAIL squid-2.5.STABLE8/errors/Slovak/ERR_CONNECT_FAIL --- squid-2.5.STABLE7/errors/Slovak/ERR_CONNECT_FAIL Mon Aug 26 19:17:27 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_CONNECT_FAIL Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_DNS_FAIL squid-2.5.STABLE8/errors/Slovak/ERR_DNS_FAIL --- squid-2.5.STABLE7/errors/Slovak/ERR_DNS_FAIL Mon Aug 26 19:17:27 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_DNS_FAIL Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_FORWARDING_DENIED squid-2.5.STABLE8/errors/Slovak/ERR_FORWARDING_DENIED --- squid-2.5.STABLE7/errors/Slovak/ERR_FORWARDING_DENIED Mon Aug 26 19:17:27 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_FORWARDING_DENIED Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_FTP_DISABLED squid-2.5.STABLE8/errors/Slovak/ERR_FTP_DISABLED --- squid-2.5.STABLE7/errors/Slovak/ERR_FTP_DISABLED Mon Aug 26 19:17:27 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_FTP_DISABLED Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_FTP_FAILURE squid-2.5.STABLE8/errors/Slovak/ERR_FTP_FAILURE --- squid-2.5.STABLE7/errors/Slovak/ERR_FTP_FAILURE Mon Aug 26 19:17:27 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_FTP_FAILURE Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_FTP_FORBIDDEN squid-2.5.STABLE8/errors/Slovak/ERR_FTP_FORBIDDEN --- squid-2.5.STABLE7/errors/Slovak/ERR_FTP_FORBIDDEN Mon Aug 26 19:17:27 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_FTP_FORBIDDEN Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_FTP_NOT_FOUND squid-2.5.STABLE8/errors/Slovak/ERR_FTP_NOT_FOUND --- squid-2.5.STABLE7/errors/Slovak/ERR_FTP_NOT_FOUND Mon Aug 26 19:17:27 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_FTP_NOT_FOUND Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovane URL je nedostupne diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_FTP_PUT_CREATED squid-2.5.STABLE8/errors/Slovak/ERR_FTP_PUT_CREATED --- squid-2.5.STABLE7/errors/Slovak/ERR_FTP_PUT_CREATED Mon Aug 26 19:17:27 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_FTP_PUT_CREATED Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + operacia FTP PUT uspesna: subor vytvoreny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_FTP_PUT_ERROR squid-2.5.STABLE8/errors/Slovak/ERR_FTP_PUT_ERROR --- squid-2.5.STABLE7/errors/Slovak/ERR_FTP_PUT_ERROR Mon Aug 26 19:17:28 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_FTP_PUT_ERROR Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: neuspesny FTP upload diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_FTP_PUT_MODIFIED squid-2.5.STABLE8/errors/Slovak/ERR_FTP_PUT_MODIFIED --- squid-2.5.STABLE7/errors/Slovak/ERR_FTP_PUT_MODIFIED Mon Aug 26 19:17:28 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_FTP_PUT_MODIFIED Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + operacia FTP PUT uspesna: subor aktualizovany diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_FTP_UNAVAILABLE squid-2.5.STABLE8/errors/Slovak/ERR_FTP_UNAVAILABLE --- squid-2.5.STABLE7/errors/Slovak/ERR_FTP_UNAVAILABLE Mon Aug 26 19:17:28 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_FTP_UNAVAILABLE Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovane URL je nedostupne diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_INVALID_REQ squid-2.5.STABLE8/errors/Slovak/ERR_INVALID_REQ --- squid-2.5.STABLE7/errors/Slovak/ERR_INVALID_REQ Mon Aug 26 19:17:28 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_INVALID_REQ Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny @@ -8,7 +8,7 @@

      Požadovaný dokument je nedostupný


      -While trying to process the request: +Pri pokuse o prístup k:

       %R
       
      @@ -32,3 +32,5 @@
    • Zakázaný znak v názve serveru; podtrhovník nie je povolený

    + +

    Vaším cache administrátorom je %w.

    diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Slovak/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Slovak/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Slovak/ERR_INVALID_RESP Mon Jan 31 08:23:36 2005 @@ -0,0 +1,31 @@ + + + +CHYBA: Pozadovany dokument je nedostupny + + +

    CHYBA

    +

    Požadovaný dokument je nedostupný

    +
    +

    +Pri pokuse o prístup k: +

    +%R
    +
    +

    +došlo k nasledovnej chybe: +

      +
    • + +Invalid Response + +
    + +

    +HTTP odpovedi obdržanej z kontaktovaného servera nebolo možné porozumieť +alebo bola nejako poškodená. Kontaktujte prosím správcu servera. V prípade +potreby Vám Váš cache administrátor môže poskytnúť detaily o presnej povahe +problému. +

    + +

    Vaším cache administrátorom je %w.

    diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_INVALID_URL squid-2.5.STABLE8/errors/Slovak/ERR_INVALID_URL --- squid-2.5.STABLE7/errors/Slovak/ERR_INVALID_URL Mon Aug 26 19:17:28 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_INVALID_URL Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_LIFETIME_EXP squid-2.5.STABLE8/errors/Slovak/ERR_LIFETIME_EXP --- squid-2.5.STABLE7/errors/Slovak/ERR_LIFETIME_EXP Mon Aug 26 19:17:28 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_LIFETIME_EXP Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_NO_RELAY squid-2.5.STABLE8/errors/Slovak/ERR_NO_RELAY --- squid-2.5.STABLE7/errors/Slovak/ERR_NO_RELAY Mon Aug 26 19:17:28 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_NO_RELAY Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_ONLY_IF_CACHED_MISS squid-2.5.STABLE8/errors/Slovak/ERR_ONLY_IF_CACHED_MISS --- squid-2.5.STABLE7/errors/Slovak/ERR_ONLY_IF_CACHED_MISS Mon Aug 26 19:17:28 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_ONLY_IF_CACHED_MISS Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_READ_ERROR squid-2.5.STABLE8/errors/Slovak/ERR_READ_ERROR --- squid-2.5.STABLE7/errors/Slovak/ERR_READ_ERROR Mon Aug 26 19:17:28 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_READ_ERROR Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_READ_TIMEOUT squid-2.5.STABLE8/errors/Slovak/ERR_READ_TIMEOUT --- squid-2.5.STABLE7/errors/Slovak/ERR_READ_TIMEOUT Mon Aug 26 19:17:28 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_READ_TIMEOUT Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_SHUTTING_DOWN squid-2.5.STABLE8/errors/Slovak/ERR_SHUTTING_DOWN --- squid-2.5.STABLE7/errors/Slovak/ERR_SHUTTING_DOWN Mon Aug 26 19:17:28 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_SHUTTING_DOWN Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_SOCKET_FAILURE squid-2.5.STABLE8/errors/Slovak/ERR_SOCKET_FAILURE --- squid-2.5.STABLE7/errors/Slovak/ERR_SOCKET_FAILURE Mon Aug 26 19:17:28 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_SOCKET_FAILURE Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_TOO_BIG squid-2.5.STABLE8/errors/Slovak/ERR_TOO_BIG --- squid-2.5.STABLE7/errors/Slovak/ERR_TOO_BIG Wed Aug 28 15:08:14 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_TOO_BIG Tue Feb 1 16:30:20 2005 @@ -1,29 +1,31 @@ -ERROR: The requested URL could not be retrieved +CHYBA: Pozadovany dokument je nedostupny -

    ERROR

    -

    The requested URL could not be retrieved

    +

    CHYBA

    +

    Požadovaný dokument je nedostupný


    -While trying to retrieve the URL: +Pri pokuse o prístup k: %U

    -The following error was encountered: +došlo k nasledovnej chybe:

    • The request or reply is too large. -

      -If you are making a POST or PUT request, then your request body -(the thing you are trying to upload) is too large. If you are -making a GET request, then the reply body (what you are trying -to download) is too large. These limits have been established -by the Internet Service Provider who operates this cache. Please -contact them directly if you feel this is an error.

    +

    -Your cache administrator is %w. +Ak odosielate POST alebo PUT požiadavku, tak telo Vašej požiadavky +(tá vec, ktorú sa snažíte odoslať na server) je priveľké. Ak odosielate GET +požiadavku, tak telo odpovede (to, čo sa snažíte prevziať zo servera) je +priveľké. Tieto obmedzenia boli stanovené Internet Service Providerom ktorý +prevádzkuje túto cache. Kontaktujte ho prosím priamo ak si myslíte, že toto +obmedzenie je chybné. +

    + +

    Vaším cache administrátorom je %w.

    diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_UNSUP_REQ squid-2.5.STABLE8/errors/Slovak/ERR_UNSUP_REQ --- squid-2.5.STABLE7/errors/Slovak/ERR_UNSUP_REQ Mon Aug 26 19:17:28 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_UNSUP_REQ Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_URN_RESOLVE squid-2.5.STABLE8/errors/Slovak/ERR_URN_RESOLVE --- squid-2.5.STABLE7/errors/Slovak/ERR_URN_RESOLVE Mon Aug 26 19:17:28 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_URN_RESOLVE Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovane URN je nedostupne diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_WRITE_ERROR squid-2.5.STABLE8/errors/Slovak/ERR_WRITE_ERROR --- squid-2.5.STABLE7/errors/Slovak/ERR_WRITE_ERROR Mon Aug 26 19:17:28 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_WRITE_ERROR Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Slovak/ERR_ZERO_SIZE_OBJECT squid-2.5.STABLE8/errors/Slovak/ERR_ZERO_SIZE_OBJECT --- squid-2.5.STABLE7/errors/Slovak/ERR_ZERO_SIZE_OBJECT Mon Aug 26 19:17:28 2002 +++ squid-2.5.STABLE8/errors/Slovak/ERR_ZERO_SIZE_OBJECT Mon Jan 31 08:26:00 2005 @@ -1,6 +1,6 @@ - + CHYBA: Pozadovany dokument je nedostupny diff -ruN squid-2.5.STABLE7/errors/Spanish/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Spanish/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Spanish/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Spanish/ERR_INVALID_RESP Mon Jan 17 15:13:04 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/Swedish/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Swedish/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Swedish/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Swedish/ERR_INVALID_RESP Mon Jan 24 07:28:59 2005 @@ -0,0 +1,30 @@ + + +Fel: Begärd URL kunde inte hämtas + + +

    FEL

    +

    Begärd URL kunde inte hämtas

    +
    +

    +Vid försöket att hämta URL: +%U +

    +Mottogs följande fel: +

      +
    • + +Felaktigt svarsmeddelande + +
    + +

    +HTTP svarsmeddelandet ifrån den kontaktade servern är felaktigt och +kunde inte tolkas. Vänligen kontakta den ansvariga för webbservern ifråga. +Din cacheserver administratör man eventuellt ge dig mera information om +det specifika problemet med denna sida. +

    + +

    Din cacheserver administratör är %w. +

    + diff -ruN squid-2.5.STABLE7/errors/Traditional_Chinese/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Traditional_Chinese/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Traditional_Chinese/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Traditional_Chinese/ERR_INVALID_RESP Mon Jan 17 15:13:04 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/errors/Turkish/ERR_INVALID_RESP squid-2.5.STABLE8/errors/Turkish/ERR_INVALID_RESP --- squid-2.5.STABLE7/errors/Turkish/ERR_INVALID_RESP Wed Dec 31 17:00:00 1969 +++ squid-2.5.STABLE8/errors/Turkish/ERR_INVALID_RESP Mon Jan 17 15:13:04 2005 @@ -0,0 +1,29 @@ + + +ERROR: The requested URL could not be retrieved + + +

    ERROR

    +

    The requested URL could not be retrieved

    +
    +

    +While trying to process the request: +

    +%R
    +
    +

    +The following error was encountered: +

      +
    • + +Invalid Response + +
    + +

    +The HTTP Response message received from the contacted server +could not be understood or was otherwise malformed. Please contact +the site operator. Your cache administrator may be able to provide +you with more details about the exact nature of the problem if needed. + +

    Your cache administrator is %w. diff -ruN squid-2.5.STABLE7/helpers/basic_auth/LDAP/squid_ldap_auth.8 squid-2.5.STABLE8/helpers/basic_auth/LDAP/squid_ldap_auth.8 --- squid-2.5.STABLE7/helpers/basic_auth/LDAP/squid_ldap_auth.8 Sat Jul 17 09:00:12 2004 +++ squid-2.5.STABLE8/helpers/basic_auth/LDAP/squid_ldap_auth.8 Sun Jan 30 12:28:56 2005 @@ -1,4 +1,4 @@ -.TH squid_ldap_auth 8 "17 July 2004" "Squid LDAP Auth" +.TH squid_ldap_auth 8 "14 January 2005" "Squid LDAP Auth" . .SH NAME squid_ldap_auth - Squid LDAP authentication helper @@ -13,6 +13,16 @@ .SH DESCRIPTION This helper allows Squid to connect to a LDAP directory to validate the user name and password of Basic HTTP authentication. +LDAP options are specified as parameters on the command line, +while the username(s) and password(s) to be checked against the +LDAP directory are specified on subsequent lines of input to the +helper, one username/password pair per line separated by a space. +.P +As expected by the basic authentication construct of Squid, after +specifying a username and password followed by a new line, this +helper will produce either OK or ERR on the following line +to show if the specified credentials are correct according to +the LDAP directory. .P The program has two major modes of operation. In the default mode of operation the users DN is constructed using the base DN and @@ -133,6 +143,10 @@ Specify an alternate TCP port where the ldap server is listening if other than the default LDAP port 389. Can also be specified within the server specificiation by using servername:port syntax. +. +.TP +.BI -v " 2|3" +LDAP protocol version. Defaults to 2 if not specified. . .TP .BI -Z diff -ruN squid-2.5.STABLE7/helpers/basic_auth/LDAP/squid_ldap_auth.c squid-2.5.STABLE8/helpers/basic_auth/LDAP/squid_ldap_auth.c --- squid-2.5.STABLE7/helpers/basic_auth/LDAP/squid_ldap_auth.c Tue Aug 10 03:39:29 2004 +++ squid-2.5.STABLE8/helpers/basic_auth/LDAP/squid_ldap_auth.c Sat Feb 5 03:53:07 2005 @@ -30,6 +30,10 @@ * or (at your option) any later version. * * Changes: + * 2005-01-07: Henrik Nordstrom + * - Added some sanity checks on login names to avoid + * users bypassing equality checks by exploring the + * overly helpful match capabilities of LDAP * 2004-07-17: Henrik Nordstrom * - Corrected non-persistent mode to only issue one * ldap_bind per connection. @@ -83,7 +87,7 @@ #include #include #include - +#include #include "util.h" #define PROGRAM_NAME "squid_ldap_auth" @@ -117,6 +121,10 @@ /* Yuck.. we need to glue to different versions of the API */ +#ifndef LDAP_NO_ATTRS +#define LDAP_NO_ATTRS "1.1" +#endif + #if defined(LDAP_API_VERSION) && LDAP_API_VERSION > 1823 static int squid_ldap_errno(LDAP * ld) @@ -261,6 +269,32 @@ return ld; } +/* Make a sanity check on the username to reject oddly typed names */ +static int +validUsername(const char *user) +{ + const unsigned char *p = user; + + /* Leading whitespace? */ + if (isspace(p[0])) + return 0; + while(p[0] && p[1]) { + if (isspace(p[0])) { + /* More than one consequitive space? */ + if (isspace(p[1])) + return 0; + /* or odd space type character used? */ + if (p[0] != ' ') + return 0; + } + p++; + } + /* Trailing whitespace? */ + if (isspace(p[0])) + return 0; + return 1; +} + int main(int argc, char **argv) { @@ -481,6 +515,10 @@ } rfc1738_unescape(user); rfc1738_unescape(passwd); + if (!validUsername(user)) { + printf("ERR\n"); + continue; + } tryagain = (ld != NULL); recover: if (ld == NULL && persistent) @@ -552,8 +590,7 @@ char escaped_login[256]; LDAPMessage *res = NULL; LDAPMessage *entry; - char *searchattr[] = - {NULL}; + char *searchattr[] = {LDAP_NO_ATTRS, NULL}; char *userdn; int rc; LDAP *search_ld = persistent_ld; diff -ruN squid-2.5.STABLE7/helpers/external_acl/ldap_group/ChangeLog squid-2.5.STABLE8/helpers/external_acl/ldap_group/ChangeLog --- squid-2.5.STABLE7/helpers/external_acl/ldap_group/ChangeLog Sat Aug 14 16:47:14 2004 +++ squid-2.5.STABLE8/helpers/external_acl/ldap_group/ChangeLog Sun Nov 7 08:25:18 2004 @@ -1,3 +1,9 @@ +Version 2.16-2.5 + +2004-10-21 Henrik Nordstrom + + Documentation fixes + Version 2.14 2004-03-02 Henrik Nordstrom diff -ruN squid-2.5.STABLE7/helpers/external_acl/ldap_group/squid_ldap_group.8 squid-2.5.STABLE8/helpers/external_acl/ldap_group/squid_ldap_group.8 --- squid-2.5.STABLE7/helpers/external_acl/ldap_group/squid_ldap_group.8 Sat Jul 17 09:00:12 2004 +++ squid-2.5.STABLE8/helpers/external_acl/ldap_group/squid_ldap_group.8 Sun Jan 30 12:28:56 2005 @@ -1,4 +1,4 @@ -.TH squid_ldap_group 8 "17 July 2004" "Squid LDAP Group" +.TH squid_ldap_group 8 "14 January 2005" "Squid LDAP Group" . .SH NAME squid_ldap_group - Squid LDAP external acl group helper @@ -9,6 +9,15 @@ .SH DESCRIPTION This helper allows Squid to connect to a LDAP directory to authorize users via LDAP groups. +LDAP options are specified as parameters on the command line, +while the username(s) and group(s) to be checked against the +LDAP directory are specified on subsequent lines of input to the +helper, one username/group pair per line separated by a space. +.P +As expected by the external_acl construct of Squid, after +specifying a username and group followed by a new line, this +helper will produce either OK or ERR on the following line +to show if the user is a member of the specified group. .P The program operates by searching with a search filter based on the users user name and requested group, and if a match @@ -117,6 +126,10 @@ .BI -p " ldapport" Specify an alternate TCP port where the ldap server is listening if other than the default LDAP port 389. +. +.TP +.BI -v " 2|3" +LDAP protocol version. Defaults to 2 if not specified. . .TP .BI -Z diff -ruN squid-2.5.STABLE7/helpers/external_acl/ldap_group/squid_ldap_group.c squid-2.5.STABLE8/helpers/external_acl/ldap_group/squid_ldap_group.c --- squid-2.5.STABLE7/helpers/external_acl/ldap_group/squid_ldap_group.c Tue Mar 2 02:13:29 2004 +++ squid-2.5.STABLE8/helpers/external_acl/ldap_group/squid_ldap_group.c Sat Feb 5 03:53:07 2005 @@ -78,6 +78,10 @@ /* Yuck.. we need to glue to different versions of the API */ +#ifndef LDAP_NO_ATTRS +#define LDAP_NO_ATTRS "1.1" +#endif + #if defined(LDAP_API_VERSION) && LDAP_API_VERSION > 1823 static int squid_ldap_errno(LDAP * ld) @@ -631,6 +635,7 @@ LDAPMessage *res = NULL; LDAPMessage *entry; int rc; + char *searchattr[] = {LDAP_NO_ATTRS, NULL}; if (extension_dn && *extension_dn) snprintf(searchbase, sizeof(searchbase), "%s,%s", extension_dn, basedn); @@ -645,7 +650,7 @@ if (debug) fprintf(stderr, "group filter '%s', searchbase '%s'\n", filter, searchbase); - rc = ldap_search_s(ld, searchbase, searchscope, filter, NULL, 1, &res); + rc = ldap_search_s(ld, searchbase, searchscope, filter, searchattr, 1, &res); if (rc != LDAP_SUCCESS) { if (noreferrals && rc == LDAP_PARTIAL_RESULTS) { /* Everything is fine. This is expected when referrals @@ -684,6 +689,7 @@ LDAPMessage *entry; int rc; char *userdn; + char *searchattr[] = {LDAP_NO_ATTRS, NULL}; if (extension_dn && *extension_dn) snprintf(searchbase, sizeof(searchbase), "%s,%s", extension_dn, userbasedn ? userbasedn : basedn); else @@ -692,7 +698,7 @@ snprintf(filter, sizeof(filter), usersearchfilter, escaped_login, escaped_login, escaped_login, escaped_login, escaped_login, escaped_login, escaped_login, escaped_login, escaped_login, escaped_login, escaped_login, escaped_login, escaped_login, escaped_login, escaped_login, escaped_login); if (debug) fprintf(stderr, "user filter '%s', searchbase '%s'\n", filter, searchbase); - rc = ldap_search_s(ld, searchbase, searchscope, filter, NULL, 1, &res); + rc = ldap_search_s(ld, searchbase, searchscope, filter, searchattr, 1, &res); if (rc != LDAP_SUCCESS) { if (noreferrals && rc == LDAP_PARTIAL_RESULTS) { /* Everything is fine. This is expected when referrals diff -ruN squid-2.5.STABLE7/helpers/ntlm_auth/fakeauth/fakeauth_auth.c squid-2.5.STABLE8/helpers/ntlm_auth/fakeauth/fakeauth_auth.c --- squid-2.5.STABLE7/helpers/ntlm_auth/fakeauth/fakeauth_auth.c Fri Aug 20 02:09:58 2004 +++ squid-2.5.STABLE8/helpers/ntlm_auth/fakeauth/fakeauth_auth.c Fri Jan 7 14:12:27 2005 @@ -38,10 +38,9 @@ #if HAVE_PWD_H #include #endif - - -#define ERR "ERR\n" -#define OK "OK\n" +#if HAVE_ASSERT_H +#include +#endif #if 0 #define NTLM_STATIC_CHALLENGE "deadbeef" @@ -55,7 +54,8 @@ static void lc(char *string) { - char *p = string, c; + char *p = string; + char c; while ((c = *p)) { *p = tolower(c); p++; @@ -65,7 +65,7 @@ /* * Generates a challenge request. The randomness of the 8 byte - * challenge strings can be guarenteed to be poor at best. + * challenge strings can be guaranteed to be poor at best. */ void ntlmMakeChallenge(struct ntlm_challenge *chal) @@ -89,7 +89,6 @@ if (authenticate_ntlm_domain != NULL) while (authenticate_ntlm_domain[i++]); - chal->target.offset = WSWAP(48); chal->target.maxlen = SSWAP(i); chal->target.len = chal->target.maxlen; @@ -110,7 +109,7 @@ } /* - * Check the vailidity of a request header. Return -1 on error. + * Check the validity of a request header. Return -1 on error. */ int ntlmCheckHeader(ntlmhdr * hdr, int type) @@ -127,9 +126,8 @@ return 0; if (WSWAP(hdr->type) != type) { -/* don't report this error - it's ok as we do a if() around this function */ -// fprintf(stderr, "ntlmCheckHeader: type is %d, wanted %d\n", - // WSWAP(hdr->type), type); + /* don't report this error - it's ok as we do a if() around this function */ + /* fprintf(stderr, "ntlmCheckHeader: type is %d, wanted %d\n", WSWAP(hdr->type), type); */ return (-1); } return (0); @@ -142,9 +140,12 @@ ntlmGetString(ntlmhdr * hdr, strhdr * str, int flags) { static char buf[512]; - u_short *s, c; - char *d, *sc; - int l, o; + u_short *s; + u_short c; + char *d; + char *sc; + int l; + int o; l = SSWAP(str->len); o = WSWAP(str->offset); @@ -195,62 +196,70 @@ int ntlmDecodeAuth(struct ntlm_authenticate *auth, char *buf, size_t size) { - char *p, *origbuf; + char *p; + char *origbuf; int s; - if (!buf) { + if (!buf) return 1; - } origbuf = buf; - if (ntlmCheckHeader(&auth->hdr, NTLM_AUTHENTICATE)) { + assert (0 == ntlmCheckHeader(&auth->hdr, NTLM_AUTHENTICATE)); + +#if DEBUG_FAKEAUTH + fprintf(stderr,"ntlmDecodeAuth: size of %d\n", size); + fprintf(stderr,"ntlmDecodeAuth: flg %08x\n", auth->flags); + fprintf(stderr,"ntlmDecodeAuth: usr o(%d) l(%d)\n", auth->user.offset, + auth->user.len); +#endif - fprintf(stderr, "ntlmDecodeAuth: header check fails\n"); - return -1; - } -/* only on when you need to debug - * fprintf(stderr,"ntlmDecodeAuth: size of %d\n", size); - * fprintf(stderr,"ntlmDecodeAuth: flg %08x\n", auth->flags); - * fprintf(stderr,"ntlmDecodeAuth: usr o(%d) l(%d)\n", auth->user.offset, auth->user.len); - */ if ((p = ntlmGetString(&auth->hdr, &auth->domain, 2)) == NULL) p = authenticate_ntlm_domain; -// fprintf(stderr,"ntlmDecodeAuth: Domain '%s'.\n",p); +#if DEBUG_FAKEAUTH + fprintf(stderr,"ntlmDecodeAuth: Domain '%s'.\n",p); +#endif if ((s = strlen(p) + 1) >= size) return 1; strcpy(buf, p); -// fprintf(stdout,"ntlmDecodeAuth: Domain '%s'.\n",buf); +#if DEBUG_FAKEAUTH + fprintf(stdout,"ntlmDecodeAuth: Domain '%s'.\n",buf); +#endif size -= s; buf += (s - 1); *buf++ = '\\'; /* Using \ is more consistent with MS-proxy */ p = ntlmGetString(&auth->hdr, &auth->user, 2); + if (NULL == p) + return 1; if ((s = strlen(p) + 1) >= size) return 1; while (*p) - *buf++ = (*p++); //tolower + *buf++ = (*p++); /* tolower */ *buf++ = '\0'; size -= s; -// fprintf(stderr, "ntlmDecodeAuth: user: %s%s\n",origbuf, p); - +#if DEBUG_FAKEAUTH + fprintf(stderr, "ntlmDecodeAuth: user: %s%s\n",origbuf, p); +#endif return 0; } int -main() +main(int argc, char *argv[]) { char buf[256]; - char user[256], *p, *cleartext; + char user[256]; + char *p; + char *cleartext = NULL; struct ntlm_challenge chal; int len; char *data = NULL; setbuf(stdout, NULL); while (fgets(buf, 256, stdin) != NULL) { - user[0] = '\0'; /*no usercode */ + memset(user, '\0', sizeof(user)); /* no usercode */ if ((p = strchr(buf, '\n')) != NULL) *p = '\0'; /* strip \n */ @@ -270,11 +279,11 @@ printf("AF %s\n", user); } else { lc(user); - printf("NA invalid credentials%s\n", user); + printf("NA invalid credentials, user=%s\n", user); } } else { lc(user); - printf("BH wrong packet type!%s\n", user); + printf("BH wrong packet type! user=%s\n", user); } } #endif @@ -291,10 +300,8 @@ SSWAP(chal.target.maxlen); data = (char *) base64_encode_bin((char *) &chal, len); printf("CH %s\n", data); - } else if (!ntlmCheckHeader - ((struct ntlmhdr *) cleartext, NTLM_AUTHENTICATE)) { - if (!ntlmDecodeAuth - ((struct ntlm_authenticate *) cleartext, user, 256)) { + } else if (!ntlmCheckHeader ((struct ntlmhdr *) cleartext, NTLM_AUTHENTICATE)) { + if (!ntlmDecodeAuth ((struct ntlm_authenticate *) cleartext, user, 256)) { lc(user); printf("OK %s\n", user); } else { @@ -307,6 +314,8 @@ } } #endif /*v2 */ + free(cleartext); + cleartext = NULL; } exit(0); } diff -ruN squid-2.5.STABLE7/include/version.h squid-2.5.STABLE8/include/version.h --- squid-2.5.STABLE7/include/version.h Mon Oct 11 14:27:03 2004 +++ squid-2.5.STABLE8/include/version.h Fri Feb 11 04:30:17 2005 @@ -9,5 +9,5 @@ */ #ifndef SQUID_RELEASE_TIME -#define SQUID_RELEASE_TIME 1097526420 +#define SQUID_RELEASE_TIME 1108121414 #endif diff -ruN squid-2.5.STABLE7/lib/rfc1035.c squid-2.5.STABLE8/lib/rfc1035.c --- squid-2.5.STABLE7/lib/rfc1035.c Sun Apr 11 03:14:52 2004 +++ squid-2.5.STABLE8/lib/rfc1035.c Sun Jan 16 19:46:29 2005 @@ -1,6 +1,6 @@ /* - * $Id: rfc1035.c,v 1.22.2.5 2004/04/11 09:14:52 hno Exp $ + * $Id: rfc1035.c,v 1.22.2.7 2005/01/17 02:46:29 hno Exp $ * * Low level DNS protocol routines * AUTHOR: Duane Wessels @@ -299,7 +299,7 @@ * Returns 0 (success) or 1 (error) */ static int -rfc1035NameUnpack(const char *buf, size_t sz, off_t * off, char *name, size_t ns, int rdepth) +rfc1035NameUnpack(const char *buf, size_t sz, off_t * off, unsigned short *rdlength, char *name, size_t ns, int rdepth) { off_t no = 0; unsigned char c; @@ -324,7 +324,7 @@ /* Make sure the pointer is inside this message */ if (ptr >= sz) return 1; - return rfc1035NameUnpack(buf, sz, &ptr, name + no, ns - no, rdepth + 1); + return rfc1035NameUnpack(buf, sz, &ptr, rdlength, name + no, ns - no, rdepth + 1); } else if (c > RFC1035_MAXLABELSZ) { /* * "(The 10 and 01 combinations are reserved for future use.)" @@ -343,6 +343,8 @@ (*off) += len; no += len; *(name + (no++)) = '.'; + if (rdlength) + *rdlength += len + 1; } } while (c > 0 && no < ns); if (no) @@ -369,8 +371,9 @@ { unsigned short s; unsigned int i; + unsigned short rdlength; off_t rdata_off; - if (rfc1035NameUnpack(buf, sz, off, RR->name, RFC1035_MAXHOSTNAMESZ, 0)) { + if (rfc1035NameUnpack(buf, sz, off, NULL, RR->name, RFC1035_MAXHOSTNAMESZ, 0)) { RFC1035_UNPACK_DEBUG; memset(RR, '\0', sizeof(*RR)); return 1; @@ -395,7 +398,8 @@ RR->ttl = ntohl(i); memcpy(&s, buf + (*off), sizeof(s)); (*off) += sizeof(s); - if ((*off) + ntohs(s) > sz) { + rdlength = ntohs(s); + if ((*off) + rdlength > sz) { /* * We got a truncated packet. 'dnscache' truncates UDP * replies at 512 octets, as per RFC 1035. @@ -404,31 +408,33 @@ memset(RR, '\0', sizeof(*RR)); return 1; } - RR->rdlength = ntohs(s); + RR->rdlength = rdlength; switch (RR->type) { case RFC1035_TYPE_PTR: RR->rdata = malloc(RFC1035_MAXHOSTNAMESZ); rdata_off = *off; - if (rfc1035NameUnpack(buf, sz, &rdata_off, RR->rdata, RFC1035_MAXHOSTNAMESZ, 0)) + RR->rdlength = 0; /* Filled in by rfc1035NameUnpack */ + if (rfc1035NameUnpack(buf, sz, &rdata_off, &RR->rdlength, RR->rdata, RFC1035_MAXHOSTNAMESZ, 0)) return 1; - if (rdata_off != ((*off) + RR->rdlength)) { + if (rdata_off != ((*off) + rdlength)) { /* * This probably doesn't happen for valid packets, but * I want to make sure that NameUnpack doesn't go beyond * the RDATA area. */ RFC1035_UNPACK_DEBUG; + free(RR->rdata); memset(RR, '\0', sizeof(*RR)); return 1; } break; case RFC1035_TYPE_A: default: - RR->rdata = malloc(RR->rdlength); - memcpy(RR->rdata, buf + (*off), RR->rdlength); + RR->rdata = malloc(rdlength); + memcpy(RR->rdata, buf + (*off), rdlength); break; } - (*off) += RR->rdlength; + (*off) += rdlength; assert((*off) <= sz); return 0; } @@ -554,11 +560,10 @@ return -rfc1035_unpack_error; } } - i = (int) hdr.ancount; - if (i == 0) + if (hdr.ancount == 0) return 0; - recs = calloc(i, sizeof(*recs)); - while (i--) { + recs = calloc((int)hdr.ancount, sizeof(*recs)); + for (i = 0; i < (int)hdr.ancount; i++) { if (off >= sz) { /* corrupt packet */ RFC1035_UNPACK_DEBUG; break; diff -ruN squid-2.5.STABLE7/lib/splay.c squid-2.5.STABLE8/lib/splay.c --- squid-2.5.STABLE7/lib/splay.c Thu Jan 15 00:38:35 2004 +++ squid-2.5.STABLE8/lib/splay.c Tue Dec 21 10:45:10 2004 @@ -1,5 +1,5 @@ /* - * $Id: splay.c,v 1.12.4.1 2004/01/15 07:38:35 hno Exp $ + * $Id: splay.c,v 1.12.4.2 2004/12/21 17:45:10 hno Exp $ */ #include "config.h" @@ -104,6 +104,8 @@ void splay_destroy(splayNode * top, SPLAYFREE * free_func) { + if (!top) + return; if (top->left) splay_destroy(top->left, free_func); if (top->right) diff -ruN squid-2.5.STABLE7/src/HttpHeader.c squid-2.5.STABLE8/src/HttpHeader.c --- squid-2.5.STABLE7/src/HttpHeader.c Wed Sep 1 07:55:47 2004 +++ squid-2.5.STABLE8/src/HttpHeader.c Thu Feb 10 03:07:05 2005 @@ -1,6 +1,6 @@ /* - * $Id: HttpHeader.c,v 1.74.2.9 2004/09/01 13:55:47 hno Exp $ + * $Id: HttpHeader.c,v 1.74.2.24 2005/02/10 10:07:05 hno Exp $ * * DEBUG: section 55 HTTP Header * AUTHOR: Alex Rousskov @@ -404,40 +404,84 @@ int httpHeaderParse(HttpHeader * hdr, const char *header_start, const char *header_end) { - const char *field_start = header_start; - HttpHeaderEntry *e; + const char *field_ptr = header_start; + HttpHeaderEntry *e, *e2; assert(hdr); assert(header_start && header_end); debug(55, 7) ("parsing hdr: (%p)\n%s\n", hdr, getStringPrefix(header_start, header_end)); HttpHeaderStats[hdr->owner].parsedCount++; - /* commonn format headers are ":[ws]" lines delimited by */ - while (field_start < header_end) { + if (memchr(header_start, '\0', header_end - header_start)) { + debug(55, 1) ("WARNING: HTTP header contains NULL characters {%s}\n", + getStringPrefix(header_start, header_end)); + return httpHeaderReset(hdr); + } + /* common format headers are ":[ws]" lines delimited by . + * continuation lines start with a (single) space or tab */ + while (field_ptr < header_end) { + const char *field_start = field_ptr; const char *field_end; - const char *field_ptr = field_start; do { - field_end = field_ptr = field_ptr + strcspn(field_ptr, "\r\n"); - /* skip CRLF */ - if (*field_ptr == '\r') - field_ptr++; - if (*field_ptr == '\n') - field_ptr++; + const char *this_line = field_ptr; + field_ptr = memchr(field_ptr, '\n', header_end - field_ptr); + if (!field_ptr) + return httpHeaderReset(hdr); /* missing */ + field_end = field_ptr; + field_ptr++; /* Move to next line */ + if (field_end > this_line && field_end[-1] == '\r') { + field_end--; /* Ignore CR LF */ + /* Ignore CR CR LF in relaxed mode */ + if (Config.onoff.relaxed_header_parser && field_end > this_line + 1 && field_end[-1] == '\r') { + debug(55, Config.onoff.relaxed_header_parser <= 0 ? 1 : 2) + ("WARNING: Double CR characters in HTTP header {%s}\n", getStringPrefix(field_start, field_end)); + field_end--; + } + } + /* Barf on stray CR characters */ + if (memchr(this_line, '\r', field_end - this_line)) { + debug(55, 1) ("WARNING: suspicious CR characters in HTTP header near {%s}\n", + getStringPrefix(field_start, header_end)); + return httpHeaderReset(hdr); + } + if (this_line + 1 == field_end && this_line > field_start) { + debug(55, 1) ("WARNING: Blank continuation line in HTTP header near {%s}\n", + getStringPrefix(field_start, header_end)); + return httpHeaderReset(hdr); + } + } while (field_ptr < header_end && (*field_ptr == ' ' || *field_ptr == '\t')); + if (field_start == field_end) { + if (field_ptr < header_end) { + debug(55, 1) ("WARNING: unparseable HTTP header field near {%s}\n", + getStringPrefix(field_start, header_end)); + return httpHeaderReset(hdr); + } + break; /* terminating blank line */ } - while (*field_ptr == ' ' || *field_ptr == '\t'); - if (!*field_end || field_end > header_end) - return httpHeaderReset(hdr); /* missing */ e = httpHeaderEntryParseCreate(field_start, field_end); - if (e != NULL) - httpHeaderAddEntry(hdr, e); - else - debug(55, 2) ("warning: ignoring unparseable http header field near '%s'\n", - getStringPrefix(field_start, field_end)); - field_start = field_end; - /* skip CRLF */ - if (*field_start == '\r') - field_start++; - if (*field_start == '\n') - field_start++; + if (NULL == e) { + debug(55, 1) ("WARNING: unparseable HTTP header field near {%s}\n", + getStringPrefix(field_start, header_end)); + return httpHeaderReset(hdr); + } + if (e->id == HDR_CONTENT_LENGTH && (e2 = httpHeaderFindEntry(hdr, e->id)) != NULL) { + if (!Config.onoff.relaxed_header_parser || strCmp(e->value, strBuf(e2->value)) != 0) { + debug(55, 1) ("WARNING: found two conflicting content-length headers\n"); + httpHeaderEntryDestroy(e); + return httpHeaderReset(hdr); + } else { + debug(55, Config.onoff.relaxed_header_parser <= 0 ? 1 : 2) + ("NOTICE: found double content-length header\n"); + } + } + if (e->id == HDR_OTHER && stringHasWhitespace(strBuf(e->name))) { + debug(55, Config.onoff.relaxed_header_parser <= 0 ? 1 : 2) + ("WARNING: found whitespace in HTTP header name {%s}\n", getStringPrefix(field_start, field_end)); + if (!Config.onoff.relaxed_header_parser) { + httpHeaderEntryDestroy(e); + return httpHeaderReset(hdr); + } + } + httpHeaderAddEntry(hdr, e); } return 1; /* even if no fields where found, it is a valid header */ } @@ -1048,8 +1092,8 @@ HttpHeaderEntry *e; int id; /* note: name_start == field_start */ - const char *name_end = strchr(field_start, ':'); - const int name_len = name_end ? name_end - field_start : 0; + const char *name_end = memchr(field_start, ':', field_end - field_start); + int name_len = name_end ? name_end - field_start : 0; const char *value_start = field_start + name_len + 1; /* skip ':' */ /* note: value_end == field_end */ @@ -1063,6 +1107,14 @@ debug(55, 1) ("WARNING: ignoring header name of %d bytes\n", name_len); return NULL; } + if (Config.onoff.relaxed_header_parser && xisspace(field_start[name_len - 1])) { + debug(55, Config.onoff.relaxed_header_parser <= 0 ? 1 : 2) + ("NOTICE: Whitespace after header name in '%s'\n", getStringPrefix(field_start, field_end)); + while (name_len > 0 && xisspace(field_start[name_len - 1])) + name_len--; + if (!name_len) + return NULL; + } /* now we know we can parse it */ e = memAllocate(MEM_HTTP_HDR_ENTRY); debug(55, 9) ("creating entry %p: near '%s'\n", e, getStringPrefix(field_start, field_end)); @@ -1080,6 +1132,8 @@ /* trim field value */ while (value_start < field_end && xisspace(*value_start)) value_start++; + while (value_start < field_end && xisspace(field_end[-1])) + field_end--; if (field_end - value_start > 65536) { /* String has a 64K limit */ debug(55, 1) ("WARNING: ignoring '%s' header of %d bytes\n", diff -ruN squid-2.5.STABLE7/src/HttpReply.c squid-2.5.STABLE8/src/HttpReply.c --- squid-2.5.STABLE7/src/HttpReply.c Tue Oct 5 15:31:25 2004 +++ squid-2.5.STABLE8/src/HttpReply.c Fri Jan 21 05:22:59 2005 @@ -1,6 +1,6 @@ /* - * $Id: HttpReply.c,v 1.49.2.2 2004/10/05 21:31:25 hno Exp $ + * $Id: HttpReply.c,v 1.49.2.4 2005/01/21 12:22:59 hno Exp $ * * DEBUG: section 58 HTTP Reply (Response) * AUTHOR: Alex Rousskov @@ -450,9 +450,11 @@ * Returns the body size of a HTTP response */ int -httpReplyBodySize(method_t method, HttpReply * reply) +httpReplyBodySize(method_t method, const HttpReply * reply) { - if (METHOD_HEAD == method) + if (reply->sline.version.major < 1) + return -1; + else if (METHOD_HEAD == method) return 0; else if (reply->sline.status == HTTP_OK) (void) 0; /* common case, continue */ diff -ruN squid-2.5.STABLE7/src/acl.c squid-2.5.STABLE8/src/acl.c --- squid-2.5.STABLE7/src/acl.c Sat Sep 25 05:56:16 2004 +++ squid-2.5.STABLE8/src/acl.c Mon Jan 10 08:31:00 2005 @@ -1,6 +1,6 @@ /* - * $Id: acl.c,v 1.270.2.29 2004/09/25 11:56:16 hno Exp $ + * $Id: acl.c,v 1.270.2.32 2005/01/10 15:31:00 hno Exp $ * * DEBUG: section 28 Access Control * AUTHOR: Duane Wessels @@ -557,11 +557,9 @@ } else { /* assume its time-of-day spec */ if (sscanf(t, "%d:%d-%d:%d", &h1, &m1, &h2, &m2) < 4) { - debug(28, 0) ("%s line %d: %s\n", + fatalf("aclParseTimeSpec: ERROR: Bad time range in" + "%s line %d: %s\n", cfg_filename, config_lineno, config_input_line); - debug(28, 0) ("aclParseTimeSpec: IGNORING Bad time range\n"); - memFree(q, MEM_ACL_TIME_DATA); - return; } q = memAllocate(MEM_ACL_TIME_DATA); q->start = h1 * 60 + m1; @@ -569,11 +567,9 @@ q->weekbits = weekbits; weekbits = 0; if (q->start > q->stop) { - debug(28, 0) ("%s line %d: %s\n", + fatalf("aclParseTimeSpec: ERROR: Reversed time range in" + "%s line %d: %s\n", cfg_filename, config_lineno, config_input_line); - debug(28, 0) ("aclParseTimeSpec: IGNORING Reversed time range\n"); - memFree(q, MEM_ACL_TIME_DATA); - return; } if (q->weekbits == 0) q->weekbits = ACL_ALLWEEK; @@ -643,7 +639,7 @@ q = xcalloc(1, sizeof(acl_hdr_data)); q->hdr_name = xstrdup(t); q->hdr_id = httpHeaderIdByNameDef(t, strlen(t)); - aclParseRegexList(q->reglist); + aclParseRegexList(&q->reglist); if (!q->reglist) { debug(28, 0) ("%s line %d: %s\n", cfg_filename, config_lineno, config_input_line); debug(28, 0) ("aclParseHeader: No pattern defined '%s'\n", t); @@ -693,13 +689,19 @@ aclDumpHeader(acl_hdr_data * hd) { wordlist *W = NULL; - relist *data = hd->reglist; - wordlistAdd(&W, httpHeaderNameById(hd->hdr_id)); - while (data != NULL) { - wordlistAdd(&W, data->pattern); - data = data->next; + while (hd) { + MemBuf mb; + relist *data; + memBufDefInit(&mb); + memBufPrintf(&mb, "%s", hd->hdr_name); + for (data = hd->reglist; data; data = data->next) { + memBufPrintf(&mb, " %s", data->pattern); + } + wordlistAdd(&W, mb.buf); + memBufClean(&mb); + hd = hd->next; } - return aclDumpRegexList(hd->reglist); + return W; } #if SQUID_SNMP @@ -885,22 +887,22 @@ break; case ACL_PROXY_AUTH: if (authenticateSchemeCount() == 0) { - debug(28, 0) ("aclParseAclLine: IGNORING: Proxy Auth ACL '%s' \ -because no authentication schemes were compiled.\n", A->cfgline); + fatalf("Invalid Proxy Auth ACL '%s' " + "because no authentication schemes were compiled.\n", A->cfgline); } else if (authenticateActiveSchemeCount() == 0) { - debug(28, 0) ("aclParseAclLine: IGNORING: Proxy Auth ACL '%s' \ -because no authentication schemes are fully configured.\n", A->cfgline); + fatalf("Invalid Proxy Auth ACL '%s' " + "because no authentication schemes are fully configured.\n", A->cfgline); } else { aclParseUserList(&A->data); } break; case ACL_PROXY_AUTH_REGEX: if (authenticateSchemeCount() == 0) { - debug(28, 0) ("aclParseAclLine: IGNORING: Proxy Auth ACL '%s' \ -because no authentication schemes were compiled.\n", A->cfgline); + fatalf("Invalid Proxy Auth ACL '%s' " + "because no authentication schemes were compiled.\n", A->cfgline); } else if (authenticateActiveSchemeCount() == 0) { - debug(28, 0) ("aclParseAclLine: IGNORING: Proxy Auth ACL '%s' \ -because no authentication schemes are fully configured.\n", A->cfgline); + fatalf("Invalid Proxy Auth ACL '%s' " + "because no authentication schemes are fully configured.\n", A->cfgline); } else { aclParseRegexList(&A->data); } @@ -930,10 +932,8 @@ if (!new_acl) return; if (A->data == NULL) { - debug(28, 0) ("aclParseAclLine: IGNORING invalid ACL: %s\n", + debug(28, 0) ("aclParseAclLine: WARNING: empty ACL: %s\n", A->cfgline); - memFree(A, MEM_ACL); - return; } /* append */ while (*head) @@ -1297,9 +1297,8 @@ /* this ACL check completed */ authenticateAuthUserRequestUnlock(auth_user_request); /* check to see if we have matched the user-acl before */ - return aclCacheMatchAcl(&auth_user_request->auth_user-> - proxy_match_cache, acltype, data, - authenticateUserRequestUsername(auth_user_request)); + return aclCacheMatchAcl(&auth_user_request->auth_user->proxy_match_cache, + acltype, data, authenticateUserRequestUsername(auth_user_request)); } CBDATA_TYPE(acl_user_ip_data); diff -ruN squid-2.5.STABLE7/src/auth/ntlm/auth_ntlm.c squid-2.5.STABLE8/src/auth/ntlm/auth_ntlm.c --- squid-2.5.STABLE7/src/auth/ntlm/auth_ntlm.c Wed Aug 25 14:27:27 2004 +++ squid-2.5.STABLE8/src/auth/ntlm/auth_ntlm.c Thu Feb 3 16:22:12 2005 @@ -1,6 +1,6 @@ /* - * $Id: auth_ntlm.c,v 1.17.2.18 2004/08/25 20:27:27 hno Exp $ + * $Id: auth_ntlm.c,v 1.17.2.21 2005/02/03 23:22:12 hno Exp $ * * DEBUG: section 29 NTLM Authenticator * AUTHOR: Robert Collins @@ -492,6 +492,10 @@ auth_user_request = r->auth_user_request; ntlm_request = auth_user_request->scheme_data; assert(ntlm_request != NULL); + if (!ntlm_request->authserver) + ntlm_request->authserver = srv; + else + assert(ntlm_request->authserver == srv); /* seperate out the useful data */ if (strncasecmp(reply, "TT ", 3) == 0) { @@ -507,7 +511,6 @@ /* and we satisfy the request that happended on the refresh boundary */ /* note this code is now in two places FIXME */ assert(ntlm_request->auth_state == AUTHENTICATE_STATE_NEGOTIATE); - ntlm_request->authserver = srv; ntlm_request->authchallenge = xstrdup(reply); helperstate->challengeuses = 1; } else if (strncasecmp(reply, "AF ", 3) == 0) { @@ -537,7 +540,6 @@ /* we only expect LD when finishing the handshake */ assert(ntlm_request->auth_state == AUTHENTICATE_STATE_RESPONSE); ntlm_user->username = xstrdup(reply); - helperstate = helperStatefulServerGetData(ntlm_request->authserver); /* BH code: mark helper as broken */ authenticateNTLMResetServer(ntlm_request); debug(29, 4) ("authenticateNTLMHandleReply: Error validating user via NTLM. Error returned '%s'\n", reply); @@ -561,8 +563,6 @@ ntlm_user = auth_user->scheme_data; ntlm_request = auth_user_request->scheme_data; assert((ntlm_user != NULL) && (ntlm_request != NULL)); - assert(!ntlm_request->authserver || ntlm_request->authserver == srv); - helperstate = helperStatefulServerGetData(ntlm_request->authserver); authenticateNTLMResetServer(ntlm_request); if (ntlm_request->auth_state == AUTHENTICATE_STATE_NEGOTIATE) { /* The helper broke on YR. It automatically @@ -930,7 +930,6 @@ auth_user_t *auth_user; ntlm_request_t *ntlm_request; ntlm_user_t *ntlm_user; - void *srv; LOCAL_ARRAY(char, ntlmhash, NTLM_CHALLENGE_SZ * 2); /* get header */ proxy_auth = httpHeaderGetStr(&request->header, type); @@ -1058,9 +1057,7 @@ /* set these to now because this is either a new login from an * existing user or a new user */ auth_user->expiretime = current_time.tv_sec; - srv = ntlm_request->authserver; - ntlm_request->authserver = NULL; - helperStatefulReleaseServer(srv); + authenticateNTLMReleaseServer(ntlm_request); return; case AUTHENTICATE_STATE_DONE: fatal("authenticateNTLMAuthenticateUser: unexpect auth state DONE! Report a bug to the squid developers.\n"); diff -ruN squid-2.5.STABLE7/src/authenticate.c squid-2.5.STABLE8/src/authenticate.c --- squid-2.5.STABLE7/src/authenticate.c Sat Apr 17 19:29:51 2004 +++ squid-2.5.STABLE8/src/authenticate.c Mon Jan 10 08:35:38 2005 @@ -1,6 +1,6 @@ /* - * $Id: authenticate.c,v 1.36.2.15 2004/04/18 01:29:51 hno Exp $ + * $Id: authenticate.c,v 1.36.2.16 2005/01/10 15:35:38 hno Exp $ * * DEBUG: section 29 Authenticator * AUTHOR: Duane Wessels @@ -42,8 +42,7 @@ CBDATA_TYPE(auth_user_ip_t); -static void - authenticateDecodeAuth(const char *proxy_auth, auth_user_request_t * auth_user_request); +static void authenticateDecodeAuth(const char *proxy_auth, auth_user_request_t * auth_user_request); static auth_acl_t authenticateAuthenticate(auth_user_request_t ** auth_user_request, http_hdr_type headertype, request_t * request, ConnStateData * conn, struct in_addr src_addr); /* @@ -83,7 +82,7 @@ return -1; } -void +static void authenticateDecodeAuth(const char *proxy_auth, auth_user_request_t * auth_user_request) { int i = 0; diff -ruN squid-2.5.STABLE7/src/cache_cf.c squid-2.5.STABLE8/src/cache_cf.c --- squid-2.5.STABLE7/src/cache_cf.c Sat Sep 25 05:56:16 2004 +++ squid-2.5.STABLE8/src/cache_cf.c Thu Feb 10 03:07:05 2005 @@ -1,6 +1,6 @@ /* - * $Id: cache_cf.c,v 1.396.2.18 2004/09/25 11:56:16 hno Exp $ + * $Id: cache_cf.c,v 1.396.2.19 2005/02/10 10:07:05 hno Exp $ * * DEBUG: section 3 Configuration File Parsing * AUTHOR: Harvest Derived @@ -1841,8 +1841,36 @@ } #define free_onoff free_int -#define dump_eol dump_string -#define free_eol free_string + +static void +dump_tristate(StoreEntry * entry, const char *name, int var) +{ + const char *state; + if (var > 0) + state = "on"; + else if (var < 0) + state = "warn"; + else + state = "off"; + storeAppendPrintf(entry, "%s %s\n", name, state); +} + +static void +parse_tristate(int *var) +{ + char *token = strtok(NULL, w_space); + + if (token == NULL) + self_destruct(); + if (!strcasecmp(token, "on") || !strcasecmp(token, "enable")) + *var = 1; + else if (!strcasecmp(token, "warn")) + *var = -1; + else + *var = 0; +} + +#define free_tristate free_int static void dump_refreshpattern(StoreEntry * entry, const char *name, refresh_t * head) @@ -2019,6 +2047,10 @@ self_destruct(); *var = xstrdup((char *) token); } + +#define dump_eol dump_string +#define free_eol free_string + static void dump_time_t(StoreEntry * entry, const char *name, time_t var) diff -ruN squid-2.5.STABLE7/src/cf.data.pre squid-2.5.STABLE8/src/cf.data.pre --- squid-2.5.STABLE7/src/cf.data.pre Fri Oct 8 11:41:10 2004 +++ squid-2.5.STABLE8/src/cf.data.pre Thu Feb 10 03:07:05 2005 @@ -1,6 +1,6 @@ # -# $Id: cf.data.pre,v 1.245.2.77 2004/10/08 17:41:10 hno Exp $ +# $Id: cf.data.pre,v 1.245.2.84 2005/02/10 10:07:05 hno Exp $ # # # SQUID Web Proxy Cache http://www.squid-cache.org/ @@ -2623,7 +2623,7 @@ COMMENT: on|off TYPE: onoff DEFAULT: off -LOC: opt_accel_uses_host +LOC: Config.onoff.accel_uses_host_header DOC_START HTTP/1.1 requests include a Host: header which is basically the hostname from the URL. The Host: header is used for domain based @@ -2642,6 +2642,22 @@ require the Host: header will not be properly cached. DOC_END +NAME: httpd_accel_no_pmtu_disc +COMMENT: on|off +TYPE: onoff +DEFAULT: off +LOC: Config.onoff.accel_no_pmtu_disc +DOC_START + In many setups of transparently intercepting proxies Path-MTU + discovery can not work on traffic towards the clients. This is + the case when the intercepting device does not fully track + connections and fails to forward ICMP must fragment messages + to the cache server. + + If you have such setup and experience that certain clients + sporadically hang or never complete requests set this to on. +DOC_END + COMMENT_START MISCELLANEOUS ----------------------------------------------------------------------------- @@ -2778,9 +2794,8 @@ memory_pools_limit to a reasonably high value even if your configuration will use less memory. - If not set (default) or set to zero, Squid will keep all memory it - can. That is, there will be no limit on the total amount of memory - used for safe-keeping. + If set to zero, Squid will keep all memory it can. That is, there + will be no limit on the total amount of memory used for safe-keeping. To disable memory allocation optimization, do not set memory_pools_limit to 0. Set memory_pools to "off" instead. @@ -3908,7 +3923,10 @@ even if not explicitly forbidden. Set this directive to on if you have clients which insists - on sending request entities in GET or HEAD requests. + on sending request entities in GET or HEAD requests. But be warned + that there is server software (both proxies and web servers) which + can fail to properly process this kind of request which may make you + vulnerable to cache pollution attacks if enabled. DOC_END NAME: high_response_time_warning @@ -4017,4 +4035,22 @@ until all the child processes have been started. DOC_END +NAME: relaxed_header_parser +COMMENT: on|off|warn +TYPE: tristate +LOC: Config.onoff.relaxed_header_parser +DEFAULT: on +DOC_START + In the default "on" setting Squid accepts certain forms + of non-compliant HTTP messages where it is unambiguous + what the sending application intended even if the message + is not correctly formatted. The messages is then normalized + to the correct form when forwarded by Squid. + + If set to "warn" then a warning will be emitted in cache.log + each time such HTTP error is encountered. + + If set to "off" then such HTTP errors will cause the request + or response to be rejected. +DOC_END EOF diff -ruN squid-2.5.STABLE7/src/client_side.c squid-2.5.STABLE8/src/client_side.c --- squid-2.5.STABLE7/src/client_side.c Tue Oct 5 16:34:42 2004 +++ squid-2.5.STABLE8/src/client_side.c Thu Feb 3 17:10:09 2005 @@ -1,6 +1,6 @@ /* - * $Id: client_side.c,v 1.561.2.60 2004/10/05 22:34:42 hno Exp $ + * $Id: client_side.c,v 1.561.2.70 2005/02/04 00:10:09 hno Exp $ * * DEBUG: section 33 Client-side Routines * AUTHOR: Duane Wessels @@ -661,6 +661,15 @@ if (!entry) entry = storeGetPublicByRequestMethod(http->request, METHOD_HEAD); if (entry) { + if (EBIT_TEST(entry->flags, ENTRY_SPECIAL)) { + http->log_type = LOG_TCP_DENIED; + err = errorCon(ERR_ACCESS_DENIED, HTTP_FORBIDDEN); + err->request = requestLink(http->request); + err->src_addr = http->conn->peer.sin_addr; + http->entry = clientCreateStoreEntry(http, http->request->method, null_request_flags); + errorAppendEntry(http->entry, err); + return; + } /* Swap in the metadata */ http->entry = entry; storeLockObject(http->entry); @@ -924,9 +933,10 @@ authenticateAuthUserRequestUnlock(connState->auth_user_request); connState->auth_user_request = NULL; authenticateOnCloseConnection(connState); - if (connState->in.size == CLIENT_REQ_BUF_SZ) + if (connState->in.size == CLIENT_REQ_BUF_SZ) { memFree(connState->in.buf, MEM_CLIENT_REQ_BUF); - else + connState->in.buf = NULL; + } else safe_free(connState->in.buf); /* XXX account connState->in.buf */ pconnHistCount(0, connState->nrequests); @@ -2713,7 +2723,7 @@ /* see if we running in Config2.Accel.on, if so got to convert it to URL */ else if (Config2.Accel.on && *url == '/') { /* prepend the accel prefix */ - if (opt_accel_uses_host && (t = mime_get_header(req_hdr, "Host"))) { + if (Config.onoff.accel_uses_host_header && (t = mime_get_header(req_hdr, "Host"))) { int vport; char *q; const char *protocol_name = "http"; @@ -2857,6 +2867,15 @@ vport, url); #endif debug(33, 5) ("VHOST REWRITE: '%s'\n", http->uri); + } else if (vport_mode) { + int vport; + const char *protocol_name = "http"; + vport = (int) ntohs(http->conn->me.sin_port); + url_sz = strlen(url) + 32 + Config.appendDomainLen + + strlen(Config.Accel.host); + http->uri = xcalloc(url_sz, 1); + snprintf(http->uri, url_sz, "%s://%s:%d%s", + protocol_name, Config.Accel.host, vport, url); } else { url_sz = strlen(Config2.Accel.prefix) + strlen(url) + Config.appendDomainLen + 1; @@ -2864,6 +2883,18 @@ snprintf(http->uri, url_sz, "%s%s", Config2.Accel.prefix, url); } http->flags.accel = 1; + if (Config.onoff.accel_no_pmtu_disc) { +#if defined(IP_MTU_DISCOVER) && defined(IP_PMTUDISC_DONT) + int i = IP_PMTUDISC_DONT; + setsockopt(conn->fd, SOL_IP, IP_MTU_DISCOVER, &i, sizeof i); +#else + static int reported = 0; + if (!reported) { + debug(33, 1) ("Notice: httpd_accel_no_pmtu_disc not supported on your platform\n"); + reported = 1; + } +#endif + } } else { /* URL may be rewritten later, so make extra room */ url_sz = strlen(url) + Config.appendDomainLen + 5; @@ -2882,10 +2913,11 @@ } static int -clientReadDefer(int fdnotused, void *data) +clientReadDefer(int fd, void *data) { + fde *F = &fd_table[fd]; ConnStateData *conn = data; - if (conn->body.size_left) + if (conn->body.size_left && !F->flags.socket_eof) return conn->in.offset >= conn->in.size - 1; else return conn->defer.until > squid_curtime; @@ -2972,9 +3004,15 @@ } /* Continue to process previously read data */ } + cbdataLock(conn); /* clientProcessBody might pull the connection under our feets */ /* Process request body if any */ - if (conn->in.offset > 0 && conn->body.callback != NULL) + if (conn->in.offset > 0 && conn->body.callback != NULL) { clientProcessBody(conn); + if (!cbdataValid(conn)) { + cbdataUnlock(conn); + return; + } + } /* Process next request */ while (conn->in.offset > 0 && conn->body.size_left == 0) { int nrequests; @@ -3050,13 +3088,21 @@ errorAppendEntry(http->entry, err); safe_free(prefix); break; - } else { - /* compile headers */ - /* we should skip request line! */ - if (!httpRequestParseHeader(request, prefix + req_line_sz)) - debug(33, 1) ("Failed to parse request headers: %s\n%s\n", - http->uri, prefix); - /* continue anyway? */ + } + /* compile headers */ + /* we should skip request line! */ + if (!httpRequestParseHeader(request, prefix + req_line_sz)) { + debug(33, 1) ("Failed to parse request headers: %s\n%s\n", + http->uri, prefix); + err = errorCon(ERR_INVALID_URL, HTTP_BAD_REQUEST); + err->src_addr = conn->peer.sin_addr; + err->url = xstrdup(http->uri); + http->al.http.code = err->http_status; + http->log_type = LOG_TCP_DENIED; + http->entry = clientCreateStoreEntry(http, method, null_request_flags); + errorAppendEntry(http->entry, err); + safe_free(prefix); + break; } request->flags.accelerated = http->flags.accel; if (!http->flags.internal) { @@ -3070,8 +3116,10 @@ http->flags.internal = 1; } } - if (http->flags.internal) + if (http->flags.internal) { request->protocol = PROTO_HTTP; + request->login[0] = '\0'; + } } /* * cache the Content-length value in request_t. @@ -3134,7 +3182,6 @@ break; } else { clientAccessCheck(http); - continue; /* while offset > 0 && body.size_left == 0 */ } } else if (parser_return_code == 0) { /* @@ -3154,11 +3201,15 @@ *H = http; http->entry = clientCreateStoreEntry(http, METHOD_NONE, null_request_flags); errorAppendEntry(http->entry, err); - return; } break; } + if (!cbdataValid(conn)) { + cbdataUnlock(conn); + return; + } } /* while offset > 0 && conn->body.size_left == 0 */ + cbdataUnlock(conn); /* Check if a half-closed connection was aborted in the middle */ if (F->flags.socket_eof) { if (conn->in.offset != conn->body.size_left) { /* != 0 when no request body */ diff -ruN squid-2.5.STABLE7/src/disk.c squid-2.5.STABLE8/src/disk.c --- squid-2.5.STABLE7/src/disk.c Thu Aug 8 14:17:39 2002 +++ squid-2.5.STABLE8/src/disk.c Sat Nov 6 14:37:12 2004 @@ -1,6 +1,6 @@ /* - * $Id: disk.c,v 1.157.2.1 2002/08/08 20:17:39 hno Exp $ + * $Id: disk.c,v 1.157.2.2 2004/11/06 21:37:12 hno Exp $ * * DEBUG: section 6 Disk I/O Routines * AUTHOR: Harvest Derived @@ -62,7 +62,6 @@ int fd; if (FILE_MODE(mode) == O_WRONLY) mode |= O_APPEND; - mode |= SQUID_NONBLOCK; errno = 0; fd = open(path, mode, 0644); statCounter.syscalls.disk.opens++; diff -ruN squid-2.5.STABLE7/src/enums.h squid-2.5.STABLE8/src/enums.h --- squid-2.5.STABLE7/src/enums.h Tue Oct 5 15:31:26 2004 +++ squid-2.5.STABLE8/src/enums.h Mon Jan 17 15:13:04 2005 @@ -1,6 +1,6 @@ /* - * $Id: enums.h,v 1.203.2.13 2004/10/05 21:31:26 hno Exp $ + * $Id: enums.h,v 1.203.2.14 2005/01/17 22:13:04 hno Exp $ * * * SQUID Web Proxy Cache http://www.squid-cache.org/ @@ -93,6 +93,7 @@ ERR_ONLY_IF_CACHED_MISS, /* failure to satisfy only-if-cached request */ ERR_TOO_BIG, TCP_RESET, + ERR_INVALID_RESP, ERR_MAX } err_type; diff -ruN squid-2.5.STABLE7/src/fqdncache.c squid-2.5.STABLE8/src/fqdncache.c --- squid-2.5.STABLE7/src/fqdncache.c Sat Dec 6 10:19:37 2003 +++ squid-2.5.STABLE8/src/fqdncache.c Tue Dec 7 16:40:57 2004 @@ -1,6 +1,6 @@ /* - * $Id: fqdncache.c,v 1.149.2.4 2003/12/06 17:19:37 hno Exp $ + * $Id: fqdncache.c,v 1.149.2.5 2004/12/07 23:40:57 hno Exp $ * * DEBUG: section 35 FQDN Cache * AUTHOR: Harvest Derived @@ -359,6 +359,7 @@ FqdncacheStats.requests++; if (name == NULL || name[0] == '\0') { debug(35, 4) ("fqdncache_nbgethostbyaddr: Invalid name!\n"); + dns_error_message = "Invalid hostname"; handler(NULL, handlerData); return; } @@ -444,8 +445,10 @@ } else { FqdncacheStats.hits++; f->lastref = squid_curtime; + dns_error_message = f->error_message; return f->names[0]; } + dns_error_message = NULL; /* check if it's already a FQDN address in text form. */ if (!safe_inet_addr(name, &ip)) return name; diff -ruN squid-2.5.STABLE7/src/ftp.c squid-2.5.STABLE8/src/ftp.c --- squid-2.5.STABLE7/src/ftp.c Tue Oct 5 16:34:42 2004 +++ squid-2.5.STABLE8/src/ftp.c Sat Feb 5 17:53:29 2005 @@ -1,6 +1,6 @@ /* - * $Id: ftp.c,v 1.316.2.15 2004/10/05 22:34:42 hno Exp $ + * $Id: ftp.c,v 1.316.2.17 2005/02/06 00:53:29 hno Exp $ * * DEBUG: section 9 File Transfer Protocol (FTP) * AUTHOR: Harvest Derived @@ -77,7 +77,6 @@ unsigned int put:1; unsigned int put_mkdir:1; unsigned int listformat_unknown:1; - unsigned int datachannel_hack:1; }; typedef struct _Ftpdata { @@ -328,9 +327,10 @@ if ((s = strchr(ftpState->user, ':'))) { *s = 0; xstrncpy(ftpState->password, s + 1, MAX_URL); - if (escaped) + if (escaped) { rfc1738_unescape(ftpState->password); - ftpState->password_url = 1; + ftpState->password_url = 1; + } } else { xstrncpy(ftpState->password, null_string, MAX_URL); } @@ -928,8 +928,10 @@ j >>= 1; IOStats.Ftp.read_hist[bin]++; } - if (ftpState->flags.isdir && !ftpState->flags.html_header_sent && len >= 0) { - ftpListingStart(ftpState); + if (!ftpState->flags.http_header_sent && len >= 0) { + ftpAppendSuccessHeader(ftpState); + if (ftpState->flags.isdir) + ftpListingStart(ftpState); } if (len < 0) { debug(50, ignoreErrno(errno) ? 3 : 1) ("ftpDataRead: read error: %s\n", xstrerror()); @@ -940,6 +942,10 @@ data, Config.Timeout.read); } else { + if (!ftpState->flags.http_header_sent && !ftpState->fwd->flags.ftp_pasv_failed && ftpState->flags.pasv_supported) { + ftpState->fwd->flags.dont_retry = 0; /* this is a retryable error */ + ftpState->fwd->flags.ftp_pasv_failed = 1; + } ftpFailed(ftpState, ERR_READ_ERROR); /* ftpFailed closes ctrl.fd and frees ftpState */ return; @@ -1083,11 +1089,7 @@ ftpState->data.fd = -1; ftpState->size = -1; ftpState->mdtm = -1; - if (!Config.Ftp.passive) - ftpState->flags.rest_supported = 0; - else if (fwd->flags.ftp_pasv_failed) - ftpState->flags.pasv_supported = 0; - else + if (Config.Ftp.passive && !fwd->flags.ftp_pasv_failed) ftpState->flags.pasv_supported = 1; ftpState->flags.rest_supported = 1; ftpState->fwd = fwd; @@ -1728,15 +1730,9 @@ return; } if (ftpState->data.fd >= 0) { - if (!ftpState->flags.datachannel_hack) { - /* We are already connected, reuse this connection. */ - ftpRestOrList(ftpState); - return; - } else { - /* Close old connection */ - comm_close(ftpState->data.fd); - ftpState->data.fd = -1; - } + /* Close old connection */ + comm_close(ftpState->data.fd); + ftpState->data.fd = -1; } if (!ftpState->flags.pasv_supported) { ftpSendPort(ftpState); @@ -2164,7 +2160,6 @@ debug(9, 3) ("This is ftpReadList\n"); if (code == 125 || (code == 150 && ftpState->data.host)) { /* Begin data transfer */ - ftpAppendSuccessHeader(ftpState); commSetSelect(ftpState->data.fd, COMM_SELECT_READ, ftpDataRead, @@ -2218,7 +2213,6 @@ if (code == 125 || (code == 150 && ftpState->data.host)) { /* Begin data transfer */ debug(9, 3) ("ftpReadRetr: reading data channel\n"); - ftpAppendSuccessHeader(ftpState); commSetSelect(ftpState->data.fd, COMM_SELECT_READ, ftpDataRead, @@ -2372,27 +2366,6 @@ ftpGetFile(ftpState); } -static void -ftpTryDatachannelHack(FtpStateData * ftpState) -{ - ftpState->flags.datachannel_hack = 1; - /* we have to undo some of the slash hack... */ - if (ftpState->old_filepath != NULL) { - ftpState->flags.try_slash_hack = 0; - safe_free(ftpState->filepath); - ftpState->filepath = ftpState->old_filepath; - ftpState->old_filepath = NULL; - } - ftpState->flags.tried_nlst = 0; - /* And off we go */ - if (ftpState->flags.isdir) { - ftpListDir(ftpState); - } else { - ftpGetFile(ftpState); - } - return; -} - /* Forget hack status. Next error is shown to the user */ static void ftpUnhack(FtpStateData * ftpState) @@ -2441,20 +2414,6 @@ break; } } - /* Try to reopen datachannel */ - if (!ftpState->flags.datachannel_hack && - ftpState->pathcomps == NULL) { - switch (ftpState->state) { - case SENT_RETR: - case SENT_LIST: - case SENT_NLST: - /* Try to reopen datachannel */ - ftpHackShortcut(ftpState, ftpTryDatachannelHack); - return; - default: - break; - } - } ftpFailed(ftpState, ERR_NONE); /* ftpFailed closes ctrl.fd and frees ftpState */ } @@ -2485,7 +2444,10 @@ case SENT_USER: case SENT_PASS: if (ftpState->ctrl.replycode > 500) - err = errorCon(ERR_FTP_FORBIDDEN, HTTP_FORBIDDEN); + if (ftpState->password_url) + err = errorCon(ERR_FTP_FORBIDDEN, HTTP_FORBIDDEN); + else + err = errorCon(ERR_FTP_FORBIDDEN, HTTP_UNAUTHORIZED); else if (ftpState->ctrl.replycode == 421) err = errorCon(ERR_FTP_UNAVAILABLE, HTTP_SERVICE_UNAVAILABLE); break; diff -ruN squid-2.5.STABLE7/src/globals.h squid-2.5.STABLE8/src/globals.h --- squid-2.5.STABLE7/src/globals.h Mon Jan 13 16:01:13 2003 +++ squid-2.5.STABLE8/src/globals.h Fri Jan 21 04:48:25 2005 @@ -1,6 +1,6 @@ /* - * $Id: globals.h,v 1.108.2.3 2003/01/13 23:01:13 wessels Exp $ + * $Id: globals.h,v 1.108.2.4 2005/01/21 11:48:25 hno Exp $ * * * SQUID Web Proxy Cache http://www.squid-cache.org/ @@ -79,7 +79,6 @@ extern int opt_reuseaddr; /* 1 */ extern int icmp_sock; /* -1 */ extern int neighbors_do_private_keys; /* 1 */ -extern int opt_accel_uses_host; /* 0 */ extern int opt_catch_signals; /* 1 */ extern int opt_debug_stderr; /* -1 */ extern int opt_dns_tests; /* 1 */ diff -ruN squid-2.5.STABLE7/src/gopher.c squid-2.5.STABLE8/src/gopher.c --- squid-2.5.STABLE7/src/gopher.c Sat Nov 29 01:38:36 2003 +++ squid-2.5.STABLE8/src/gopher.c Tue Jan 11 23:04:01 2005 @@ -1,6 +1,6 @@ /* - * $Id: gopher.c,v 1.162.2.7 2003/11/29 08:38:36 hno Exp $ + * $Id: gopher.c,v 1.162.2.8 2005/01/12 06:04:01 wessels Exp $ * * DEBUG: section 10 Gopher * AUTHOR: Harvest Derived @@ -342,6 +342,11 @@ if (gopherState->len != 0) { /* there is something left from last tx. */ xstrncpy(line, gopherState->buf, gopherState->len + 1); + if (gopherState->len + len > TEMP_BUF_SIZE) { + debug(10, 1) ("GopherHTML: Buffer overflow. Lost some data on URL: %s\n", + storeUrl(entry)); + len = TEMP_BUF_SIZE - gopherState->len; + } lpos = (char *) memccpy(line + gopherState->len, inbuf, '\n', len); if (lpos) *lpos = '\0'; diff -ruN squid-2.5.STABLE7/src/helper.c squid-2.5.STABLE8/src/helper.c --- squid-2.5.STABLE7/src/helper.c Thu Mar 11 08:26:30 2004 +++ squid-2.5.STABLE8/src/helper.c Sat Nov 6 08:24:51 2004 @@ -1,6 +1,6 @@ /* - * $Id: helper.c,v 1.34.2.16 2004/03/11 15:26:30 hno Exp $ + * $Id: helper.c,v 1.34.2.17 2004/11/06 15:24:51 hno Exp $ * * DEBUG: section 84 Helper process maintenance * AUTHOR: Harvest Derived? @@ -100,9 +100,9 @@ continue; } hlp->n_running++; + hlp->n_active++; srv = cbdataAlloc(helper_server); srv->pid = x; - srv->flags.alive = 1; srv->index = k; srv->rfd = rfd; srv->wfd = wfd; @@ -125,6 +125,7 @@ if (wfd != rfd) commSetNonBlocking(wfd); comm_add_close_handler(rfd, helperServerFree, srv); + commSetSelect(srv->rfd, COMM_SELECT_READ, helperHandleRead, srv, 0); } hlp->last_restart = squid_curtime; safe_free(shortname); @@ -178,9 +179,9 @@ continue; } hlp->n_running++; + hlp->n_active++; srv = cbdataAlloc(helper_stateful_server); srv->pid = x; - srv->flags.alive = 1; srv->flags.reserved = 0; srv->stats.submits = 0; srv->index = k; @@ -207,6 +208,7 @@ if (wfd != rfd) commSetNonBlocking(wfd); comm_add_close_handler(rfd, helperStatefulServerFree, srv); + commSetSelect(srv->rfd, COMM_SELECT_READ, helperStatefulHandleRead, srv, 0); } hlp->last_restart = squid_curtime; safe_free(shortname); @@ -363,12 +365,11 @@ srv = link->data; tt = 0.001 * tvSubMsec(srv->dispatch_time, srv->flags.busy ? current_time : srv->answer_time); - storeAppendPrintf(sentry, "%7d\t%7d\t%7d\t%11d\t%c%c%c%c\t%7.3f\t%7d\t%s\n", + storeAppendPrintf(sentry, "%7d\t%7d\t%7d\t%11d\t%c%c%c\t%7.3f\t%7d\t%s\n", srv->index + 1, srv->rfd, srv->pid, srv->stats.uses, - srv->flags.alive ? 'A' : ' ', srv->flags.busy ? 'B' : ' ', srv->flags.closing ? 'C' : ' ', srv->flags.shutdown ? 'S' : ' ', @@ -412,12 +413,11 @@ for (link = hlp->servers.head; link; link = link->next) { srv = link->data; tt = 0.001 * tvSubMsec(srv->dispatch_time, current_time); - storeAppendPrintf(sentry, "%7d\t%7d\t%7d\t%11d\t%c%c%c%c%c\t%7.3f\t%7d\t%s\n", + storeAppendPrintf(sentry, "%7d\t%7d\t%7d\t%11d\t%c%c%c%c\t%7.3f\t%7d\t%s\n", srv->index + 1, srv->rfd, srv->pid, srv->stats.uses, - srv->flags.alive ? 'A' : ' ', srv->flags.busy ? 'B' : ' ', srv->flags.closing ? 'C' : ' ', srv->flags.reserved ? 'R' : ' ', @@ -444,19 +444,21 @@ helper_server *srv; srv = link->data; link = link->next; - if (!srv->flags.alive) { - debug(84, 3) ("helperShutdown: %s #%d is NOT ALIVE.\n", + if (srv->flags.shutdown) { + debug(84, 3) ("helperShutdown: %s #%d is already shut down\n", hlp->id_name, srv->index + 1); continue; } + hlp->n_active--; + assert(hlp->n_active >= 0); srv->flags.shutdown = 1; /* request it to shut itself down */ - if (srv->flags.busy) { - debug(84, 3) ("helperShutdown: %s #%d is BUSY.\n", + if (srv->flags.closing) { + debug(84, 3) ("helperShutdown: %s #%d is CLOSING.\n", hlp->id_name, srv->index + 1); continue; } - if (srv->flags.closing) { - debug(84, 3) ("helperShutdown: %s #%d is CLOSING.\n", + if (srv->flags.busy) { + debug(84, 3) ("helperShutdown: %s #%d is BUSY.\n", hlp->id_name, srv->index + 1); continue; } @@ -476,11 +478,13 @@ while (link) { srv = link->data; link = link->next; - if (!srv->flags.alive) { - debug(84, 3) ("helperStatefulShutdown: %s #%d is NOT ALIVE.\n", + if (srv->flags.shutdown) { + debug(84, 3) ("helperStatefulShutdown: %s #%d is already shut down.\n", hlp->id_name, srv->index + 1); continue; } + hlp->n_active--; + assert(hlp->n_active >= 0); srv->flags.shutdown = 1; /* request it to shut itself down */ if (srv->flags.busy) { debug(84, 3) ("helperStatefulShutdown: %s #%d is BUSY.\n", @@ -576,10 +580,12 @@ hlp->n_running--; assert(hlp->n_running >= 0); if (!srv->flags.shutdown) { + hlp->n_active--; + assert(hlp->n_active >= 0); debug(84, 0) ("WARNING: %s #%d (FD %d) exited\n", hlp->id_name, srv->index + 1, fd); - if (hlp->n_running <= hlp->n_to_start / 2) { - debug(80, 0) ("Too few %s processes are running", hlp->id_name); + if (hlp->n_active <= hlp->n_to_start / 2) { + debug(80, 0) ("Too few %s processes are running\n", hlp->id_name); if (hlp->last_restart > squid_curtime - 30) fatalf("The %s helpers are crashing too rapidly, need help!\n", hlp->id_name); debug(80, 0) ("Starting new helpers\n"); @@ -614,10 +620,12 @@ hlp->n_running--; assert(hlp->n_running >= 0); if (!srv->flags.shutdown) { + hlp->n_active--; + assert(hlp->n_active >= 0); debug(84, 0) ("WARNING: %s #%d (FD %d) exited\n", hlp->id_name, srv->index + 1, fd); - if (hlp->n_running <= hlp->n_to_start / 2) { - debug(80, 0) ("Too few %s processes are running", hlp->id_name); + if (hlp->n_active <= hlp->n_to_start / 2) { + debug(80, 0) ("Too few %s processes are running\n", hlp->id_name); if (hlp->last_restart > squid_curtime - 30) fatalf("The %s helpers are crashing too rapidly, need help!\n", hlp->id_name); debug(80, 0) ("Starting new helpers\n"); @@ -652,6 +660,7 @@ comm_close(fd); return; } + commSetSelect(srv->rfd, COMM_SELECT_READ, helperHandleRead, srv, 0); srv->offset += len; srv->buf[srv->offset] = '\0'; r = srv->request; @@ -676,10 +685,14 @@ if (cbdataValid(r->data)) r->callback(r->data, srv->buf); helperRequestFree(r); - if (!srv->flags.shutdown) + if (!srv->flags.shutdown) { helperKickQueue(hlp); - } else { - commSetSelect(srv->rfd, COMM_SELECT_READ, helperHandleRead, srv, 0); + } else if (!srv->flags.closing) { + int wfd = srv->wfd; + srv->flags.closing = 1; + srv->wfd = -1; + comm_close(wfd); + } } } @@ -704,6 +717,7 @@ comm_close(fd); return; } + commSetSelect(srv->rfd, COMM_SELECT_READ, helperStatefulHandleRead, srv, 0); srv->offset += len; srv->buf[srv->offset] = '\0'; r = srv->request; @@ -730,8 +744,6 @@ debug(84, 1) ("StatefulHandleRead: no callback data registered\n"); } helperStatefulRequestFree(r); - } else { - commSetSelect(srv->rfd, COMM_SELECT_READ, helperStatefulHandleRead, srv, 0); } } @@ -822,7 +834,7 @@ srv = n->data; if (srv->flags.busy) continue; - if (!srv->flags.alive) + if (srv->flags.shutdown) continue; return srv; } @@ -843,7 +855,7 @@ continue; if (srv->flags.reserved) continue; - if (!srv->flags.alive) + if (srv->flags.shutdown) continue; if ((hlp->IsAvailable != NULL) && (srv->data != NULL) && !(hlp->IsAvailable(srv->data))) continue; @@ -873,10 +885,6 @@ NULL, /* Handler */ NULL, /* Handler-data */ NULL); /* free */ - commSetSelect(srv->rfd, - COMM_SELECT_READ, - helperHandleRead, - srv, 0); debug(84, 5) ("helperDispatch: Request sent to %s #%d, %d bytes\n", hlp->id_name, srv->index + 1, (int) strlen(r->buf)); srv->stats.uses++; @@ -911,10 +919,6 @@ NULL, /* Handler */ NULL, /* Handler-data */ NULL); /* free */ - commSetSelect(srv->rfd, - COMM_SELECT_READ, - helperStatefulHandleRead, - srv, 0); debug(84, 5) ("helperStatefulDispatch: Request sent to %s #%d, %d bytes\n", hlp->id_name, srv->index + 1, (int) strlen(r->buf)); srv->stats.uses++; diff -ruN squid-2.5.STABLE7/src/http.c squid-2.5.STABLE8/src/http.c --- squid-2.5.STABLE7/src/http.c Thu Oct 7 12:43:44 2004 +++ squid-2.5.STABLE8/src/http.c Fri Feb 11 03:52:59 2005 @@ -1,6 +1,6 @@ /* - * $Id: http.c,v 1.384.2.19 2004/10/07 18:43:44 hno Exp $ + * $Id: http.c,v 1.384.2.28 2005/02/11 10:52:59 hno Exp $ * * DEBUG: section 11 Hypertext Transfer Protocol (HTTP) * AUTHOR: Harvest Derived @@ -399,28 +399,26 @@ { StoreEntry *entry = httpState->entry; size_t hdr_len; - size_t hdr_size = headersEnd(buf, size); + size_t hdr_size; HttpReply *reply = entry->mem_obj->reply; - Ctx ctx; + Ctx ctx = ctx_enter(entry->mem_obj->url); debug(11, 3) ("httpProcessReplyHeader: key '%s'\n", storeKeyText(entry->hash.key)); if (memBufIsNull(&httpState->reply_hdr)) memBufDefInit(&httpState->reply_hdr); assert(httpState->reply_hdr_state == 0); - if (hdr_size) - memBufAppend(&httpState->reply_hdr, buf, hdr_size); - else - memBufAppend(&httpState->reply_hdr, buf, size); + memBufAppend(&httpState->reply_hdr, buf, size); hdr_len = httpState->reply_hdr.size; if (hdr_len > 4 && strncmp(httpState->reply_hdr.buf, "HTTP/", 5)) { debug(11, 3) ("httpProcessReplyHeader: Non-HTTP-compliant header: '%s'\n", httpState->reply_hdr.buf); httpState->reply_hdr_state += 2; memBufClean(&httpState->reply_hdr); + httpBuildVersion(&reply->sline.version, 0, 9); reply->sline.status = HTTP_INVALID_HEADER; + ctx_exit(ctx); return; } - if (hdr_size != hdr_len) - hdr_size = headersEnd(httpState->reply_hdr.buf, hdr_len); + hdr_size = headersEnd(httpState->reply_hdr.buf, hdr_len); if (hdr_size) hdr_len = hdr_size; if (hdr_len > Config.maxReplyHeaderSize) { @@ -428,27 +426,36 @@ if (!memBufIsNull(&httpState->reply_hdr)) memBufClean(&httpState->reply_hdr); reply->sline.status = HTTP_HEADER_TOO_LARGE; + httpState->reply_hdr_state += 2; + ctx_exit(ctx); return; } /* headers can be incomplete only if object still arriving */ if (!hdr_size) { if (httpState->eof) hdr_size = hdr_len; - else + else { + ctx_exit(ctx); return; /* headers not complete */ + } } /* Cut away any excess body data (only needed for debug?) */ memBufAppend(&httpState->reply_hdr, "\0", 1); httpState->reply_hdr.buf[hdr_size] = '\0'; httpState->reply_hdr_state++; assert(httpState->reply_hdr_state == 1); - ctx = ctx_enter(entry->mem_obj->url); httpState->reply_hdr_state++; debug(11, 9) ("GOT HTTP REPLY HDR:\n---------\n%s\n----------\n", httpState->reply_hdr.buf); /* Parse headers into reply structure */ /* what happens if we fail to parse here? */ httpReplyParse(reply, httpState->reply_hdr.buf, hdr_size); + if (reply->sline.status >= HTTP_INVALID_HEADER) { + debug(11, 3) ("httpProcessReplyHeader: Non-HTTP-compliant header: '%s'\n", httpState->reply_hdr.buf); + memBufClean(&httpState->reply_hdr); + ctx_exit(ctx); + return; + } storeTimestampsSet(entry); /* Check if object is cacheable or not based on reply code */ debug(11, 3) ("httpProcessReplyHeader: HTTP CODE: %d\n", reply->sline.status); @@ -523,40 +530,23 @@ HttpReply *reply = mem->reply; int clen; debug(11, 3) ("httpPconnTransferDone: FD %d\n", httpState->fd); - /* - * If we didn't send a keep-alive request header, then this - * can not be a persistent connection. - */ - if (!httpState->flags.keepalive) - return 0; - /* - * What does the reply have to say about keep-alive? - */ - /* - * XXX BUG? - * If the origin server (HTTP/1.0) does not send a keep-alive - * header, but keeps the connection open anyway, what happens? - * We'll return here and http.c waits for an EOF before changing - * store_status to STORE_OK. Combine this with ENTRY_FWD_HDR_WAIT - * and an error status code, and we might have to wait until - * the server times out the socket. - */ - if (!reply->keep_alive) - return 0; debug(11, 5) ("httpPconnTransferDone: content_length=%d\n", reply->content_length); /* If we haven't seen the end of reply headers, we are not done */ if (httpState->reply_hdr_state < 2) return 0; clen = httpReplyBodySize(httpState->request->method, reply); - /* If there is no message body, we can be persistent */ - if (0 == clen) - return 1; /* If the body size is unknown we must wait for EOF */ if (clen < 0) return 0; + /* Barf if we got more than we asked for */ + if (mem->inmem_hi > clen + reply->hdr_sz) + return -1; + /* If there is no message body, we can be persistent */ + if (0 == clen) + return 1; /* If the body size is known, we must wait until we've gotten all of it. */ - if (mem->inmem_hi < reply->content_length + reply->hdr_sz) + if (mem->inmem_hi < clen + reply->hdr_sz) return 0; /* We got it all */ return 1; @@ -662,6 +652,13 @@ err->request = requestLink((request_t *) request); fwdFail(httpState->fwd, err); httpState->fwd->flags.dont_retry = 1; + } else if (entry->mem_obj->reply->sline.status == HTTP_INVALID_HEADER && !(entry->mem_obj->reply->sline.version.major == 0 && entry->mem_obj->reply->sline.version.minor == 9)) { + ErrorState *err; + storeEntryReset(entry); + err = errorCon(ERR_INVALID_RESP, HTTP_BAD_GATEWAY); + err->request = requestLink((request_t *) request); + fwdFail(httpState->fwd, err); + httpState->fwd->flags.dont_retry = 1; } else { fwdComplete(httpState->fwd); } @@ -670,18 +667,29 @@ } else { if (httpState->reply_hdr_state < 2) { httpProcessReplyHeader(httpState, buf, len); - if (entry->mem_obj->reply->sline.status == HTTP_HEADER_TOO_LARGE) { - ErrorState *err; - storeEntryReset(entry); - err = errorCon(ERR_TOO_BIG, HTTP_BAD_GATEWAY); - err->request = requestLink((request_t *) request); - fwdFail(httpState->fwd, err); - httpState->fwd->flags.dont_retry = 1; - comm_close(fd); - return; - } if (httpState->reply_hdr_state == 2) { http_status s = entry->mem_obj->reply->sline.status; + if (s == HTTP_HEADER_TOO_LARGE) { + ErrorState *err; + debug(11, 1) ("WARNING: %s:%d: HTTP header too large\n", __FILE__, __LINE__); + storeEntryReset(entry); + err = errorCon(ERR_TOO_BIG, HTTP_BAD_GATEWAY); + err->request = requestLink((request_t *) request); + fwdFail(httpState->fwd, err); + httpState->fwd->flags.dont_retry = 1; + comm_close(fd); + return; + } + if (s == HTTP_INVALID_HEADER && !(entry->mem_obj->reply->sline.version.major == 0 && entry->mem_obj->reply->sline.version.minor == 9)) { + ErrorState *err; + storeEntryReset(entry); + err = errorCon(ERR_INVALID_RESP, HTTP_BAD_GATEWAY); + err->request = requestLink((request_t *) request); + fwdFail(httpState->fwd, err); + httpState->fwd->flags.dont_retry = 1; + comm_close(fd); + return; + } #if WIP_FWD_LOG fwdStatus(httpState->fwd, s); #endif @@ -700,22 +708,70 @@ * in that case, the server FD should already be closed. * there's nothing for us to do. */ - (void) 0; - } else if (httpPconnTransferDone(httpState)) { - /* yes we have to clear all these! */ - commSetDefer(fd, NULL, NULL); - commSetTimeout(fd, -1, NULL, NULL); - commSetSelect(fd, COMM_SELECT_READ, NULL, NULL, 0); + return; + } + switch (httpPconnTransferDone(httpState)) { + case 1: + { + int keep_alive = 1; + /* + * If we didn't send a keep-alive request header, then this + * can not be a persistent connection. + */ + if (!httpState->flags.keepalive) + keep_alive = 0; + /* + * If we haven't sent the whole request then this can not be a persistent + * connection. + */ + if (!httpState->flags.request_sent) { + debug(11, 1) ("httpReadReply: Request not yet fully sent \"%s %s\"\n", + RequestMethodStr[httpState->orig_request->method], + storeUrl(entry)); + keep_alive = 0; + } + /* + * What does the reply have to say about keep-alive? + */ + if (!entry->mem_obj->reply->keep_alive) + keep_alive = 0; + /* + * Verify that the connection is clean + */ + if (len == read_sz) { + statCounter.syscalls.sock.reads++; + len = FD_READ_METHOD(fd, buf, SQUID_TCP_SO_RCVBUF); + if ((len < 0 && !ignoreErrno(errno)) || len == 0) { + keep_alive = 0; + } else if (len > 0) { + debug(11, 1) ("httpReadReply: Excess data from \"%s %s\"\n", + RequestMethodStr[httpState->orig_request->method], + storeUrl(entry)); + storeAppend(entry, buf, len); + keep_alive = 0; + } + } + if (keep_alive) { + /* yes we have to clear all these! */ + commSetDefer(fd, NULL, NULL); + commSetTimeout(fd, -1, NULL, NULL); + commSetSelect(fd, COMM_SELECT_READ, NULL, NULL, 0); #if DELAY_POOLS - delayClearNoDelay(fd); + delayClearNoDelay(fd); #endif - comm_remove_close_handler(fd, httpStateFree, httpState); - fwdUnregister(fd, httpState->fwd); - pconnPush(fd, request->host, request->port); - fwdComplete(httpState->fwd); - httpState->fd = -1; - httpStateFree(fd, httpState); - } else { + comm_remove_close_handler(fd, httpStateFree, httpState); + fwdUnregister(fd, httpState->fwd); + pconnPush(fd, request->host, request->port); + fwdComplete(httpState->fwd); + httpState->fd = -1; + httpStateFree(fd, httpState); + } else { + fwdComplete(httpState->fwd); + comm_close(fd); + } + } + return; + case 0: /* Wait for more data or EOF condition */ if (httpState->flags.keepalive_broken) { commSetTimeout(fd, 10, NULL, NULL); @@ -723,6 +779,18 @@ commSetTimeout(fd, Config.Timeout.read, NULL, NULL); } commSetSelect(fd, COMM_SELECT_READ, httpReadReply, httpState, 0); + return; + case -1: + /* Server is nasty on us. Shut down */ + debug(11, 1) ("httpReadReply: Excess data from \"%s %s\"\n", + RequestMethodStr[httpState->orig_request->method], + storeUrl(entry)); + fwdComplete(httpState->fwd); + comm_close(fd); + return; + default: + fatal("Unexpected httpPconnTransferDone() status\n"); + break; } } } @@ -768,6 +836,7 @@ commSetTimeout(fd, Config.Timeout.read, httpTimeout, httpState); commSetDefer(fd, fwdCheckDeferRead, entry); } + httpState->flags.request_sent = 1; } /* diff -ruN squid-2.5.STABLE7/src/ipcache.c squid-2.5.STABLE8/src/ipcache.c --- squid-2.5.STABLE7/src/ipcache.c Mon Sep 27 12:17:39 2004 +++ squid-2.5.STABLE8/src/ipcache.c Tue Dec 7 16:40:57 2004 @@ -1,6 +1,6 @@ /* - * $Id: ipcache.c,v 1.236.2.4 2004/09/27 18:17:39 hno Exp $ + * $Id: ipcache.c,v 1.236.2.5 2004/12/07 23:40:57 hno Exp $ * * DEBUG: section 14 IP Cache * AUTHOR: Harvest Derived @@ -406,10 +406,12 @@ IpcacheStats.requests++; if (name == NULL || name[0] == '\0') { debug(14, 4) ("ipcache_nbgethostbyname: Invalid name!\n"); + dns_error_message = "Invalid hostname"; handler(NULL, handlerData); return; } if ((addrs = ipcacheCheckNumeric(name))) { + dns_error_message = NULL; handler(addrs, handlerData); return; } @@ -502,10 +504,13 @@ } else { IpcacheStats.hits++; i->lastref = squid_curtime; + dns_error_message = i->error_message; return &i->addrs; } - if ((addrs = ipcacheCheckNumeric(name))) + dns_error_message = NULL; + if ((addrs = ipcacheCheckNumeric(name))) { return addrs; + } IpcacheStats.misses++; if (flags & IP_LOOKUP_IF_MISS) ipcache_nbgethostbyname(name, dummy_handler, NULL); diff -ruN squid-2.5.STABLE7/src/main.c squid-2.5.STABLE8/src/main.c --- squid-2.5.STABLE7/src/main.c Wed Dec 17 14:10:30 2003 +++ squid-2.5.STABLE8/src/main.c Tue Dec 28 05:54:35 2004 @@ -1,6 +1,6 @@ /* - * $Id: main.c,v 1.345.2.13 2003/12/17 21:10:30 hno Exp $ + * $Id: main.c,v 1.345.2.15 2004/12/28 12:54:35 hno Exp $ * * DEBUG: section 1 Startup and Main Loop * AUTHOR: Harvest Derived @@ -586,7 +586,6 @@ main(int argc, char **argv) { int errcount = 0; - int n; /* # of GC'd objects */ int loop_delay; mode_t oldmask; #if defined(_SQUID_MSWIN_) || defined(_SQUID_CYGWIN_) @@ -701,10 +700,6 @@ watch_child(argv); setMaxFD(); - if (opt_catch_signals) - for (n = Squid_MaxFD; n > 2; n--) - close(n); - /* init comm module */ comm_init(); comm_select_init(); @@ -892,9 +887,6 @@ dup2(nullfd, 1); dup2(nullfd, 2); } - /* Close all else */ - for (i = 3; i < Squid_MaxFD; i++) - close(i); for (;;) { mainStartScript(argv[0]); if ((pid = fork()) == 0) { diff -ruN squid-2.5.STABLE7/src/mime.c squid-2.5.STABLE8/src/mime.c --- squid-2.5.STABLE7/src/mime.c Sun Dec 14 06:33:47 2003 +++ squid-2.5.STABLE8/src/mime.c Fri Jan 21 17:56:14 2005 @@ -1,6 +1,6 @@ /* - * $Id: mime.c,v 1.102.2.3 2003/12/14 13:33:47 hno Exp $ + * $Id: mime.c,v 1.102.2.4 2005/01/22 00:56:14 hno Exp $ * * DEBUG: section 25 MIME Parsing * AUTHOR: Harvest Derived @@ -118,7 +118,7 @@ headersEnd(const char *mime, size_t l) { size_t e = 0; - int state = 0; + int state = 1; while (e < l && state < 3) { switch (state) { case 0: @@ -134,9 +134,7 @@ state = 0; break; case 2: - if ('\r' == mime[e]) /* ignore repeated CR */ - (void) 0; - else if ('\n' == mime[e]) + if ('\n' == mime[e]) state = 3; else state = 0; diff -ruN squid-2.5.STABLE7/src/protos.h squid-2.5.STABLE8/src/protos.h --- squid-2.5.STABLE7/src/protos.h Tue Oct 5 16:34:42 2004 +++ squid-2.5.STABLE8/src/protos.h Fri Jan 21 05:22:59 2005 @@ -1,6 +1,6 @@ /* - * $Id: protos.h,v 1.420.2.25 2004/10/05 22:34:42 hno Exp $ + * $Id: protos.h,v 1.420.2.26 2005/01/21 12:22:59 hno Exp $ * * * SQUID Web Proxy Cache http://www.squid-cache.org/ @@ -504,7 +504,7 @@ extern time_t httpReplyExpires(const HttpReply * rep); extern int httpReplyHasCc(const HttpReply * rep, http_hdr_cc_type type); extern void httpRedirectReply(HttpReply *, http_status, const char *); -extern int httpReplyBodySize(method_t, HttpReply *); +extern int httpReplyBodySize(method_t, const HttpReply *); /* Http Request */ extern request_t *requestCreate(method_t, protocol_t, const char *urlpath); diff -ruN squid-2.5.STABLE7/src/stat.c squid-2.5.STABLE8/src/stat.c --- squid-2.5.STABLE7/src/stat.c Sat Jul 17 14:09:23 2004 +++ squid-2.5.STABLE8/src/stat.c Tue Dec 7 18:00:56 2004 @@ -1,6 +1,6 @@ /* - * $Id: stat.c,v 1.351.2.10 2004/07/17 20:09:23 hno Exp $ + * $Id: stat.c,v 1.351.2.11 2004/12/08 01:00:56 hno Exp $ * * DEBUG: section 18 Cache Manager Statistics * AUTHOR: Harvest Derived @@ -58,7 +58,7 @@ static void statCountersClean(StatCounters *); static void statCountersCopy(StatCounters * dest, const StatCounters * orig); static double statMedianSvc(int, int); -static void statStoreEntry(StoreEntry * s, StoreEntry * e); +static void statStoreEntry(MemBuf * mb, StoreEntry * e); static double statCPUUsage(int minutes); static OBJH stat_io_get; static OBJH stat_objects_get; @@ -254,55 +254,55 @@ } static void -statStoreEntry(StoreEntry * s, StoreEntry * e) +statStoreEntry(MemBuf * mb, StoreEntry * e) { MemObject *mem = e->mem_obj; int i; struct _store_client *sc; dlink_node *node; - storeAppendPrintf(s, "KEY %s\n", storeKeyText(e->hash.key)); + memBufPrintf(mb, "KEY %s\n", storeKeyText(e->hash.key)); if (mem) - storeAppendPrintf(s, "\t%s %s\n", + memBufPrintf(mb, "\t%s %s\n", RequestMethodStr[mem->method], mem->log_url); - storeAppendPrintf(s, "\t%s\n", describeStatuses(e)); - storeAppendPrintf(s, "\t%s\n", storeEntryFlags(e)); - storeAppendPrintf(s, "\t%s\n", describeTimestamps(e)); - storeAppendPrintf(s, "\t%d locks, %d clients, %d refs\n", + memBufPrintf(mb, "\t%s\n", describeStatuses(e)); + memBufPrintf(mb, "\t%s\n", storeEntryFlags(e)); + memBufPrintf(mb, "\t%s\n", describeTimestamps(e)); + memBufPrintf(mb, "\t%d locks, %d clients, %d refs\n", (int) e->lock_count, storePendingNClients(e), (int) e->refcount); - storeAppendPrintf(s, "\tSwap Dir %d, File %#08X\n", + memBufPrintf(mb, "\tSwap Dir %d, File %#08X\n", e->swap_dirn, e->swap_filen); if (mem != NULL) { - storeAppendPrintf(s, "\tinmem_lo: %d\n", (int) mem->inmem_lo); - storeAppendPrintf(s, "\tinmem_hi: %d\n", (int) mem->inmem_hi); - storeAppendPrintf(s, "\tswapout: %d bytes queued\n", + memBufPrintf(mb, "\tinmem_lo: %d\n", (int) mem->inmem_lo); + memBufPrintf(mb, "\tinmem_hi: %d\n", (int) mem->inmem_hi); + memBufPrintf(mb, "\tswapout: %d bytes queued\n", (int) mem->swapout.queue_offset); if (mem->swapout.sio) - storeAppendPrintf(s, "\tswapout: %d bytes written\n", + memBufPrintf(mb, "\tswapout: %d bytes written\n", (int) storeOffset(mem->swapout.sio)); for (i = 0, node = mem->clients.head; node; node = node->next, i++) { sc = (store_client *) node->data; if (sc->callback_data == NULL) continue; - storeAppendPrintf(s, "\tClient #%d, %p\n", i, sc->callback_data); - storeAppendPrintf(s, "\t\tcopy_offset: %d\n", + memBufPrintf(mb, "\tClient #%d, %p\n", i, sc->callback_data); + memBufPrintf(mb, "\t\tcopy_offset: %d\n", (int) sc->copy_offset); - storeAppendPrintf(s, "\t\tseen_offset: %d\n", + memBufPrintf(mb, "\t\tseen_offset: %d\n", (int) sc->seen_offset); - storeAppendPrintf(s, "\t\tcopy_size: %d\n", + memBufPrintf(mb, "\t\tcopy_size: %d\n", (int) sc->copy_size); - storeAppendPrintf(s, "\t\tflags:"); + memBufPrintf(mb, "\t\tflags:"); if (sc->flags.disk_io_pending) - storeAppendPrintf(s, " disk_io_pending"); + memBufPrintf(mb, " disk_io_pending"); if (sc->flags.store_copying) - storeAppendPrintf(s, " store_copying"); + memBufPrintf(mb, " store_copying"); if (sc->flags.copy_event_pending) - storeAppendPrintf(s, " copy_event_pending"); - storeAppendPrintf(s, "\n"); + memBufPrintf(mb, " copy_event_pending"); + memBufPrintf(mb, "\n"); } } - storeAppendPrintf(s, "\n"); + memBufPrintf(mb, "\n"); } /* process objects list */ @@ -326,19 +326,23 @@ eventAdd("statObjects", statObjects, state, 0.1, 1); return; } - storeBuffer(state->sentry); debug(49, 3) ("statObjects: Bucket #%d\n", state->bucket); link_next = hash_get_bucket(store_table, state->bucket); - while (NULL != (link_ptr = link_next)) { - link_next = link_ptr->next; - e = (StoreEntry *) link_ptr; - if (state->filter && 0 == state->filter(e)) - continue; - statStoreEntry(state->sentry, e); + if (link_next) { + MemBuf mb; + memBufDefInit(&mb); + while (NULL != (link_ptr = link_next)) { + link_next = link_ptr->next; + e = (StoreEntry *) link_ptr; + if (state->filter && 0 == state->filter(e)) + continue; + statStoreEntry(&mb, e); + } + storeAppend(state->sentry, mb.buf, mb.size); + memBufClean(&mb); } state->bucket++; eventAdd("statObjects", statObjects, state, 0.0, 1); - storeBufferFlush(state->sentry); } static void diff -ruN squid-2.5.STABLE7/src/store.c squid-2.5.STABLE8/src/store.c --- squid-2.5.STABLE7/src/store.c Mon May 31 15:28:30 2004 +++ squid-2.5.STABLE8/src/store.c Fri Jan 21 04:57:38 2005 @@ -1,6 +1,6 @@ /* - * $Id: store.c,v 1.544.2.6 2004/05/31 21:28:30 hno Exp $ + * $Id: store.c,v 1.544.2.7 2005/01/21 11:57:38 hno Exp $ * * DEBUG: section 20 Storage Manager * AUTHOR: Harvest Derived @@ -940,6 +940,7 @@ storeEntryValidLength(const StoreEntry * e) { int diff; + int clen; const HttpReply *reply; assert(e->mem_obj != NULL); reply = e->mem_obj->reply; @@ -948,31 +949,18 @@ objectLen(e)); debug(20, 5) ("storeEntryValidLength: hdr_sz = %d\n", reply->hdr_sz); + clen = httpReplyBodySize(e->mem_obj->method, reply); debug(20, 5) ("storeEntryValidLength: content_length = %d\n", - reply->content_length); - if (reply->content_length < 0) { + clen); + if (clen < 0) { debug(20, 5) ("storeEntryValidLength: Unspecified content length: %s\n", storeKeyText(e->hash.key)); return 1; } - if (reply->hdr_sz == 0) { - debug(20, 5) ("storeEntryValidLength: Zero header size: %s\n", - storeKeyText(e->hash.key)); - return 1; - } - if (e->mem_obj->method == METHOD_HEAD) { - debug(20, 5) ("storeEntryValidLength: HEAD request: %s\n", - storeKeyText(e->hash.key)); - return 1; - } - if (reply->sline.status == HTTP_NOT_MODIFIED) - return 1; - if (reply->sline.status == HTTP_NO_CONTENT) - return 1; - diff = reply->hdr_sz + reply->content_length - objectLen(e); + diff = reply->hdr_sz + clen - objectLen(e); if (diff == 0) return 1; - debug(20, 3) ("storeEntryValidLength: %d bytes too %s; '%s'\n", + debug(20, 2) ("storeEntryValidLength: %d bytes too %s; '%s'\n", diff < 0 ? -diff : diff, diff < 0 ? "big" : "small", storeKeyText(e->hash.key)); diff -ruN squid-2.5.STABLE7/src/store_digest.c squid-2.5.STABLE8/src/store_digest.c --- squid-2.5.STABLE7/src/store_digest.c Wed Oct 24 00:55:44 2001 +++ squid-2.5.STABLE8/src/store_digest.c Sun Jan 30 18:49:42 2005 @@ -1,6 +1,6 @@ /* - * $Id: store_digest.c,v 1.51 2001/10/24 06:55:44 hno Exp $ + * $Id: store_digest.c,v 1.51.2.1 2005/01/31 01:49:42 hno Exp $ * * DEBUG: section 71 Store Digest Manager * AUTHOR: Alex Rousskov @@ -387,6 +387,7 @@ (long int) e->mem_obj->reply->expires, (int) (e->mem_obj->reply->expires - squid_curtime)); storeBuffer(e); httpReplySwapOut(e->mem_obj->reply, e); + e->mem_obj->reply->hdr_sz = e->mem_obj->inmem_hi; storeDigestCBlockSwapOut(e); storeBufferFlush(e); eventAdd("storeDigestSwapOutStep", storeDigestSwapOutStep, sd_state.rewrite_lock, 0.0, 1); diff -ruN squid-2.5.STABLE7/src/structs.h squid-2.5.STABLE8/src/structs.h --- squid-2.5.STABLE7/src/structs.h Tue Oct 5 16:56:36 2004 +++ squid-2.5.STABLE8/src/structs.h Thu Feb 3 17:30:01 2005 @@ -1,6 +1,6 @@ /* - * $Id: structs.h,v 1.408.2.30 2004/10/05 22:56:36 hno Exp $ + * $Id: structs.h,v 1.408.2.36 2005/02/04 00:30:01 hno Exp $ * * * SQUID Web Proxy Cache http://www.squid-cache.org/ @@ -118,8 +118,7 @@ int auth_module; /* we only have one username associated with a given auth_user struct */ auth_user_hash_pointer *usernamehash; - /* we may have many proxy-authenticate strings that decode to the same user */ - dlink_list proxy_auth_list; + /* cache of acl lookups on this username */ dlink_list proxy_match_cache; /* what ip addresses has this user been seen at?, plus a list length cache */ dlink_list ip_list; @@ -606,6 +605,9 @@ int request_entities; int detect_broken_server_pconns; int balance_on_multiple_ip; + int relaxed_header_parser; + int accel_uses_host_header; + int accel_no_pmtu_disc; } onoff; acl *aclList; struct { @@ -983,6 +985,7 @@ unsigned int only_if_cached:1; unsigned int keepalive_broken:1; unsigned int abuse_detected:1; + unsigned int request_sent:1; }; struct _HttpStateData { @@ -2027,6 +2030,7 @@ const char *id_name; int n_to_start; int n_running; + int n_active; int ipc_type; time_t last_queue_warn; struct { @@ -2046,6 +2050,7 @@ const char *id_name; int n_to_start; int n_running; + int n_active; int ipc_type; MemPool *datapool; HLPSAVAIL *IsAvailable; @@ -2075,7 +2080,6 @@ helper *parent; helper_request *request; struct _helper_flags { - unsigned int alive:1; unsigned int busy:1; unsigned int closing:1; unsigned int shutdown:1; diff -ruN squid-2.5.STABLE7/src/wccp.c squid-2.5.STABLE8/src/wccp.c --- squid-2.5.STABLE7/src/wccp.c Thu Oct 24 12:51:14 2002 +++ squid-2.5.STABLE8/src/wccp.c Fri Feb 4 04:38:15 2005 @@ -1,6 +1,6 @@ /* - * $Id: wccp.c,v 1.19.2.5 2002/10/24 18:51:14 wessels Exp $ + * $Id: wccp.c,v 1.19.2.9 2005/02/04 11:38:15 hno Exp $ * * DEBUG: section 80 WCCP Support * AUTHOR: Glenn Chisholm @@ -38,7 +38,6 @@ #define WCCP_PORT 2048 #define WCCP_REVISION 0 -#define WCCP_RESPONSE_SIZE 12448 #define WCCP_ACTIVE_CACHES 32 #define WCCP_HASH_SIZE 32 #define WCCP_BUCKETS 256 @@ -83,7 +82,8 @@ static int theOutWccpConnection = -1; static struct wccp_here_i_am_t wccp_here_i_am; static struct wccp_i_see_you_t wccp_i_see_you; -static int change; +static int last_change; +static int last_id; static int last_assign_buckets_change; static int number_caches; static struct in_addr local_ip; @@ -109,8 +109,10 @@ wccp_here_i_am.type = htonl(WCCP_HERE_I_AM); wccp_here_i_am.version = htonl(Config.Wccp.version); wccp_here_i_am.revision = htonl(WCCP_REVISION); - change = 0; + last_change = 0; + last_id = 0; last_assign_buckets_change = 0; + number_caches = 0; if (Config.Wccp.router.s_addr != any_addr.s_addr) if (!eventFind(wccpHereIam, NULL)) eventAdd("wccpHereIam", wccpHereIam, NULL, 5.0, 1); @@ -225,7 +227,7 @@ len = recvfrom(sock, (void *) &wccp_i_see_you, - WCCP_RESPONSE_SIZE, + sizeof(wccp_i_see_you), 0, (struct sockaddr *) &from, &from_len); @@ -245,7 +247,13 @@ return; if (ntohl(wccp_i_see_you.type) != WCCP_I_SEE_YOU) return; - if ((0 == change) && (number_caches == ntohl(wccp_i_see_you.number))) { + if (ntohl(wccp_i_see_you.number) > WCCP_ACTIVE_CACHES || ntohl(wccp_i_see_you.number) < 0) { + debug(80, 1) ("Ignoring WCCP_I_SEE_YOU from %s with number of caches set to %d\n", + inet_ntoa(from.sin_addr), (int) ntohl(wccp_i_see_you.number)); + return; + } + last_id = wccp_i_see_you.id; + if ((0 == last_change) && (number_caches == ntohl(wccp_i_see_you.number))) { if (last_assign_buckets_change == wccp_i_see_you.change) { /* * After a WCCP_ASSIGN_BUCKET message, the router should @@ -257,14 +265,14 @@ */ (void) 0; } else { - change = wccp_i_see_you.change; + last_change = wccp_i_see_you.change; return; } } - if (change != wccp_i_see_you.change) { - change = wccp_i_see_you.change; + if (last_change != wccp_i_see_you.change) { + last_change = wccp_i_see_you.change; if (wccpLowestIP() && wccp_i_see_you.number) { - last_assign_buckets_change = change; + last_assign_buckets_change = last_change; wccpAssignBuckets(); } } @@ -274,11 +282,18 @@ wccpLowestIP(void) { int loop; + int found = 0; + /* + * We sanity checked wccp_i_see_you.number back in wccpHandleUdp() + */ for (loop = 0; loop < ntohl(wccp_i_see_you.number); loop++) { + assert(loop < WCCP_ACTIVE_CACHES); if (wccp_i_see_you.wccp_cache_entry[loop].ip_addr.s_addr < local_ip.s_addr) return 0; + if (wccp_i_see_you.wccp_cache_entry[loop].ip_addr.s_addr == local_ip.s_addr) + found = 1; } - return 1; + return found; } static void @@ -286,7 +301,7 @@ { debug(80, 6) ("wccpHereIam: Called\n"); - wccp_here_i_am.id = wccp_i_see_you.id; + wccp_here_i_am.id = last_id; send(theOutWccpConnection, &wccp_here_i_am, sizeof(wccp_here_i_am), @@ -311,8 +326,8 @@ debug(80, 6) ("wccpAssignBuckets: Called\n"); number_caches = ntohl(wccp_i_see_you.number); - if (number_caches > WCCP_ACTIVE_CACHES) - number_caches = WCCP_ACTIVE_CACHES; + assert(number_caches > 0); + assert(number_caches <= WCCP_ACTIVE_CACHES); wab_len = sizeof(struct wccp_assign_bucket_t); cache_len = WCCP_CACHE_LEN * number_caches; @@ -348,7 +363,7 @@ buf, wab_len + WCCP_BUCKETS + cache_len, 0); - change = 0; + last_change = 0; xfree(buf); }