Sorry I don't see the point of (void)printf.

It makes code unreadable, and only cleans up pointless false positives
from tools.

Any such effort is wasted.  No bugs are being fixed.  Imagine doing it
to the entire source tree.  The work would never get finished because
it is largely pointless to churn code without fixing exerciseable
bugs.

> printf's return value is ignored allmost all the times so do the same
> for the rest of them as well for consistency.
> 
> Subsequent calls got merged where I think is appropiate and readability
> improves.
> 
> The usage format string now looks like it's actual put.
> 
> Index: ping.c
> ===================================================================
> RCS file: /cvs/src/sbin/ping/ping.c,v
> retrieving revision 1.218
> diff -u -p -r1.218 ping.c
> --- ping.c    22 Feb 2017 13:43:35 -0000      1.218
> +++ ping.c    13 Jun 2017 18:08:42 -0000
> @@ -756,10 +756,10 @@ main(int argc, char *argv[])
>       arc4random_buf(&tv64_offset, sizeof(tv64_offset));
>       arc4random_buf(&mac_key, sizeof(mac_key));
>  
> -     printf("PING %s (", hostname);
> +     (void)printf("PING %s (", hostname);
>       if (options & F_VERBOSE)
> -             printf("%s --> ", pr_addr(from, from->sa_len));
> -     printf("%s): %d data bytes\n", pr_addr(dst, dst->sa_len), datalen);
> +             (void)printf("%s --> ", pr_addr(from, from->sa_len));
> +     (void)printf("%s): %d data bytes\n", pr_addr(dst, dst->sa_len), 
> datalen);
>  
>       smsghdr.msg_name = dst;
>       smsghdr.msg_namelen = dst->sa_len;
> @@ -862,7 +862,7 @@ main(int argc, char *argv[])
>                        */
>                       if ((mtu = get_pathmtu(&m, &dst6)) > 0) {
>                               if ((options & F_VERBOSE) != 0) {
> -                                     printf("new path MTU (%d) is "
> +                                     (void)printf("new path MTU (%d) is "
>                                           "notified\n", mtu);
>                               }
>                       }
> @@ -926,28 +926,28 @@ fill(char *bp, char *patp)
>  void
>  summary(void)
>  {
> -     printf("\n--- %s ping statistics ---\n", hostname);
> -     printf("%lld packets transmitted, ", ntransmitted);
> -     printf("%lld packets received, ", nreceived);
> +     (void)printf("\n--- %s ping statistics ---\n"
> +         "%lld packets transmitted, %lld packets received, ",
> +         hostname, ntransmitted, nreceived);
>  
>       if (nrepeats)
> -             printf("%lld duplicates, ", nrepeats);
> +             (void)printf("%lld duplicates, ", nrepeats);
>       if (ntransmitted) {
>               if (nreceived > ntransmitted)
> -                     printf("-- somebody's duplicating packets!");
> +                     (void)printf("-- somebody's duplicating packets!");
>               else
> -                     printf("%.1f%% packet loss",
> -                         ((((double)ntransmitted - nreceived) * 100) /
> -                         ntransmitted));
> +                     (void)printf("%.1f%% packet loss",
> +                         (double)(ntransmitted - nreceived)
> +                         * 100 / ntransmitted);
>       }
> -     printf("\n");
> +     (void)printf("\n");
>       if (timinginfo) {
>               /* Only display average to microseconds */
>               double num = nreceived + nrepeats;
>               double avg = tsum / num;
>               double dev = sqrt(fmax(0, tsumsq / num - avg * avg));
> -             printf("round-trip min/avg/max/std-dev = %.3f/%.3f/%.3f/%.3f 
> ms\n",
> -                 tmin, avg, tmax, dev);
> +             (void)printf("round-trip min/avg/max/std-dev = "
> +                 "%.3f/%.3f/%.3f/%.3f ms\n", tmin, avg, tmax, dev);
>       }
>  }
>  
> @@ -1092,7 +1092,7 @@ pinger(int s)
>       if (i < 0 || i != cc) {
>               if (i < 0)
>                       warn("sendmsg");
> -             printf("ping: wrote %s %d chars, ret=%d\n", hostname, cc, i);
> +             (void)printf("ping: wrote %s %d chars, ret=%d\n", hostname, cc, 
> i);
>       }
>       if (!(options & F_QUIET) && options & F_FLOOD)
>               (void)write(STDOUT_FILENO, &DOT, 1);
> @@ -1278,11 +1278,9 @@ pr_pack(u_char *buf, int cc, struct msgh
>                                               cp = (u_char *)
>                                                   &icp->icmp_data[0];
>                                       for (i = ECHOLEN; i < cc && i < datalen;
> -                                         ++i, ++cp) {
> -                                             if ((i % 32) == 8)
> -                                                     (void)printf("\n\t");
> -                                             (void)printf("%x ", *cp);
> -                                     }
> +                                         ++i, ++cp)
> +                                             (void)printf(i % 32 == 8 ?
> +                                                 "\n\t%x " : "%x ", *cp);
>                                       break;
>                               }
>                       }
> @@ -1560,8 +1558,7 @@ pr_icmph(struct icmp *icp)
>                       (void)printf("Redirect, Unknown Code: %d", 
> icp->icmp_code);
>                       break;
>               }
> -             (void)printf("(New addr: %s)\n",
> -                 inet_ntoa(icp->icmp_gwaddr));
> +             (void)printf("(New addr: %s)\n", inet_ntoa(icp->icmp_gwaddr));
>               pr_retip((struct ip *)icp->icmp_data);
>               break;
>       case ICMP_ECHO:
> @@ -1570,8 +1567,8 @@ pr_icmph(struct icmp *icp)
>               break;
>       case ICMP_ROUTERADVERT:
>               /* RFC1256 */
> -             (void)printf("Router Discovery Advertisement\n");
> -             (void)printf("(%d entries, lifetime %d seconds)\n",
> +             (void)printf("Router Discovery Advertisement\n"
> +                 "(%d entries, lifetime %d seconds)\n",
>                   icp->icmp_num_addrs, ntohs(icp->icmp_lifetime));
>               break;
>       case ICMP_ROUTERSOLICIT:
> @@ -1648,14 +1645,13 @@ pr_iph(struct ip *ip)
>       hlen = ip->ip_hl << 2;
>       cp = (u_char *)ip + 20;         /* point to options */
>  
> -     (void)printf("Vr HL TOS  Len   ID Flg  off TTL Pro  cks      Src      
> Dst Data\n");
> -     (void)printf(" %1x  %1x  %02x %04x %04x",
> -         ip->ip_v, ip->ip_hl, ip->ip_tos, ip->ip_len, ip->ip_id);
> -     (void)printf("   %1x %04x", ((ip->ip_off) & 0xe000) >> 13,
> -         (ip->ip_off) & 0x1fff);
> -     (void)printf("  %02x  %02x %04x", ip->ip_ttl, ip->ip_p, ip->ip_sum);
> -     (void)printf(" %s ", inet_ntoa(*(struct in_addr *)&ip->ip_src.s_addr));
> -     (void)printf(" %s ", inet_ntoa(*(struct in_addr *)&ip->ip_dst.s_addr));
> +     (void)printf("Vr HL TOS  Len   ID Flg  off TTL Pro  cks      Src      
> Dst Data\n"
> +         " %1x  %1x  %02x %04x %04x   %1x %04x  %02x  %02x %04x %s  %s ",
> +         ip->ip_v, ip->ip_hl, ip->ip_tos, ip->ip_len, ip->ip_id,
> +         ((ip->ip_off) & 0xe000) >> 13, (ip->ip_off) & 0x1fff,
> +         ip->ip_ttl, ip->ip_p, ip->ip_sum,
> +         inet_ntoa(*(struct in_addr *)&ip->ip_src.s_addr),
> +         inet_ntoa(*(struct in_addr *)&ip->ip_dst.s_addr));
>       /* dump and option bytes */
>       while (hlen-- > 20) {
>               (void)printf("%02x", *cp++);
> @@ -1747,16 +1743,16 @@ pr_exthdrs(struct msghdr *mhdr)
>  
>               switch (cm->cmsg_type) {
>               case IPV6_HOPOPTS:
> -                     printf("  HbH Options: ");
> +                     (void)printf("  HbH Options: ");
>                       pr_ip6opt(CMSG_DATA(cm));
>                       break;
>               case IPV6_DSTOPTS:
>               case IPV6_RTHDRDSTOPTS:
> -                     printf("  Dst Options: ");
> +                     (void)printf("  Dst Options: ");
>                       pr_ip6opt(CMSG_DATA(cm));
>                       break;
>               case IPV6_RTHDR:
> -                     printf("  Routing: ");
> +                     (void)printf("  Routing: ");
>                       pr_rthdr(CMSG_DATA(cm));
>                       break;
>               }
> @@ -1777,7 +1773,7 @@ pr_ip6opt(void *extbuf)
>  
>       ext = (struct ip6_hbh *)extbuf;
>       extlen = (ext->ip6h_len + 1) * 8;
> -     printf("nxt %u, len %u (%lu bytes)\n", ext->ip6h_nxt,
> +     (void)printf("nxt %u, len %u (%lu bytes)\n", ext->ip6h_nxt,
>           (unsigned int)ext->ip6h_len, (unsigned long)extlen);
>  
>       currentlen = 0;
> @@ -1793,16 +1789,16 @@ pr_ip6opt(void *extbuf)
>                */
>               case IP6OPT_JUMBO:
>                       inet6_opt_get_val(databuf, 0, &value4, sizeof(value4));
> -                     printf("    Jumbo Payload Opt: Length %u\n",
> +                     (void)printf("    Jumbo Payload Opt: Length %u\n",
>                           (u_int32_t)ntohl(value4));
>                       break;
>               case IP6OPT_ROUTER_ALERT:
>                       inet6_opt_get_val(databuf, 0, &value2, sizeof(value2));
> -                     printf("    Router Alert Opt: Type %u\n",
> +                     (void)printf("    Router Alert Opt: Type %u\n",
>                           ntohs(value2));
>                       break;
>               default:
> -                     printf("    Received Opt %u len %lu\n",
> +                     (void)printf("    Received Opt %u len %lu\n",
>                           type, (unsigned long)len);
>                       break;
>               }
> @@ -1819,23 +1815,23 @@ pr_rthdr(void *extbuf)
>       int i, segments;
>  
>       /* print fixed part of the header */
> -     printf("nxt %u, len %u (%d bytes), type %u, ", rh->ip6r_nxt,
> +     (void)printf("nxt %u, len %u (%d bytes), type %u, ", rh->ip6r_nxt,
>           rh->ip6r_len, (rh->ip6r_len + 1) << 3, rh->ip6r_type);
>       if ((segments = inet6_rth_segments(extbuf)) >= 0)
> -             printf("%d segments, ", segments);
> +             (void)printf("%d segments, ", segments);
>       else
> -             printf("segments unknown, ");
> -     printf("%d left\n", rh->ip6r_segleft);
> +             (void)printf("segments unknown, ");
> +     (void)printf("%d left\n", rh->ip6r_segleft);
>  
>       for (i = 0; i < segments; i++) {
>               in6 = inet6_rth_getaddr(extbuf, i);
>               if (in6 == NULL)
> -                     printf("   [%d]<NULL>\n", i);
> +                     (void)printf("   [%d]<NULL>\n", i);
>               else {
>                       if (!inet_ntop(AF_INET6, in6, ntopbuf,
>                           sizeof(ntopbuf)))
>                               strncpy(ntopbuf, "?", sizeof(ntopbuf));
> -                     printf("   [%d]%s\n", i, ntopbuf);
> +                     (void)printf("   [%d]%s\n", i, ntopbuf);
>               }
>       }
>  
> @@ -1893,8 +1889,8 @@ get_pathmtu(struct msghdr *mhdr, struct 
>                           mtuctl->ip6m_addr.sin6_scope_id !=
>                           dst->sin6_scope_id)) {
>                               if ((options & F_VERBOSE) != 0) {
> -                                     printf("path MTU for %s is notified. "
> -                                         "(ignored)\n",
> +                                     (void)printf("path MTU for %s is "
> +                                         "notified. (ignored)\n",
>                                           pr_addr((struct sockaddr *)
>                                           &mtuctl->ip6m_addr,
>                                           sizeof(mtuctl->ip6m_addr)));
> @@ -2054,16 +2050,16 @@ pr_iph6(struct ip6_hdr *ip6)
>       tc = (tc >> 4) & 0x0f;
>       tc |= (ip6->ip6_vfc << 4);
>  
> -     printf("Vr TC  Flow Plen Nxt Hlim\n");
> -     printf(" %1x %02x %05x %04x  %02x   %02x\n",
> +     (void)printf("Vr TC  Flow Plen Nxt Hlim\n"
> +         " %1x %02x %05x %04x  %02x   %02x\n",
>           (ip6->ip6_vfc & IPV6_VERSION_MASK) >> 4, tc, (u_int32_t)ntohl(flow),
>           ntohs(ip6->ip6_plen), ip6->ip6_nxt, ip6->ip6_hlim);
>       if (!inet_ntop(AF_INET6, &ip6->ip6_src, ntop_buf, sizeof(ntop_buf)))
>               strncpy(ntop_buf, "?", sizeof(ntop_buf));
> -     printf("%s->", ntop_buf);
> +     (void)printf("%s->", ntop_buf);
>       if (!inet_ntop(AF_INET6, &ip6->ip6_dst, ntop_buf, sizeof(ntop_buf)))
>               strncpy(ntop_buf, "?", sizeof(ntop_buf));
> -     printf("%s\n", ntop_buf);
> +     (void)printf("%s\n", ntop_buf);
>  }
>  
>  /*
> @@ -2077,7 +2073,7 @@ pr_retip6(struct ip6_hdr *ip6, u_char *e
>       int hlen;
>  
>       if (end - (u_char *)ip6 < sizeof(*ip6)) {
> -             printf("IP6");
> +             (void)printf("IP6");
>               goto trunc;
>       }
>       pr_iph6(ip6);
> @@ -2088,49 +2084,49 @@ pr_retip6(struct ip6_hdr *ip6, u_char *e
>       while (end - cp >= 8) {
>               switch (nh) {
>               case IPPROTO_HOPOPTS:
> -                     printf("HBH ");
> +                     (void)printf("HBH ");
>                       hlen = (((struct ip6_hbh *)cp)->ip6h_len+1) << 3;
>                       nh = ((struct ip6_hbh *)cp)->ip6h_nxt;
>                       break;
>               case IPPROTO_DSTOPTS:
> -                     printf("DSTOPT ");
> +                     (void)printf("DSTOPT ");
>                       hlen = (((struct ip6_dest *)cp)->ip6d_len+1) << 3;
>                       nh = ((struct ip6_dest *)cp)->ip6d_nxt;
>                       break;
>               case IPPROTO_FRAGMENT:
> -                     printf("FRAG ");
> +                     (void)printf("FRAG ");
>                       hlen = sizeof(struct ip6_frag);
>                       nh = ((struct ip6_frag *)cp)->ip6f_nxt;
>                       break;
>               case IPPROTO_ROUTING:
> -                     printf("RTHDR ");
> +                     (void)printf("RTHDR ");
>                       hlen = (((struct ip6_rthdr *)cp)->ip6r_len+1) << 3;
>                       nh = ((struct ip6_rthdr *)cp)->ip6r_nxt;
>                       break;
>               case IPPROTO_AH:
> -                     printf("AH ");
> +                     (void)printf("AH ");
>                       hlen = (((struct ah *)cp)->ah_hl+2) << 2;
>                       nh = ((struct ah *)cp)->ah_nh;
>                       break;
>               case IPPROTO_ICMPV6:
> -                     printf("ICMP6: type = %d, code = %d\n",
> +                     (void)printf("ICMP6: type = %d, code = %d\n",
>                           *cp, *(cp + 1));
>                       return;
>               case IPPROTO_ESP:
> -                     printf("ESP\n");
> +                     (void)printf("ESP\n");
>                       return;
>               case IPPROTO_TCP:
> -                     printf("TCP: from port %u, to port %u (decimal)\n",
> +                     (void)printf("TCP: from port %u, to port %u 
> (decimal)\n",
>                           (*cp * 256 + *(cp + 1)),
>                           (*(cp + 2) * 256 + *(cp + 3)));
>                       return;
>               case IPPROTO_UDP:
> -                     printf("UDP: from port %u, to port %u (decimal)\n",
> +                     (void)printf("UDP: from port %u, to port %u 
> (decimal)\n",
>                           (*cp * 256 + *(cp + 1)),
>                           (*(cp + 2) * 256 + *(cp + 3)));
>                       return;
>               default:
> -                     printf("Unknown Header(%d)\n", nh);
> +                     (void)printf("Unknown Header(%d)\n", nh);
>                       return;
>               }
>  
> @@ -2140,30 +2136,26 @@ pr_retip6(struct ip6_hdr *ip6, u_char *e
>       if (end - cp < 8)
>               goto trunc;
>  
> -     putchar('\n');
> +     (void)putchar('\n');
>       return;
>  
>    trunc:
> -     printf("...\n");
> +     (void)printf("...\n");
>       return;
>  }
>  
>  __dead void
>  usage(void)
>  {
> -     if (v6flag) {
> -             (void)fprintf(stderr,
> -                 "usage: ping6 [-dEefHLmnqv] [-c count] [-h hoplimit] "
> -                 "[-I sourceaddr]\n\t[-i wait] [-l preload] [-p pattern] "
> -                 "[-s packetsize] [-V rtable]\n\t[-w maxwait] host\n");
> -     } else {
> -             (void)fprintf(stderr,
> -                 "usage: ping [-DdEefHLnqRv] [-c count] [-I ifaddr]"
> -                 " [-i wait]\n\t[-l preload] [-p pattern] [-s packetsize]"
> +     (void)fprintf(stderr, v6flag ?
> +         "usage: ping6 [-dEefHLmnqv] [-c count] [-h hoplimit] [-I 
> sourceaddr]"
> +         "\n\t[-i wait] [-l preload] [-p pattern] [-s packetsize] [-V 
> rtable]"
> +         "\n\t[-w maxwait] host\n" :
> +         "usage: ping [-DdEefHLnqRv] [-c count] [-I ifaddr] [-i wait]"
> +         "\n\t[-l preload] [-p pattern] [-s packetsize]"
>  #ifndef      SMALL
> -                 " [-T toskeyword]"
> +         " [-T toskeyword]"
>  #endif       /* SMALL */
> -                 "\n\t[-t ttl] [-V rtable] [-w maxwait] host\n");
> -     }
> +         "\n\t[-t ttl] [-V rtable] [-w maxwait] host\n");
>       exit(1);
>  }
> 

Reply via email to