char *etcHostsPath;
char *visibleHostname;
char *uniqueHostname;
- wordlist *hostnameAliases;
+ SBufList hostnameAliases;
char *errHtmlText;
struct {
DOC_END
NAME: hostname_aliases
-TYPE: wordlist
+TYPE: SBufList
LOC: Config.hostnameAliases
DEFAULT: none
DOC_START
if (!internalCheck(request->url.path()))
return;
- if (internalHostnameIs(request->url.host()) && request->url.port() == getMyPort()) {
+ if (request->url.port() == getMyPort() && internalHostnameIs(SBuf(request->url.host()))) {
debugs(33, 3, "internal URL found: " << request->url.getScheme() << "://" << request->url.authority(true));
request->flags.internal = true;
} else if (Config.onoff.global_internal_static && internalStaticCheck(request->url.path())) {
#include "Store.h"
#include "tools.h"
#include "util.h"
-#include "wordlist.h"
/* called when we "miss" on an internal object;
* generate known dynamic objects,
return host;
}
-int
-internalHostnameIs(const char *arg)
+bool
+internalHostnameIs(const SBuf &arg)
{
- wordlist *w;
-
- if (0 == strcmp(arg, internalHostname()))
- return 1;
+ if (arg.caseCmp(internalHostname()) == 0)
+ return true;
- for (w = Config.hostnameAliases; w; w = w->next)
- if (0 == strcmp(arg, w->key))
- return 1;
+ for (const auto &w : Config.hostnameAliases) {
+ if (w.caseCmp(arg) == 0)
+ return true;
+ }
- return 0;
+ return false;
}
char *internalLocalUri(const char *dir, const SBuf &name);
char *internalRemoteUri(bool, const char *, unsigned short, const char *, const SBuf &);
const char *internalHostname(void);
-int internalHostnameIs(const char *);
+bool internalHostnameIs(const SBuf &);
/// whether the given request URL path points to a cache manager (not
/// necessarily running on this Squid instance)