1
0
mirror of git://git.gnupg.org/gnupg.git synced 2024-12-22 10:19:57 +01:00

dirmngr: Minor cleanup of the SRV RR code.

* dirmngr/dns-stuff.c: Include unistd.h.
(getsrv): Run srand only once.
* dirmngr/t-dns-stuff.c (main): Allow passing another name for --srv
and change output format.
This commit is contained in:
Werner Koch 2015-10-28 10:14:07 +01:00
parent e026efb436
commit 949a5cfdab
No known key found for this signature in database
GPG Key ID: E3FDFF218E45B72B
2 changed files with 16 additions and 9 deletions

View File

@ -42,6 +42,7 @@
# include <netdb.h> # include <netdb.h>
#endif #endif
#include <string.h> #include <string.h>
#include <unistd.h>
#ifdef USE_ADNS #ifdef USE_ADNS
# include <adns.h> # include <adns.h>
#endif #endif
@ -1103,9 +1104,16 @@ getsrv (const char *name,struct srventry **list)
/* Run the RFC-2782 weighting algorithm. We don't need very high /* Run the RFC-2782 weighting algorithm. We don't need very high
quality randomness for this, so regular libc srand/rand is quality randomness for this, so regular libc srand/rand is
sufficient. Fixme: It is a bit questionaly to reinitalize srand sufficient. */
- better use a gnupg fucntion for this. */
srand(time(NULL)*getpid()); {
static int done;
if (!done)
{
done = 1;
srand (time (NULL)*getpid());
}
}
for (i=0; i < srvcount; i++) for (i=0; i < srvcount; i++)
{ {

View File

@ -205,15 +205,14 @@ main (int argc, char **argv)
struct srventry *srv; struct srventry *srv;
int rc,i; int rc,i;
rc=getsrv("_hkp._tcp.wwwkeys.pgp.net",&srv); rc=getsrv (name? name : "_hkp._tcp.wwwkeys.pgp.net", &srv);
printf("Count=%d\n\n",rc); printf("Count=%d\n",rc);
for(i=0;i<rc;i++) for(i=0;i<rc;i++)
{ {
printf("priority=%hu\n",srv[i].priority); printf("priority=%-8hu ",srv[i].priority);
printf("weight=%hu\n",srv[i].weight); printf("weight=%-8hu ",srv[i].weight);
printf("port=%hu\n",srv[i].port); printf("port=%-5hu ",srv[i].port);
printf("target=%s\n",srv[i].target); printf("target=%s\n",srv[i].target);
printf("\n");
} }
xfree(srv); xfree(srv);