- if (strlen(local_addr) > 8) {
-#if ENABLE_FEATURE_IPV6
- build_ipv6_addr(local_addr, &localaddr);
- build_ipv6_addr(rem_addr, &remaddr);
-#endif
- } else {
- build_ipv4_addr(local_addr, &localaddr);
- build_ipv4_addr(rem_addr, &remaddr);
- }
-
- if (num < 10) {
- return 1; /* error */
- }
-
- {
- int have_remaddr = notnull(remaddr);
- if ((have_remaddr && (flags & NETSTAT_CONNECTED))
- || (!have_remaddr && (flags & NETSTAT_LISTENING))
- ) {
- char *l = ip_port_str(
- (struct sockaddr *) &localaddr, local_port,
- "raw", flags & NETSTAT_NUMERIC);
- char *r = ip_port_str(
- (struct sockaddr *) &remaddr, rem_port,
- "raw", flags & NETSTAT_NUMERIC);
- printf(net_conn_line,
- "raw", rxq, txq, l, r, itoa(state));
-#if ENABLE_FEATURE_NETSTAT_PRG
- if (option_mask32 & OPT_prg)
- printf("%-"PROGNAME_WIDTH_STR"s", prg_cache_get(inode));
-#endif
- bb_putchar('\n');
- free(l);
- free(r);
- }
- }
+ have_remaddr = notnull(param.remaddr);
+ print_inet_line(¶m, itoa(param.state), "raw", have_remaddr);