Unmangled diff:

http://pastebin.com/p9Qi9rZX

On Mon, May 25, 2015 at 4:24 PM, sven falempin <sven.falem...@gmail.com>
wrote:

>
>
> On Mon, May 25, 2015 at 2:55 PM, Gleydson Soares <gsoa...@gmail.com>
> wrote:
>>
>>
>> your diff is incomplete...
>> well, why just this occurrence? there is others check null before
>> free(3) in same file.
>>
>> and please, be more specific adding more details about your changes: eg.:
>> (I am removing the null check here, because free(3) itself already
>> check against null).
>>
>
> Index: config.c
> ===================================================================
> RCS file: /cvs/src/usr.sbin/./relayd/config.c,v
> retrieving revision 1.25
> diff -u -p -r1.25 config.c
> --- config.c    2 May 2015 13:15:24 -0000       1.25
> +++ config.c    25 May 2015 20:18:34 -0000
> @@ -178,10 +178,8 @@ config_purge(struct relayd *env, u_int r
>         if (what & CONFIG_PROTOS && env->sc_protos != NULL) {
>                 while ((proto = TAILQ_FIRST(env->sc_protos)) != NULL) {
>                         TAILQ_REMOVE(env->sc_protos, proto, entry);
> -                       if (proto->style != NULL)
> -                               free(proto->style);
> -                       if (proto->tlscapass != NULL)
> -                               free(proto->tlscapass);
> +                      free(proto->style);
> +                      free(proto->tlscapass);
>                         free(proto);
>                 }
>                 env->sc_protocount = 0;
> @@ -949,12 +947,9 @@ config_getrelay(struct relayd *env, stru
>         return (0);
>
>   fail:
> -       if (rlay->rl_tls_cert)
> -               free(rlay->rl_tls_cert);
> -       if (rlay->rl_tls_key)
> -               free(rlay->rl_tls_key);
> -       if (rlay->rl_tls_ca)
> -               free(rlay->rl_tls_ca);
> +       free(rlay->rl_tls_cert);
> +       free(rlay->rl_tls_key);
> +       free(rlay->rl_tls_ca);
>         close(rlay->rl_s);
>         free(rlay);
>         return (-1);
> @@ -998,7 +993,6 @@ config_getrelaytable(struct relayd *env,
>         return (0);
>
>   fail:
> -       if (rlt != NULL)
> -               free(rlt);
> +      free(rlt);
>         return (-1);
>  }
> Index: parse.y
> ===================================================================
> RCS file: /cvs/src/usr.sbin/./relayd/parse.y,v
> retrieving revision 1.204
> diff -u -p -r1.204 parse.y
> --- parse.y     2 May 2015 13:15:24 -0000       1.204
> +++ parse.y     25 May 2015 20:18:34 -0000
> @@ -1275,8 +1275,7 @@ ruleopts  : METHOD STRING
>       {
>                             rule->rule_kv[keytype].kv_value == NULL)
>                                 fatal("out of memory");
>                         free($3);
> -                       if ($4)
> -                               free($4);
> +                      free($4);
>                         rule->rule_kv[keytype].kv_type = keytype;
>                 }
>                 | COOKIE key_option                             {
> @@ -1296,8 +1295,7 @@ ruleopts  : METHOD STRING
>       {
>                             rule->rule_kv[keytype].kv_value == NULL)
>                                 fatal("out of memory");
>                         free($3);
> -                       if ($4)
> -                               free($4);
> +                      free($4);
>                         rule->rule_kv[keytype].kv_type = keytype;
>                 }
>                 | HEADER key_option                             {
> @@ -1315,8 +1313,7 @@ ruleopts  : METHOD STRING
>       {
>                             rule->rule_kv[keytype].kv_value == NULL)
>                                 fatal("out of memory");
>                         free($3);
> -                       if ($4)
> -                               free($4);
> +                      free($4);
>                         rule->rule_kv[keytype].kv_type = keytype;
>                 }
>                 | PATH key_option                               {
> @@ -1332,8 +1329,7 @@ ruleopts  : METHOD STRING
>       {
>                                 yyerror("combining query type and the
> given "
>                                     "option is not supported");
>                                 free($3);
> -                               if ($4)
> -                                       free($4);
> +                              free($4);
>                                 YYERROR;
>                                 break;
>                         }
> @@ -1346,8 +1342,7 @@ ruleopts  : METHOD STRING
>       {
>                             rule->rule_kv[keytype].kv_value == NULL)
>                                 fatal("out of memory");
>                         free($3);
> -                       if ($4)
> -                               free($4);
> +                      free($4);
>                         rule->rule_kv[keytype].kv_type = keytype;
>                 }
>                 | QUERYSTR key_option                           {
> @@ -1386,8 +1381,7 @@ ruleopts  : METHOD STRING
>       {
>                             rule->rule_kv[keytype].kv_value == NULL)
>                                 fatal("out of memory");
>                         free($3.digest);
> -                       if ($4)
> -                               free($4);
> +                      free($4);
>                         rule->rule_kv[keytype].kv_type = keytype;
>                 }
>                 | URL key_option                                        {
> Index: relay.c
> ===================================================================
> RCS file: /cvs/src/usr.sbin/./relayd/relay.c,v
> retrieving revision 1.194
> diff -u -p -r1.194 relay.c
> --- relay.c     18 May 2015 16:57:20 -0000      1.194
> +++ relay.c     25 May 2015 20:18:34 -0000
> @@ -1616,15 +1616,13 @@ relay_close(struct rsession *con, const
>                     con->se_tag != 0 ? tag_id2name(con->se_tag) : "0",
> ibuf,
>                     obuf, ntohs(con->se_out.port), msg, ptr == NULL ? "" :
> ",",
>                     ptr == NULL ? "" : ptr);
> -               if (ptr != NULL)
> -                       free(ptr);
> +              free(ptr);
>         }
>
>         if (proto->close != NULL)
>                 (*proto->close)(con);
>
> -       if (con->se_priv != NULL)
> -               free(con->se_priv);
> +      free(con->se_priv);
>         if (con->se_in.bev != NULL)
>                 bufferevent_free(con->se_in.bev);
>         else if (con->se_in.output != NULL)
> @@ -1649,8 +1647,7 @@ relay_close(struct rsession *con, const
>                             __func__, relay_inflight);
>                 }
>         }
> -       if (con->se_in.buf != NULL)
> -               free(con->se_in.buf);
> +      free(con->se_in.buf);
>
>         if (con->se_out.bev != NULL)
>                 bufferevent_free(con->se_out.bev);
> @@ -1674,8 +1671,7 @@ relay_close(struct rsession *con, const
>                 }
>         }
>
> -       if (con->se_out.buf != NULL)
> -               free(con->se_out.buf);
> +      free(con->se_out.buf);
>
>         if (con->se_log != NULL)
>                 evbuffer_free(con->se_log);
> @@ -2612,8 +2608,7 @@ relay_load_file(const char *name, off_t
>         return (buf);
>
>   fail:
> -       if (buf != NULL)
> -               free(buf);
> +      free(buf);
>         close(fd);
>         return (NULL);
>  }
> Index: relay_http.c
> ===================================================================
> RCS file: /cvs/src/usr.sbin/./relayd/relay_http.c,v
> retrieving revision 1.47
> diff -u -p -r1.47 relay_http.c
> --- relay_http.c        22 May 2015 01:34:13 -0000      1.47
> +++ relay_http.c        25 May 2015 20:18:34 -0000
> @@ -602,8 +602,7 @@ relay_read_httpchunks(struct bufferevent
>         case 0:
>                 /* Chunk is terminated by an empty newline */
>                 line = evbuffer_readline(src);
> -               if (line != NULL)
> -                       free(line);
> +              free(line);
>                 if (relay_bufferevent_print(cre->dst, "\r\n") == -1)
>                         goto fail;
>                 cre->toread = TOREAD_HTTP_CHUNK_LENGTH;
> @@ -687,8 +686,7 @@ _relay_lookup_url(struct ctl_relay_event
>
>         ret = RES_PASS;
>   fail:
> -       if (md != NULL)
> -               free(md);
> +      free(md);
>         free(val);
>         return (ret);
>  }
> Index: relay_udp.c
> ===================================================================
> RCS file: /cvs/src/usr.sbin/./relayd/relay_udp.c,v
> retrieving revision 1.39
> diff -u -p -r1.39 relay_udp.c
> --- relay_udp.c 22 Jan 2015 17:42:09 -0000      1.39
> +++ relay_udp.c 25 May 2015 20:18:34 -0000
> @@ -191,8 +191,7 @@ relay_udp_response(int fd, short sig, vo
>                 return;
>
>         relay_close(con, "unknown response");
> -       if (priv != NULL)
> -               free(priv);
> +      free(priv);
>  }
>
>  void
> @@ -290,8 +289,7 @@ relay_udp_server(int fd, short sig, void
>         /* Save the received data */
>         if (evbuffer_add(con->se_out.output, buf, len) == -1) {
>                 relay_close(con, "failed to store buffer");
> -               if (cnl != NULL)
> -                       free(cnl);
> +              free(cnl);
>                 return;
>         }
>
> Index: relayd.c
> ===================================================================
> RCS file: /cvs/src/usr.sbin/./relayd/relayd.c,v
> retrieving revision 1.139
> diff -u -p -r1.139 relayd.c
> --- relayd.c    2 May 2015 13:15:24 -0000       1.139
> +++ relayd.c    25 May 2015 20:18:34 -0000
> @@ -447,8 +447,7 @@ parent_dispatch_pfe(int fd, struct privs
>                 if (IMSG_DATA_SIZE(imsg) > 0)
>                         str = get_string(imsg->data, IMSG_DATA_SIZE(imsg));
>                 parent_reload(env, CONFIG_RELOAD, str);
> -               if (str != NULL)
> -                       free(str);
> +              free(str);
>                 break;
>         case IMSG_CTL_SHUTDOWN:
>                 parent_shutdown(env);
> @@ -563,8 +562,7 @@ purge_table(struct relayd *env, struct t
>                         SSL_free(host->cte.ssl);
>                 free(host);
>         }
> -       if (table->sendbuf != NULL)
> -               free(table->sendbuf);
> +      free(table->sendbuf);
>         if (table->conf.flags & F_TLS)
>                 SSL_CTX_free(table->ssl_ctx);
>
> @@ -693,8 +691,7 @@ kv_set(struct kv *kv, char *fmt, ...)
>         }
>
>         /* Set the new value */
> -       if (kv->kv_value != NULL)
> -               free(kv->kv_value);
> +      free(kv->kv_value);
>         kv->kv_value = value;
>
>         return (0);
> @@ -711,8 +708,7 @@ kv_setkey(struct kv *kv, char *fmt, ...)
>                 return (-1);
>         va_end(ap);
>
> -       if (kv->kv_key != NULL)
> -               free(kv->kv_key);
> +      free(kv->kv_key);
>         kv->kv_key = key;
>
>         return (0);
> @@ -769,13 +765,9 @@ kv_free(struct kv *kv)
>  {
>         if (kv->kv_type == KEY_TYPE_NONE)
>                 return;
> -       if (kv->kv_key != NULL) {
> -               free(kv->kv_key);
> -       }
> +      free(kv->kv_key);
>         kv->kv_key = NULL;
> -       if (kv->kv_value != NULL) {
> -               free(kv->kv_value);
> -       }
> +      free(kv->kv_value);
>         kv->kv_value = NULL;
>         kv->kv_matchtree = NULL;
>         kv->kv_match = NULL;
> @@ -929,8 +921,7 @@ rule_add(struct protocol *proto, struct
>                         kv = &r->rule_kv[i];
>                         if (kv->kv_type != i)
>                                 continue;
> -                       if (kv->kv_key != NULL)
> -                               free(kv->kv_key);
> +                      free(kv->kv_key);
>                         if ((kv->kv_key = strdup(buf)) == NULL) {
>                                 rule_free(r);
>                                 free(r);
>
> Also , but more questionable:
>
> Index: relay_http.c
> ===================================================================
> RCS file: /cvs/src/usr.sbin/./relayd/relay_http.c,v
> retrieving revision 1.47
> diff -u -p -r1.47 relay_http.c
> --- relay_http.c        22 May 2015 01:34:13 -0000      1.47
> +++ relay_http.c        25 May 2015 20:23:58 -0000
> @@ -128,28 +128,13 @@ relay_httpdesc_init(struct ctl_relay_eve
>  void
>  relay_httpdesc_free(struct http_descriptor *desc)
>  {
> -       if (desc->http_path != NULL) {
> -               free(desc->http_path);
> -               desc->http_path = NULL;
> -       }
> -       if (desc->http_query != NULL) {
> -               free(desc->http_query);
> -               desc->http_query = NULL;
> -       }
> -       if (desc->http_version != NULL) {
> -               free(desc->http_version);
> -               desc->http_version = NULL;
> -       }
> -       if (desc->query_key != NULL) {
> -               free(desc->query_key);
> -               desc->query_key = NULL;
> -       }
> -       if (desc->query_val != NULL) {
> -               free(desc->query_val);
> -               desc->query_val = NULL;
> -       }
> +       free(desc->http_path);
> +       free(desc->http_query);
> +       free(desc->http_version);
> +       free(desc->query_key);
> +       free(desc->query_val);
>         kv_purge(&desc->http_headers);
> -       desc->http_lastheader = NULL;
> +       bzero(desc,sizeof(*desc));
>  }
>
> --
>
> ---------------------------------------------------------------------------------------------------------------------
> () ascii ribbon campaign - against html e-mail
> /\
>



-- 
---------------------------------------------------------------------------------------------------------------------
() ascii ribbon campaign - against html e-mail
/\

Reply via email to