summaryrefslogtreecommitdiff
blob: 63e488be2173e2e8e95700c41b7ecdf2efdf9689 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
diff -Nru squid-2.5.STABLE9.orig/errors/Makefile.in squid-2.5.STABLE9/errors/Makefile.in
--- squid-2.5.STABLE9.orig/errors/Makefile.in	2004-07-10 15:11:41.000000000 +0300
+++ squid-2.5.STABLE9/errors/Makefile.in	2005-03-03 20:19:24.874936344 +0200
@@ -118,7 +118,7 @@
 install_sh = @install_sh@
 makesnmplib = @makesnmplib@
 
-errordir = $(datadir)/errors
+errordir = $(libexecdir)/errors
 
 DEFAULT_ERROR_DIR = $(errordir)
 
diff -Nru squid-2.5.STABLE9.orig/helpers/basic_auth/SMB/Makefile.in squid-2.5.STABLE9/helpers/basic_auth/SMB/Makefile.in
--- squid-2.5.STABLE9.orig/helpers/basic_auth/SMB/Makefile.in	2004-07-10 15:11:41.000000000 +0300
+++ squid-2.5.STABLE9/helpers/basic_auth/SMB/Makefile.in	2005-03-03 20:19:24.875936192 +0200
@@ -128,7 +128,7 @@
 makesnmplib = @makesnmplib@
 
 SMB_AUTH_HELPER = smb_auth.sh
-SAMBAPREFIX = /usr/local/samba
+SAMBAPREFIX = /usr
 SMB_AUTH_HELPER_PATH = $(libexecdir)/$(SMB_AUTH_HELPER)
 
 libexec_SCRIPTS = $(SMB_AUTH_HELPER)
diff -Nru squid-2.5.STABLE9.orig/helpers/basic_auth/SMB/smb_auth.sh squid-2.5.STABLE9/helpers/basic_auth/SMB/smb_auth.sh
--- squid-2.5.STABLE9.orig/helpers/basic_auth/SMB/smb_auth.sh	2001-01-08 01:36:46.000000000 +0200
+++ squid-2.5.STABLE9/helpers/basic_auth/SMB/smb_auth.sh	2005-03-03 20:19:24.876936040 +0200
@@ -24,7 +24,7 @@
 read AUTHSHARE
 read AUTHFILE
 read SMBUSER
-read SMBPASS
+read -r SMBPASS
 
 # Find domain controller
 echo "Domain name: $DOMAINNAME"
@@ -47,7 +47,7 @@
   addropt=""
 fi
 echo "Query address options: $addropt"
-dcip=`$SAMBAPREFIX/bin/nmblookup $addropt "$PASSTHROUGH#1c" | awk '/^[0-9.]+ / { print $1 ; exit }'`
+dcip=`$SAMBAPREFIX/bin/nmblookup $addropt "$PASSTHROUGH#1c" | awk '/^[0-9.]+\..+ / { print $1 ; exit }'`
 echo "Domain controller IP address: $dcip"
 [ -n "$dcip" ] || exit 1
 
diff -Nru squid-2.5.STABLE9.orig/icons/Makefile.in squid-2.5.STABLE9/icons/Makefile.in
--- squid-2.5.STABLE9.orig/icons/Makefile.in	2004-07-10 15:11:47.000000000 +0300
+++ squid-2.5.STABLE9/icons/Makefile.in	2005-03-03 20:19:24.876936040 +0200
@@ -146,7 +146,7 @@
 		anthony-xpm.gif
 
 
-icondir = $(datadir)/icons
+icondir = $(libexecdir)/icons
 icon_DATA = $(ICON1) $(ICON2)
 EXTRA_DIST = $(ICON1) $(ICON2) icons.shar
 DISTCLEANFILES = 
