X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=adns.git;a=blobdiff_plain;f=src%2Fsetup.c;h=64949e1fe92ebc412fab0013fba00df75fea0520;hp=21aded08a4790f501716d90519790f159f6f4bff;hb=2bd4b9f4167fa254b424385ee430d1402ef087b7;hpb=c227e3bcc4a3d9e4a076e19976f8b2bb153143e7 diff --git a/src/setup.c b/src/setup.c index 21aded0..64949e1 100644 --- a/src/setup.c +++ b/src/setup.c @@ -426,7 +426,7 @@ static void readconfiggeneric(adns_state ads, const char *filename, ccip++); if (!ccip->name) { adns__diag(ads,-1,0,"%s:%d: unknown configuration directive `%.*s'", - filename,lno,q-p,p); + filename,lno,(int)(q-p),p); continue; } while (ctype_whitespace(*q)) q++; @@ -509,6 +509,7 @@ int adns__setnonblock(adns_state ads, int fd) { static int init_begin(adns_state *ads_r, adns_initflags flags, adns_logcallbackfn *logfn, void *logfndata) { adns_state ads; + pid_t pid; ads= malloc(sizeof(*ads)); if (!ads) return errno; @@ -532,6 +533,11 @@ static int init_begin(adns_state *ads_r, adns_initflags flags, timerclear(&ads->tcptimeout); ads->searchlist= 0; + pid= getpid(); + ads->rand48xsubi[0]= pid; + ads->rand48xsubi[1]= (unsigned long)pid >> 16; + ads->rand48xsubi[2]= pid ^ ((unsigned long)pid >> 16); + *ads_r= ads; return 0; }