aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Shaw <[email protected]>2009-07-23 19:05:19 +0000
committerDavid Shaw <[email protected]>2009-07-23 19:05:19 +0000
commit63fb9d249a354a8ac7eef35e42bacf08bf932c7f (patch)
tree372c7920bca0bf3598eeeeeacf00298ec5832120
parentParse EXTCAP lines from the card. (diff)
downloadgnupg-63fb9d249a354a8ac7eef35e42bacf08bf932c7f.tar.gz
gnupg-63fb9d249a354a8ac7eef35e42bacf08bf932c7f.zip
* srv.c (getsrv): Fix type-punning warning. (main): Allow testing any
SRV.
-rw-r--r--util/ChangeLog5
-rw-r--r--util/srv.c13
2 files changed, 15 insertions, 3 deletions
diff --git a/util/ChangeLog b/util/ChangeLog
index 73a8adb0c..81466c710 100644
--- a/util/ChangeLog
+++ b/util/ChangeLog
@@ -1,3 +1,8 @@
+2009-07-23 David Shaw <[email protected]>
+
+ * srv.c (getsrv): Fix type-punning warning.
+ (main): Allow testing any SRV.
+
2009-07-21 Werner Koch <[email protected]>
* ttyio.c (tty_printf): Replace vasprintf by xtryasprintf.
diff --git a/util/srv.c b/util/srv.c
index 521b1c297..1e23887ca 100644
--- a/util/srv.c
+++ b/util/srv.c
@@ -58,6 +58,7 @@ getsrv(const char *name,struct srventry **list)
int r,srvcount=0;
unsigned char *pt,*emsg;
u16 count,dlen;
+ HEADER *header=(HEADER *)answer;
*list=NULL;
@@ -65,8 +66,7 @@ getsrv(const char *name,struct srventry **list)
if(r<sizeof(HEADER) || r>2048)
return -1;
- if((((HEADER *)answer)->rcode)==NOERROR &&
- (count=ntohs(((HEADER *)answer)->ancount)))
+ if(header->rcode==NOERROR && (count=ntohs(header->ancount)))
{
int i,rc;
@@ -234,7 +234,14 @@ main(int argc,char *argv[])
struct srventry *srv;
int rc,i;
- rc=getsrv("_hkp._tcp.wwwkeys.pgp.net",&srv);
+ if(argc!=2)
+ {
+ fprintf(stderr,"%s {srv}\n",argv[0]);
+ fprintf(stderr," Try %s _hkp._tcp.wwwkeys.pgp.net\n",argv[0]);
+ return 1;
+ }
+
+ rc=getsrv(argv[1],&srv);
printf("Count=%d\n\n",rc);
for(i=0;i<rc;i++)
{