From: Ian Jackson Date: Sat, 3 Dec 2016 14:51:18 +0000 (+0000) Subject: cs_inthost*: Break out csp_intofinthost X-Git-Tag: adns-1.5.2~27 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=adns.git;a=commitdiff_plain;h=54d811a530e9cf16148998cd9fdd168dbf8e14d5 cs_inthost*: Break out csp_intofinthost No functional change. This removes some duplication, enabling the following security patch to fix just the one copy. Signed-off-by: Ian Jackson --- diff --git a/src/types.c b/src/types.c index d249ca2..569962e 100644 --- a/src/types.c +++ b/src/types.c @@ -1108,13 +1108,19 @@ static void mf_inthostaddr(adns_query qu, void *datap) { mfp_hostaddr(qu,&rrp->ha); } -static adns_status cs_inthostaddr(vbuf *vb, const void *datap) { - const adns_rr_inthostaddr *rrp= datap; +static adns_status csp_intofinthost(vbuf *vb, int i) { char buf[10]; - sprintf(buf,"%u ",rrp->i); + sprintf(buf,"%u ",i); CSP_ADDSTR(buf); + return adns_s_ok; +} +static adns_status cs_inthostaddr(vbuf *vb, const void *datap) { + const adns_rr_inthostaddr *rrp= datap; + adns_status st; + + st = csp_intofinthost(vb,rrp->i); if (st) return st; return csp_hostaddr(vb,&rrp->ha); } @@ -1124,10 +1130,9 @@ static adns_status cs_inthostaddr(vbuf *vb, const void *datap) { static adns_status cs_inthost(vbuf *vb, const void *datap) { const adns_rr_intstr *rrp= datap; - char buf[10]; + adns_status st; - sprintf(buf,"%u ",rrp->i); - CSP_ADDSTR(buf); + st = csp_intofinthost(vb,rrp->i); if (st) return st; return csp_domain(vb,rrp->str); }