On Tue, May 10, 2022 at 01:47:44PM +0200, Theo Buehler wrote:
> In sbgp_asrange() and sbgp_addr_range(), the ASN1_SEQUENCE_ANY *seq is
> potentially leaked due to early return 0 instead of goto out. The last
> hunk collides with my IPAddrBlocks diff. Sending this out so I don't
> forget.
> 
> Index: cert.c
> ===================================================================
> RCS file: /cvs/src/usr.sbin/rpki-client/cert.c,v
> retrieving revision 1.71
> diff -u -p -r1.71 cert.c
> --- cert.c    21 Apr 2022 12:59:03 -0000      1.71
> +++ cert.c    10 May 2022 11:35:57 -0000
> @@ -161,7 +161,7 @@ sbgp_asrange(struct parse *p, const unsi
>       if (!as_id_parse(t->value.integer, &as.range.min)) {
>               warnx("%s: RFC 3779 section 3.2.3.8 (via RFC 1930): "
>                   "malformed AS identifier", p->fn);
> -             return 0;
> +             goto out;
>       }
>  
>       t = sk_ASN1_TYPE_value(seq, 1);
> @@ -174,7 +174,7 @@ sbgp_asrange(struct parse *p, const unsi
>       if (!as_id_parse(t->value.integer, &as.range.max)) {
>               warnx("%s: RFC 3779 section 3.2.3.8 (via RFC 1930): "
>                   "malformed AS identifier", p->fn);
> -             return 0;
> +             goto out;
>       }
>  
>       if (as.range.max == as.range.min) {
> @@ -471,7 +471,7 @@ sbgp_addr_range(struct parse *p, struct 
>       if (!ip_cert_compose_ranges(ip)) {
>               warnx("%s: RFC 3779 section 2.2.3.9: IPAddressRange: "
>                   "IP address range reversed", p->fn);
> -             return 0;
> +             goto out;
>       }
>  
>       rc = append_ip(p, ip);
> 

OK claudio@
-- 
:wq Claudio

Reply via email to