freebsd-dev/sbin/ipf/libipf/printdstlistnode.c
Cy Schubert 2582ae5740 ipfilter: Adjust userland returns to conform to style(9)
Adjust ipfilter's userland return statements to conform to style(9).

MFC after:	1 month
2022-01-03 18:06:43 -08:00

76 lines
1.7 KiB
C

/*
* Copyright (C) 2012 by Darren Reed.
*
* See the IPFILTER.LICENCE file for details on licencing.
*/
#include "ipf.h"
ipf_dstnode_t *
printdstlistnode(ipf_dstnode_t *inp, copyfunc_t copyfunc, int opts,
wordtab_t *fields)
{
ipf_dstnode_t node, *np;
int i;
#ifdef USE_INET6
char buf[INET6_ADDRSTRLEN+1];
const char *str;
#endif
if ((*copyfunc)(inp, &node, sizeof(node)))
return(NULL);
np = calloc(1, node.ipfd_size);
if (np == NULL)
return(node.ipfd_next);
if ((*copyfunc)(inp, np, node.ipfd_size))
return(NULL);
if (fields != NULL) {
for (i = 0; fields[i].w_value != 0; i++) {
printpoolfield(np, IPLT_DSTLIST, i);
if (fields[i + 1].w_value != 0)
printf("\t");
}
printf("\n");
} else if ((opts & OPT_DEBUG) == 0) {
putchar(' ');
if (np->ipfd_dest.fd_name >= 0)
PRINTF("%s:", np->ipfd_names);
if (np->ipfd_dest.fd_addr.adf_family == AF_INET) {
printip(AF_INET, (u_32_t *)&np->ipfd_dest.fd_ip);
} else {
#ifdef USE_INET6
str = inet_ntop(AF_INET6, &np->ipfd_dest.fd_ip6,
buf, sizeof(buf) - 1);
if (str != NULL)
PRINTF("%s", str);
#endif
}
putchar(';');
} else {
PRINTF("Interface: [%s]/%d\n", np->ipfd_names,
np->ipfd_dest.fd_name);
#ifdef USE_INET6
str = inet_ntop(np->ipfd_dest.fd_addr.adf_family,
&np->ipfd_dest.fd_ip6, buf, sizeof(buf) - 1);
if (str != NULL) {
PRINTF("\tAddress: %s\n", str);
}
#else
PRINTF("\tAddress: %s\n", inet_ntoa(np->ipfd_dest.fd_ip));
#endif
PRINTF(
#ifdef USE_QUAD_T
"\t\tStates %d\tRef %d\tName [%s]\tUid %d\n",
#else
"\t\tStates %d\tRef %d\tName [%s]\tUid %d\n",
#endif
np->ipfd_states, np->ipfd_ref,
np->ipfd_names, np->ipfd_uid);
}
free(np);
return(node.ipfd_next);
}