diff -Nru squid-2.5.STABLE9.orig/snmplib/snmp_api.c squid-2.5.STABLE9/snmplib/snmp_api.c
--- squid-2.5.STABLE9.orig/snmplib/snmp_api.c	2002-02-13 03:43:43.000000000 +0200
+++ squid-2.5.STABLE9/snmplib/snmp_api.c	2005-03-03 20:19:24.877935888 +0200
@@ -121,7 +121,7 @@
 }
 
 /*
- * Parses the packet recieved on the input session, and places the data into
+ * Parses the packet received on the input session, and places the data into
  * the input pdu.  length is the length of the input packet.  If any errors
  * are encountered, NULL is returned.  If not, the community is.
  */
diff -Nru squid-2.5.STABLE9.orig/src/Makefile.in squid-2.5.STABLE9/src/Makefile.in
--- squid-2.5.STABLE9.orig/src/Makefile.in	2004-09-26 00:37:59.000000000 +0300
+++ squid-2.5.STABLE9/src/Makefile.in	2005-03-03 20:19:24.878935736 +0200
@@ -376,18 +376,18 @@
 DEFAULT_CONFIG_FILE = $(sysconfdir)/squid.conf
 DEFAULT_MIME_TABLE = $(sysconfdir)/mime.conf
 DEFAULT_DNSSERVER = $(libexecdir)/`echo dnsserver | sed '$(transform);s/$$/$(EXEEXT)/'`
-DEFAULT_LOG_PREFIX = $(localstatedir)/logs
-DEFAULT_CACHE_LOG = $(DEFAULT_LOG_PREFIX)/cache.log
-DEFAULT_ACCESS_LOG = $(DEFAULT_LOG_PREFIX)/access.log
-DEFAULT_STORE_LOG = $(DEFAULT_LOG_PREFIX)/store.log
-DEFAULT_PID_FILE = $(DEFAULT_LOG_PREFIX)/squid.pid
-DEFAULT_SWAP_DIR = $(localstatedir)/cache
+DEFAULT_LOG_PREFIX = $(localstatedir)/log
+DEFAULT_CACHE_LOG = $(localstatedir)/log/squid/cache.log
+DEFAULT_ACCESS_LOG = $(localstatedir)/log/squid/access.log
+DEFAULT_STORE_LOG = $(localstatedir)/log/squid/store.log
+DEFAULT_PID_FILE = $(localstatedir)/run/squid.pid
+DEFAULT_SWAP_DIR = $(localstatedir)/cache/squid
 DEFAULT_PINGER = $(libexecdir)/`echo pinger | sed '$(transform);s/$$/$(EXEEXT)/'`
 DEFAULT_UNLINKD = $(libexecdir)/`echo unlinkd | sed '$(transform);s/$$/$(EXEEXT)/'`
 DEFAULT_DISKD = $(libexecdir)/`echo diskd | sed '$(transform);s/$$/$(EXEEXT)/'`
-DEFAULT_ICON_DIR = $(datadir)/icons
-DEFAULT_ERROR_DIR = $(datadir)/errors/@ERR_DEFAULT_LANGUAGE@
-DEFAULT_MIB_PATH = $(datadir)/mib.txt
+DEFAULT_ICON_DIR = $(libexecdir)/icons
+DEFAULT_ERROR_DIR = $(sysconfdir)/errors
+DEFAULT_MIB_PATH = $(libexecdir)/mib.txt
 
 DEFS = @DEFS@ -DDEFAULT_CONFIG_FILE=\"$(DEFAULT_CONFIG_FILE)\"
 
@@ -838,12 +838,12 @@
 uninstall-info-am:
 install-dataDATA: $(data_DATA)
 	@$(NORMAL_INSTALL)
-	$(mkinstalldirs) $(DESTDIR)$(datadir)
+	$(mkinstalldirs) $(DESTDIR)$(libexecdir)
 	@list='$(data_DATA)'; for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
 	  f="`echo $$p | sed -e 's|^.*/||'`"; \
-	  echo " $(INSTALL_DATA) $$d$$p $(DESTDIR)$(datadir)/$$f"; \
-	  $(INSTALL_DATA) $$d$$p $(DESTDIR)$(datadir)/$$f; \
+	  echo " $(INSTALL_DATA) $$d$$p $(DESTDIR)$(libexecdir)/$$f"; \
+	  $(INSTALL_DATA) $$d$$p $(DESTDIR)$(libexecdir)/$$f; \
 	done
 
 uninstall-dataDATA:
