[6.0] fca0f4df4 Add a version of VSS_resolver() where you specify the socktype.
Dridi Boukelmoune
dridi.boukelmoune at gmail.com
Thu Aug 16 08:53:03 UTC 2018
commit fca0f4df4f55ba5c3329f4c62b9127c24a13b865
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date: Tue May 29 11:54:21 2018 +0000
Add a version of VSS_resolver() where you specify the socktype.
diff --git a/include/vss.h b/include/vss.h
index 14b935636..aa645bdc7 100644
--- a/include/vss.h
+++ b/include/vss.h
@@ -32,3 +32,5 @@ struct suckaddr;
typedef int vss_resolved_f(void *priv, const struct suckaddr *);
int VSS_resolver(const char *addr, const char *def_port, vss_resolved_f *func,
void *priv, const char **err);
+int VSS_resolver_socktype(const char *addr, const char *def_port,
+ vss_resolved_f *func, void *priv, const char **err, int socktype);
diff --git a/lib/libvarnish/vss.c b/lib/libvarnish/vss.c
index 29c66be64..7282019de 100644
--- a/lib/libvarnish/vss.c
+++ b/lib/libvarnish/vss.c
@@ -105,8 +105,8 @@ vss_parse(char *str, char **addr, char **port)
*/
int
-VSS_resolver(const char *addr, const char *def_port, vss_resolved_f *func,
- void *priv, const char **err)
+VSS_resolver_socktype(const char *addr, const char *def_port,
+ vss_resolved_f *func, void *priv, const char **err, int socktype)
{
struct addrinfo hints, *res0, *res;
struct suckaddr *vsa;
@@ -126,7 +126,7 @@ VSS_resolver(const char *addr, const char *def_port, vss_resolved_f *func,
def_port = adp;
memset(&hints, 0, sizeof hints);
- hints.ai_socktype = SOCK_STREAM;
+ hints.ai_socktype = socktype;
hints.ai_flags = AI_PASSIVE;
ret = getaddrinfo(hop, def_port, &hints, &res0);
free(h);
@@ -146,3 +146,11 @@ VSS_resolver(const char *addr, const char *def_port, vss_resolved_f *func,
freeaddrinfo(res0);
return (ret);
}
+
+int
+VSS_resolver(const char *addr, const char *def_port, vss_resolved_f *func,
+ void *priv, const char **err)
+{
+ return (VSS_resolver_socktype(
+ addr, def_port, func, priv, err, SOCK_STREAM));
+}
More information about the varnish-commit
mailing list