Maxime

I'm not entirely clear on what you hoped to achieve with the diffs
below, if anything you're inducing possible segfaults if any of those
values are NULL.  That aside, I fail to see how this could be
construed as any sort of improvement.

> Index: pfctl_osfp.c
> ===================================================================
> RCS file: /cvs/src/sbin/pfctl/pfctl_osfp.c,v
> retrieving revision 1.18
> diff -u -r1.18 pfctl_osfp.c
> --- pfctl_osfp.c        18 Oct 2010 15:55:28 -0000      1.18
> +++ pfctl_osfp.c        22 Dec 2012 07:08:28 -0000
> @@ -112,16 +112,11 @@
>
>         while ((line = fgetln(in, &len)) != NULL) {
>                 lineno++;
> -               if (class)
> -                       free(class);
> -               if (version)
> -                       free(version);
> -               if (subtype)
> -                       free(subtype);
> -               if (desc)
> -                       free(desc);
> -               if (tcpopts)
> -                       free(tcpopts);
> +               free(class);
> +               free(version);
> +               free(subtype);
> +               free(desc);
> +               free(tcpopts);
>                 class = version = subtype = desc = tcpopts = NULL;
>                 memset(&fp, 0, sizeof(fp));
>
> @@ -250,16 +245,11 @@
>                 add_fingerprint(dev, opts, &fp);
>         }
>
> -       if (class)
> -               free(class);
> -       if (version)
> -               free(version);
> -       if (subtype)
> -               free(subtype);
> -       if (desc)
> -               free(desc);
> -       if (tcpopts)
> -               free(tcpopts);
> +       free(class);
> +       free(version);
> +       free(subtype);
> +       free(desc);
> +       free(tcpopts);
>
>         fclose(in);
>
> @@ -513,7 +503,7 @@
>         return (buf);
>
>  found:
> -       snprintf(buf, len, "%s", class_name);
> +       strlcpy(buf, class_name, len);
>         if (version_name) {
>                 strlcat(buf, " ", len);
>                 strlcat(buf, version_name, len);
> Index: pfctl_radix.c
> ===================================================================
> RCS file: /cvs/src/sbin/pfctl/pfctl_radix.c,v
> retrieving revision 1.29
> diff -u -r1.29 pfctl_radix.c
> --- pfctl_radix.c       27 Jul 2011 00:26:10 -0000      1.29
> +++ pfctl_radix.c       22 Dec 2012 07:08:28 -0000
> @@ -499,8 +499,7 @@
>  {
>         if (b == NULL)
>                 return;
> -       if (b->pfrb_caddr != NULL)
> -               free(b->pfrb_caddr);
> +       free(b->pfrb_caddr);
>         b->pfrb_caddr = NULL;
>         b->pfrb_size = b->pfrb_msize = 0;
>  }
>



-- 
Aaron Mason - Programmer, open source addict
I've taken my software vows - for beta or for worse

Reply via email to