diff -Nru squid-2.5.STABLE9.orig/src/auth/digest/auth_digest.c squid-2.5.STABLE9/src/auth/digest/auth_digest.c
--- squid-2.5.STABLE9.orig/src/auth/digest/auth_digest.c	2004-08-29 01:31:15.000000000 +0300
+++ squid-2.5.STABLE9/src/auth/digest/auth_digest.c	2005-03-03 20:19:24.879935584 +0200
@@ -1252,7 +1252,7 @@
     nonce = authenticateDigestNonceFindNonce(digest_request->nonceb64);
     if (!nonce) {
 	/* we couldn't find a matching nonce! */
-	debug(29, 4) ("authenticateDigestDecode: Unexpected or invalid nonce recieved\n");
+	debug(29, 4) ("authenticateDigestDecode: Unexpected or invalid nonce received\n");
 	authDigestLogUsername(auth_user_request, username);
 
 	/* we don't need the scheme specific data anymore */
@@ -1266,8 +1266,8 @@
     /* check the qop is what we expected. Note that for compatability with 
      * RFC 2069 we should support a missing qop. Tough. */
     if (!digest_request->qop || strcmp(digest_request->qop, QOP_AUTH)) {
-	/* we recieved a qop option we didn't send */
-	debug(29, 4) ("authenticateDigestDecode: Invalid qop option recieved\n");
+	/* we received a qop option we didn't send */
+	debug(29, 4) ("authenticateDigestDecode: Invalid qop option received\n");
 	authDigestLogUsername(auth_user_request, username);
 
 	/* we don't need the scheme specific data anymore */
diff -Nru squid-2.5.STABLE9.orig/src/auth/ntlm/auth_ntlm.c squid-2.5.STABLE9/src/auth/ntlm/auth_ntlm.c
--- squid-2.5.STABLE9.orig/src/auth/ntlm/auth_ntlm.c	2005-02-04 01:22:12.000000000 +0200
+++ squid-2.5.STABLE9/src/auth/ntlm/auth_ntlm.c	2005-03-03 20:19:24.880935432 +0200
@@ -950,7 +950,7 @@
     }
     switch (ntlm_request->auth_state) {
     case AUTHENTICATE_STATE_NONE:
-	/* we've recieved a negotiate request. pass to a helper */
+	/* we've received a negotiate request. pass to a helper */
 	debug(29, 9) ("authenticateNTLMAuthenticateUser: auth state ntlm none. %s\n", proxy_auth);
 	ntlm_request->auth_state = AUTHENTICATE_STATE_NEGOTIATE;
 	ntlm_request->ntlmnegotiate = xstrdup(proxy_auth);
@@ -969,7 +969,7 @@
 	return;
 	break;
     case AUTHENTICATE_STATE_CHALLENGE:
-	/* we should have recieved a NTLM challenge. pass it to the same 
+	/* we should have received a NTLM challenge. pass it to the same 
 	 * helper process */
 	debug(29, 9) ("authenticateNTLMAuthenticateUser: auth state challenge with header %s.\n", proxy_auth);
 	/* do a cache lookup here. If it matches it's a successful ntlm 
diff -Nru squid-2.5.STABLE9.orig/src/cf.data.pre squid-2.5.STABLE9/src/cf.data.pre
--- squid-2.5.STABLE9.orig/src/cf.data.pre	2005-02-23 02:06:34.000000000 +0200
+++ squid-2.5.STABLE9/src/cf.data.pre	2005-03-03 20:19:24.883934976 +0200
@@ -156,12 +156,12 @@
 NAME: htcp_port
 IFDEF: USE_HTCP
 TYPE: ushort
-DEFAULT: 4827
+DEFAULT: 0
 LOC: Config.Port.htcp
 DOC_START
 	The port number where Squid sends and receives HTCP queries to
-	and from neighbor caches.  Default is 4827.  To disable use
-	"0".
+	and from neighbor caches.  To turn it on you want to set it to
+	4827.  By default it is set to "0" (disabled).
 DOC_END
 
 
@@ -2100,7 +2100,7 @@
 	  # acls.
 
 	acl aclname rep_mime_type mime-type1 ...
-	  # regex match against the mime type of the reply recieved by
+	  # regex match against the mime type of the reply received by
 	  # squid. Can be used to detect file download or some
 	  # types HTTP tunelling requests.
 	  # NOTE: This has no effect in http_access rules. It only has
@@ -2140,6 +2140,8 @@
 acl Safe_ports port 488		# gss-http
 acl Safe_ports port 591		# filemaker
 acl Safe_ports port 777		# multiling http
+acl Safe_ports port 901		# SWAT
+acl purge method PURGE
 acl CONNECT method CONNECT
 NOCOMMENT_END
 DOC_END
@@ -2173,6 +2175,9 @@
 # Only allow cachemgr access from localhost
 http_access allow manager localhost
 http_access deny manager
+# Only allow purge requests from localhost
+http_access allow purge localhost
+http_access deny purge
 # Deny requests to unknown ports
 http_access deny !Safe_ports
 # Deny CONNECT to other than SSL ports
@@ -2191,6 +2196,9 @@
 #acl our_networks src 192.168.1.0/24 192.168.2.0/24
 #http_access allow our_networks
 
+# Allow the localhost to have access by default
+http_access allow localhost
+
 # And finally deny all other access to this proxy
 http_access deny all
 NOCOMMENT_END
@@ -2388,7 +2396,7 @@
 DOC_START
         This option specifies the maximum size of a reply body in bytes.
 	It can be used to prevent users from downloading very large files,
-	such as MP3's and movies. When the reply headers are recieved,
+	such as MP3's and movies. When the reply headers are received,
 	the reply_body_max_size lines are processed, and the first line with
 	a result of "allow" is used as the maximum body size for this reply.
 	This size is checked twice. First when we get the reply headers,
@@ -2415,7 +2423,7 @@
 
 NAME: cache_mgr
 TYPE: string
-DEFAULT: webmaster
+DEFAULT: root
 LOC: Config.adminEmail
 DOC_START
 	Email-address of local cache manager who will receive
@@ -2425,7 +2433,7 @@
 
 NAME: cache_effective_user
 TYPE: string
-DEFAULT: nobody
+DEFAULT: squid 
 LOC: Config.effectiveUser
 DOC_START
 	If you start Squid as root, it will change its effective/real
@@ -2440,7 +2448,7 @@
 
 NAME: cache_effective_group
 TYPE: string
-DEFAULT: none
+DEFAULT: squid
 LOC: Config.effectiveGroup
 DOC_START
 	If you want Squid to run with a specific GID regardless of
@@ -2592,7 +2600,7 @@
 DOC_START
 	If you are running Squid as an accelerator and have a single backend
 	server set this to on. This causes Squid to forward the request
-	to this server, regardles of what any redirectors or Host headers
+	to this server, regardless of what any redirectors or Host headers
 	say.
 
 	Leave this at off if you have multiple backend servers, and use a
@@ -2918,6 +2918,9 @@
 	If you disable this, it will appear as
 
 		X-Forwarded-For: unknown
+NOCOMMENT_START
+forwarded_for off
+NOCOMMENT_END
 DOC_END
 
 NAME: log_icp_queries
@@ -3229,7 +3237,11 @@
 	If you wish to create your own versions of the default
 	(English) error files, either to customize them to suit your
 	language or company copy the template English files to another
-	directory and point this tag at them.
+	directory where the error files are read from.
+	/usr/lib/squid/errors contains sets of error files
+	in different languages. The default error directory
+	is /etc/squid/errors, which is a link to one of these
+	error sets.
 DOC_END
 
 NAME: maximum_single_addr_tries
@@ -3263,12 +3275,15 @@
 NAME: snmp_port
 TYPE: ushort
 LOC: Config.Port.snmp
-DEFAULT: 3401
+DEFAULT: 0
 IFDEF: SQUID_SNMP
 DOC_START
 	Squid can now serve statistics and status information via SNMP.
 	By default it listens to port 3401 on the machine. If you don't
 	wish to use SNMP, set this to "0".
+
+	Note: on Gentoo Linux, the default is zero - you need to
+	set it to 3401 to enable it.
 DOC_END
 
 NAME: snmp_access
diff -Nru squid-2.5.STABLE9.orig/src/debug.c squid-2.5.STABLE9/src/debug.c
--- squid-2.5.STABLE9.orig/src/debug.c	2001-12-17 20:01:54.000000000 +0200
+++ squid-2.5.STABLE9/src/debug.c	2005-03-03 20:19:24.884934824 +0200
@@ -200,9 +200,9 @@
     }
     debugOpenLog(logfile);
 
-#if HAVE_SYSLOG && defined(LOG_LOCAL4)
+#if HAVE_SYSLOG
     if (opt_syslog_enable)
-	openlog(appname, LOG_PID | LOG_NDELAY | LOG_CONS, LOG_LOCAL4);
+	openlog(appname, LOG_PID | LOG_NDELAY, LOG_DAEMON);
 #endif /* HAVE_SYSLOG */
 
 }
diff -Nru squid-2.5.STABLE9.orig/src/defines.h squid-2.5.STABLE9/src/defines.h
--- squid-2.5.STABLE9.orig/src/defines.h	2002-08-08 23:17:39.000000000 +0300
+++ squid-2.5.STABLE9/src/defines.h	2005-03-03 20:19:24.884934824 +0200
@@ -219,7 +219,7 @@
 
 /* were to look for errors if config path fails */
 #ifndef DEFAULT_SQUID_ERROR_DIR
-#define DEFAULT_SQUID_ERROR_DIR "/usr/local/squid/etc/errors"
+#define DEFAULT_SQUID_ERROR_DIR "/usr/lib/squid/errors/English"
 #endif
 
 /* gb_type operations */
diff -Nru squid-2.5.STABLE9.orig/src/delay_pools.c squid-2.5.STABLE9/src/delay_pools.c
--- squid-2.5.STABLE9.orig/src/delay_pools.c	2003-06-19 02:53:35.000000000 +0300
+++ squid-2.5.STABLE9/src/delay_pools.c	2005-03-03 20:19:24.885934672 +0200
@@ -609,7 +609,7 @@
 }
 
 /*
- * this records actual bytes recieved.  always recorded, even if the
+ * this records actual bytes received.  always recorded, even if the
  * class is disabled - it's more efficient to just do it than to do all
  * the checks.
  */
