]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
- added routines to create "internal" urls
authorrousskov <>
Sun, 5 Apr 1998 09:34:58 +0000 (09:34 +0000)
committerrousskov <>
Sun, 5 Apr 1998 09:34:58 +0000 (09:34 +0000)
- replaced snprintf() calls that created "internal" urls
- host name is converted to lower case for all local internal urls now,
  not just icons

src/mime.cc
src/protos.h
src/url.cc

index d91e0e496839acf98ec18521a2ec21da1f5a1b18..6679239f067a0a996fdd6f60a16ce424045a7512 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: mime.cc,v 1.59 1998/04/02 04:45:06 rousskov Exp $
+ * $Id: mime.cc,v 1.60 1998/04/05 02:34:58 rousskov Exp $
  *
  * DEBUG: section 25    MIME Parsing
  * AUTHOR: Harvest Derived
@@ -331,17 +331,9 @@ char *
 mimeGetIconURL(const char *fn)
 {
     char *icon = mimeGetIcon(fn);
-    static char iconurl[256];
-    static char host[SQUIDHOSTNAMELEN];
     if (icon == NULL)
        return NULL;
-    xstrncpy(host, getMyHostname(), SQUIDHOSTNAMELEN);
-    Tolower(host);
-    snprintf(iconurl, 256, "http://%s:%d/squid-internal/icons/%s",
-       host,
-       Config.Port.http->i,
-       icon);
-    return iconurl;
+    return urlInternal("icons", icon);
 }
 
 char *
index b72f2024ef13307a670f05519e8fc41ff429a7fb..bcf287335b84fd28ab13eed6d82ed1be83ed07b6 100644 (file)
@@ -499,6 +499,7 @@ extern int netdbHops(struct in_addr);
 extern void netdbFreeMemory(void);
 extern int netdbHostHops(const char *host);
 extern int netdbHostRtt(const char *host);
+extern int netdbHostPeerRtt(const char *host, peer * peer);
 extern void netdbUpdatePeer(request_t *, peer * e, int rtt, int hops);
 extern void netdbDeleteAddrNetwork(struct in_addr addr);
 extern int netdbHostPeerRtt(const char *host, peer * peer);
@@ -511,6 +512,10 @@ extern void peerSelect(request_t *, StoreEntry *, PSC *, PSC *, void *data);
 extern peer *peerGetSomeParent(request_t *, hier_code *);
 extern void peerSelectInit(void);
 
+/* peer_digest.c */
+extern void peerDigestValidate(peer *p);
+extern void peerDigestRequest(peer *p);
+
 extern void protoDispatch(int, StoreEntry *, request_t *);
 
 extern int protoUnregister(StoreEntry *, request_t *);
@@ -821,6 +826,8 @@ extern method_t urlParseMethod(const char *);
 extern void urlInitialize(void);
 extern request_t *urlParse(method_t, char *);
 extern char *urlCanonical(const request_t *, char *);
+extern char *urlRInternal(const char *host, int port, const char *dir, const char *name);
+extern char *urlInternal(const char *dir, const char *name);
 extern request_t *requestLink(request_t *);
 extern void requestUnlink(request_t *);
 extern int matchDomainName(const char *d, const char *h);
index a29c17cbe11b32d908397d8a0318a90db241db53..4d5c09a9d8cb78b5c5914100e8a8b87d47fdcad4 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: url.cc,v 1.84 1998/03/31 05:37:53 wessels Exp $
+ * $Id: url.cc,v 1.85 1998/04/05 02:34:59 rousskov Exp $
  *
  * DEBUG: section 23    URL Parsing
  * AUTHOR: Duane Wessels
@@ -369,6 +369,29 @@ urlCanonicalClean(const request_t * request)
     return buf;
 }
 
+/* makes internal url with a given host and port (remote internal url) */
+char *
+urlRInternal(const char *host, int port, const char *dir, const char *name)
+{
+    LOCAL_ARRAY(char, buf, MAX_URL);
+    assert(host && port && name);
+    if (!dir || !*dir)
+       snprintf(buf, MAX_URL, "http://%s:%d/%s", host, port, name);
+    else
+       snprintf(buf, MAX_URL, "http://%s:%d/%s/%s", host, port, dir, name);
+    return buf;
+}
+
+/* makes internal url with local host and port */
+char *
+urlInternal(const char *dir, const char *name)
+{
+    static char host[SQUIDHOSTNAMELEN];
+    xstrncpy(host, getMyHostname(), SQUIDHOSTNAMELEN);
+    Tolower(host);
+    return urlRInternal(host, Config.Port.http->i, dir, name);
+}
+
 request_t *
 requestLink(request_t * request)
 {