chiark
/
gitweb
/
~mdw
/
adns
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Updated README.
[adns]
/
src
/
transmit.c
diff --git
a/src/transmit.c
b/src/transmit.c
index 84df59f1d0e9614e13fc80ca60bf5cc0d689e6dc..4590a16c7f74c95eb3b0dce8b84aeb827c628eaf 100644
(file)
--- a/
src/transmit.c
+++ b/
src/transmit.c
@@
-4,7
+4,12
@@
* - send queries
*/
/*
* - send queries
*/
/*
- * This file is part of adns, which is Copyright (C) 1997-1999 Ian Jackson
+ * This file is
+ * Copyright (C) 1997-1999 Ian Jackson <ian@davenant.greenend.org.uk>
+ *
+ * It is part of adns, which is
+ * Copyright (C) 1997-1999 Ian Jackson <ian@davenant.greenend.org.uk>
+ * Copyright (C) 1999 Tony Finch <dot@dotat.at>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@
-22,8
+27,8
@@
*/
#include <errno.h>
*/
#include <errno.h>
-#include <string.h>
+#include <sys/types.h>
#include <sys/uio.h>
#include "internal.h"
#include <sys/uio.h>
#include "internal.h"
@@
-210,12
+215,12
@@
static void query_usetcp(adns_query qu, struct timeval now) {
adns__tcp_tryconnect(qu->ads,now);
}
adns__tcp_tryconnect(qu->ads,now);
}
-void adns__query_
udp
(adns_query qu, struct timeval now) {
+void adns__query_
send
(adns_query qu, struct timeval now) {
struct sockaddr_in servaddr;
int serv, r;
adns_state ads;
struct sockaddr_in servaddr;
int serv, r;
adns_state ads;
- assert(qu->state == query_
udp
);
+ assert(qu->state == query_
tosend
);
if ((qu->flags & adns_qf_usevc) || (qu->query_dglen > DNS_MAXUDP)) {
query_usetcp(qu,now);
return;
if ((qu->flags & adns_qf_usevc) || (qu->query_dglen > DNS_MAXUDP)) {
query_usetcp(qu,now);
return;
@@
-234,7
+239,8
@@
void adns__query_udp(adns_query qu, struct timeval now) {
servaddr.sin_addr= ads->servers[serv].addr;
servaddr.sin_port= htons(DNS_PORT);
servaddr.sin_addr= ads->servers[serv].addr;
servaddr.sin_port= htons(DNS_PORT);
- r= sendto(ads->udpsocket,qu->query_dgram,qu->query_dglen,0,&servaddr,sizeof(servaddr));
+ r= sendto(ads->udpsocket,qu->query_dgram,qu->query_dglen,0,
+ (const struct sockaddr*)&servaddr,sizeof(servaddr));
if (r<0 && errno == EMSGSIZE) { query_usetcp(qu,now); return; }
if (r<0) adns__warn(ads,serv,0,"sendto failed: %s",strerror(errno));
if (r<0 && errno == EMSGSIZE) { query_usetcp(qu,now); return; }
if (r<0) adns__warn(ads,serv,0,"sendto failed: %s",strerror(errno));