diff -Nru squid-2.5.STABLE9.orig/src/main.c squid-2.5.STABLE9/src/main.c
--- squid-2.5.STABLE9.orig/src/main.c	2005-02-21 04:55:04.000000000 +0200
+++ squid-2.5.STABLE9/src/main.c	2005-03-03 20:19:24.887934368 +0200
@@ -326,6 +326,21 @@
     asnFreeMemory();
 }
 
+#if USE_UNLINKD
+static int
+needUnlinkd(void)
+{
+    int i;
+    int r = 0;
+    for (i = 0; i < Config.cacheSwap.n_configured; i++) {
+       if (strcmp(Config.cacheSwap.swapDirs[i].type, "ufs") == 0 ||
+           strcmp(Config.cacheSwap.swapDirs[i].type, "diskd") == 0)
+          r++;
+    }
+    return r;
+}
+#endif
+
 static void
 mainReconfigure(void)
 {
@@ -351,6 +366,7 @@
     redirectShutdown();
     authenticateShutdown();
     externalAclShutdown();
+    unlinkdClose();
     storeDirCloseSwapLogs();
     storeLogClose();
     accessLogClose();
@@ -381,6 +397,9 @@
 #if USE_WCCP
     wccpInit();
 #endif
+#if USE_UNLINKD
+    if (needUnlinkd()) unlinkdInit();
+#endif
     serverConnectionsOpen();
     if (theOutIcpConnection >= 0) {
 	if (!Config2.Accel.on || Config.onoff.accel_with_proxy)
@@ -525,7 +544,7 @@
 
     if (!configured_once) {
 #if USE_UNLINKD
-	unlinkdInit();
+	if (needUnlinkd()) unlinkdInit();
 #endif
 	urlInitialize();
 	cachemgrInit();
@@ -860,7 +879,7 @@
     int nullfd;
     if (*(argv[0]) == '(')
 	return;
-    openlog(appname, LOG_PID | LOG_NDELAY | LOG_CONS, LOG_LOCAL4);
+    openlog(appname, LOG_PID | LOG_NDELAY, LOG_DAEMON);
     if ((pid = fork()) < 0)
 	syslog(LOG_ALERT, "fork failed: %s", xstrerror());
     else if (pid > 0)
@@ -894,14 +913,14 @@
 	mainStartScript(argv[0]);
 	if ((pid = fork()) == 0) {
 	    /* child */
-	    openlog(appname, LOG_PID | LOG_NDELAY | LOG_CONS, LOG_LOCAL4);
+	    openlog(appname, LOG_PID | LOG_NDELAY, LOG_DAEMON);
 	    prog = xstrdup(argv[0]);
 	    argv[0] = xstrdup("(squid)");
 	    execvp(prog, argv);
 	    syslog(LOG_ALERT, "execvp failed: %s", xstrerror());
 	}
 	/* parent */
-	openlog(appname, LOG_PID | LOG_NDELAY | LOG_CONS, LOG_LOCAL4);
+	openlog(appname, LOG_PID | LOG_NDELAY, LOG_DAEMON);
 	syslog(LOG_NOTICE, "Squid Parent: child process %d started", pid);
 	time(&start);
 	squid_signal(SIGINT, SIG_IGN, SA_RESTART);
diff -Nru squid-2.5.STABLE9.orig/src/mib.txt squid-2.5.STABLE9/src/mib.txt
--- squid-2.5.STABLE9.orig/src/mib.txt	2004-06-01 01:39:00.000000000 +0300
+++ squid-2.5.STABLE9/src/mib.txt	2005-03-03 20:19:24.887934368 +0200
@@ -290,7 +290,7 @@
                 MAX-ACCESS read-only
                 STATUS current
 		DESCRIPTION
-			" Number of HTTP KB's recieved "
+			" Number of HTTP KB's received "
         ::= { cacheProtoAggregateStats 4 }
 
         cacheHttpOutKb OBJECT-TYPE
@@ -330,7 +330,7 @@
                 MAX-ACCESS read-only
                 STATUS current
 		DESCRIPTION
-                        " Number of ICP KB's recieved "
+                        " Number of ICP KB's received "
         ::= { cacheProtoAggregateStats 9 }
 
         cacheServerRequests OBJECT-TYPE
@@ -354,7 +354,7 @@
                 MAX-ACCESS read-only
                 STATUS current
 		DESCRIPTION
-                        " KB's of traffic recieved from servers "
+                        " KB's of traffic received from servers "
         ::= { cacheProtoAggregateStats 12 }
 
         cacheServerOutKb OBJECT-TYPE
diff -Nru squid-2.5.STABLE9.orig/src/url.c squid-2.5.STABLE9/src/url.c
--- squid-2.5.STABLE9.orig/src/url.c	2003-01-18 16:16:49.000000000 +0200
+++ squid-2.5.STABLE9/src/url.c	2005-03-03 20:19:24.888934216 +0200
@@ -312,8 +312,8 @@
 	return NULL;
     }
 #endif
-    if (Config.appendDomain && !strchr(host, '.'))
-	strncat(host, Config.appendDomain, SQUIDHOSTNAMELEN);
+    if (Config.appendDomain && !strchr(host, '.') && strcasecmp(host, "localhost") != 0)
+        strncat(host, Config.appendDomain, SQUIDHOSTNAMELEN);
     /* remove trailing dots from hostnames */
     while ((l = strlen(host)) > 0 && host[--l] == '.')
 	host[l] = '\0';