From: Miek Gieben Date: Wed, 12 Jan 2005 13:48:56 +0000 (+0000) Subject: start of making ldns network aware X-Git-Tag: release-0.50~574 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=76ea54e7493dbdb6d6f65545816deaf28512ba7c;p=thirdparty%2Fldns.git start of making ldns network aware --- diff --git a/libdns.vim b/libdns.vim index ff7c4248..e56210e4 100644 --- a/libdns.vim +++ b/libdns.vim @@ -113,7 +113,6 @@ syn keyword ldnsConstant TYPE_ANY syn keyword ldnsConstant MAXLABELLEN syn keyword ldnsConstant MAXDOMAINLEN - syn keyword ldnsMacro QHEADERSZ syn keyword ldnsMacro RD_MASK syn keyword ldnsMacro RD_SHIFT @@ -173,6 +172,9 @@ syn keyword ldnsMacro NSCOUNT syn keyword ldnsMacro ARCOUNT_OFF syn keyword ldnsMacro ARCOUNT +" ldns/buffer.h +syn keyword ldnsType ldns_buffer + " Default highlighting command -nargs=+ HiLink hi def link HiLink ldnsType Type diff --git a/net.c b/net.c index b9e92426..4017cb33 100644 --- a/net.c +++ b/net.c @@ -16,9 +16,41 @@ #include #include #include +#include + +#include +#include + #include "util.h" -/* send of an packet and return any reply packet(s) + +/* send off an buffer and return any reply packet + * this is done synchronus + * + * sock must be opened, binded etc. */ +ldns_pkt * +ldns_sendbuf(ldns_buffer *buf, int *sockfd, struct sockaddr *dest) +{ + struct timeval tv_s; + struct timeval tv_e; + ldns_pkt * new_pkt; + int bufsize; /* bogus decl. to make it comile */ + + assert(buf != NULL); + assert(*sockfd != 0); + + new_pkt = NULL; + + if (sendto(*sockfd, buf, bufsize, 0, dest, + (socklen_t) sizeof(*dest)) != bufsize) { + /* ai */ + return NULL; + } + + return new_pkt; + + +}