1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-18 19:49:40 +00:00

Update to c-ares 1.3.2.

Add the optional ares_config_info patch from Unreal IRCD, on by default;
this is a step closer to building Unreal IRCD with the port version of
c-ares.
This commit is contained in:
Peter Pentchev 2006-12-06 09:58:55 +00:00
parent 9d898a1172
commit 12a28f5b29
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=179012
3 changed files with 69 additions and 6 deletions

View File

@ -6,16 +6,24 @@
#
PORTNAME= c-ares
PORTVERSION= 1.3.1
PORTREVISION= 1
PORTVERSION= 1.3.2
CATEGORIES= dns
MASTER_SITES= http://daniel.haxx.se/projects/c-ares/
MAINTAINER= roam@FreeBSD.org
COMMENT= An asynchronous DNS resolver library
OPTIONS= CONFIG_INFO "Add the ares_config_info patch" ON
CONFLICTS= ares-1.*
.include <bsd.port.pre.mk>
.if defined(WITH_CONFIG_INFO)
EXTRA_PATCHES+= ${FILESDIR}/ares-config-info.patch
PKGNAMESUFFIX= -config
.endif
USE_LDCONFIG= yes
SHLIB_VER= 1
@ -32,6 +40,7 @@ MAN3= ares_cancel.3 \
ares_fds.3 \
ares_free_hostent.3 ares_free_string.3 \
ares_gethostbyaddr.3 ares_gethostbyname.3 ares_getnameinfo.3 \
ares_getsock.3 \
ares_init.3 ares_init_options.3 \
ares_mkquery.3 \
ares_parse_a_reply.3 ares_parse_aaaa_reply.3 ares_parse_ptr_reply.3 \
@ -43,4 +52,4 @@ MAN3= ares_cancel.3 \
ares_timeout.3 \
ares_version.3
.include <bsd.port.mk>
.include <bsd.port.post.mk>

View File

@ -1,3 +1,3 @@
MD5 (c-ares-1.3.1.tar.gz) = e79413ca62df8f124bb0dbf32119310d
SHA256 (c-ares-1.3.1.tar.gz) = e5ac3b76534a6e0302ce9a883ee5021d84394d3e037bcef307301c85621b8580
SIZE (c-ares-1.3.1.tar.gz) = 318859
MD5 (c-ares-1.3.2.tar.gz) = 3f517655f22531889b2465219f4833fa
SHA256 (c-ares-1.3.2.tar.gz) = 91d25e1b819f63043df6d81eb58efccbc90fc0ab4d9f960f4ff9953971c42aa6
SIZE (c-ares-1.3.2.tar.gz) = 330752

View File

@ -0,0 +1,54 @@
diff -urN -x .svn ../c-ares-stock-1.3.2/ares.h ./ares.h
--- ../c-ares-stock-1.3.2/ares.h Wed Dec 6 11:28:12 2006
+++ ./ares.h Wed Dec 6 11:49:07 2006
@@ -164,6 +164,14 @@
void *sock_state_cb_data;
};
+/** Public available config (readonly) interface for ares_get_config(). */
+struct ares_config_info {
+ int timeout;
+ int tries;
+ int numservers;
+ char **servers;
+};
+
struct hostent;
struct timeval;
struct sockaddr;
@@ -216,7 +224,7 @@
void ares_free_string(void *str);
void ares_free_hostent(struct hostent *host);
const char *ares_strerror(int code);
-
+int ares_get_config(struct ares_config_info *d, ares_channel c);
#ifdef __cplusplus
}
#endif
diff -urN -x .svn ../c-ares-stock-1.3.2/ares_init.c ./ares_init.c
--- ../c-ares-stock-1.3.2/ares_init.c Wed Dec 6 11:28:12 2006
+++ ./ares_init.c Wed Dec 6 11:49:07 2006
@@ -1079,3 +1079,23 @@
pat->mask.addr.addr4.s_addr = htonl(IN_CLASSC_NET);
}
#endif
+
+int ares_get_config(struct ares_config_info *d, ares_channel c)
+{
+int i;
+char *p;
+
+ memset(d, 0, sizeof(struct ares_config_info));
+
+ d->timeout = c->timeout;
+ d->tries = c->tries;
+ d->numservers = c->nservers;
+ d->servers = calloc(sizeof(char *), c->nservers);
+ for (i = 0; i < c->nservers; i++)
+ {
+ p = inet_ntoa(c->servers[i].addr);
+ d->servers[i] = p ? strdup(p) : NULL;
+ }
+
+ return ARES_SUCCESS;
+}