size_t tcpRcvBufsz;
size_t udpMaxHitObjsz;
wordlist *mcast_group_list;
- wordlist *dns_nameservers;
CachePeer *peers;
int npeers;
char *storeId_extras;
struct {
+ SBufList nameservers;
int v4_first; ///< Place IPv4 first in the order of DNS results.
ssize_t packet_max; ///< maximum size EDNS advertised for DNS replies.
} dns;
return 0;
}
+static void
+parse_SBufList(SBufList * list)
+{
+ while (char *token = ConfigParser::NextQuotedToken())
+ list->push_back(SBuf(token));
+}
+
+// just dump a list, no directive name
static void
dump_SBufList(StoreEntry * entry, const SBufList &words)
{
- for (SBufList::const_iterator i = words.begin(); i != words.end(); ++i) {
- entry->append(i->rawContent(), i->length());
+ for (const auto &i : words) {
+ entry->append(i.rawContent(), i.length());
entry->append(" ",1);
}
entry->append("\n",1);
}
+// dump a SBufList type directive with name
+static void
+dump_SBufList(StoreEntry * entry, const char *name, SBufList &list)
+{
+ if (!list.empty()) {
+ entry->append(name, strlen(name));
+ entry->append(" ", 1);
+ dump_SBufList(entry, list);
+ }
+}
+
+static void
+free_SBufList(SBufList *list)
+{
+ if (list)
+ list->clear();
+}
+
static void
dump_acl(StoreEntry * entry, const char *name, ACL * ae)
{
wccp2_service
wccp2_service_info
wordlist
+SBufList
sslproxy_ssl_bump acl
sslproxy_ssl_bump_peeked acl
sslproxy_cert_sign acl
DOC_END
NAME: dns_nameservers
-TYPE: wordlist
+TYPE: SBufList
DEFAULT: none
DEFAULT_DOC: Use operating system definitions
-LOC: Config.dns_nameservers
+LOC: Config.dns.nameservers
DOC_START
Use this if you want to specify a list of DNS name servers
(IP addresses) to use instead of those given in your
idnsParseNameservers(void)
{
bool result = false;
- for (wordlist *w = Config.dns_nameservers; w; w = w->next) {
- debugs(78, DBG_IMPORTANT, "Adding nameserver " << w->key << " from squid.conf");
- idnsAddNameserver(w->key);
+ for (auto &i : Config.dns.nameservers) {
+ debugs(78, DBG_IMPORTANT, "Adding nameserver " << i << " from squid.conf");
+ idnsAddNameserver(i.c_str());
result = true;
}
return result;
SquidNew.cc \
stub_HelperChildConfig.cc \
stub_libmem.cc \
+ stub_SBuf.cc \
STUB.h \
time.cc
stub_libmem.cc: $(top_srcdir)/src/tests/stub_libmem.cc STUB.h
cp $(top_srcdir)/src/tests/stub_libmem.cc $@
+stub_SBuf.cc: $(top_srcdir)/src/tests/stub_SBuf.cc STUB.h
+ cp $(top_srcdir)/src/tests/stub_SBuf.cc $@
+
STUB.h: $(top_srcdir)/src/tests/STUB.h
cp $(top_srcdir)/src/tests/STUB.h $@