From: Alan T. DeKok Date: Fri, 30 Jun 2017 15:44:39 +0000 (-0400) Subject: move common_packet_debug to auth.c X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f46539fb8038287fc5dcc3d1fb282b5b96c42a02;p=thirdparty%2Ffreeradius-server.git move common_packet_debug to auth.c where it can be accessed by the new listeners. This fix is only temporary. --- diff --git a/src/main/auth.c b/src/main/auth.c index 7fa2967c99b..56eff46235a 100644 --- a/src/main/auth.c +++ b/src/main/auth.c @@ -757,3 +757,80 @@ skip: return rcode; } + +void common_packet_debug(REQUEST *request, RADIUS_PACKET *packet, bool received); + +/* + * Debug the packet if requested. + */ +void common_packet_debug(REQUEST *request, RADIUS_PACKET *packet, bool received) +{ + char src_ipaddr[FR_IPADDR_STRLEN]; + char dst_ipaddr[FR_IPADDR_STRLEN]; +#if defined(WITH_UDPFROMTO) && defined(WITH_IFINDEX_NAME_RESOLUTION) + char if_name[IFNAMSIZ]; +#endif + + if (!packet) return; + if (!RDEBUG_ENABLED) return; + + /* + * Client-specific debugging re-prints the input + * packet into the client log. + * + * This really belongs in a utility library + */ + if (is_radius_code(packet->code)) { + radlog_request(L_DBG, L_DBG_LVL_1, request, "%s %s Id %i from %s%s%s:%i to %s%s%s:%i " +#if defined(WITH_UDPFROMTO) && defined(WITH_IFINDEX_NAME_RESOLUTION) + "%s%s%s" +#endif + "length %zu", + received ? "Received" : "Sent", + fr_packet_codes[packet->code], + packet->id, + packet->src_ipaddr.af == AF_INET6 ? "[" : "", + fr_inet_ntop(src_ipaddr, sizeof(src_ipaddr), &packet->src_ipaddr), + packet->src_ipaddr.af == AF_INET6 ? "]" : "", + packet->src_port, + packet->dst_ipaddr.af == AF_INET6 ? "[" : "", + fr_inet_ntop(dst_ipaddr, sizeof(dst_ipaddr), &packet->dst_ipaddr), + packet->dst_ipaddr.af == AF_INET6 ? "]" : "", + packet->dst_port, +#if defined(WITH_UDPFROMTO) && defined(WITH_IFINDEX_NAME_RESOLUTION) + packet->if_index ? "via " : "", + packet->if_index ? fr_ifname_from_ifindex(if_name, packet->if_index) : "", + packet->if_index ? " " : "", +#endif + packet->data_len); + } else { + radlog_request(L_DBG, L_DBG_LVL_1, request, "%s code %u Id %i from %s%s%s:%i to %s%s%s:%i " +#if defined(WITH_UDPFROMTO) && defined(WITH_IFINDEX_NAME_RESOLUTION) + "%s%s%s" +#endif + "length %zu", + received ? "Received" : "Sent", + packet->code, + packet->id, + packet->src_ipaddr.af == AF_INET6 ? "[" : "", + fr_inet_ntop(src_ipaddr, sizeof(src_ipaddr), &packet->src_ipaddr), + packet->src_ipaddr.af == AF_INET6 ? "]" : "", + packet->src_port, + packet->dst_ipaddr.af == AF_INET6 ? "[" : "", + fr_inet_ntop(dst_ipaddr, sizeof(dst_ipaddr), &packet->dst_ipaddr), + packet->dst_ipaddr.af == AF_INET6 ? "]" : "", + packet->dst_port, +#if defined(WITH_UDPFROMTO) && defined(WITH_IFINDEX_NAME_RESOLUTION) + packet->if_index ? "via " : "", + packet->if_index ? fr_ifname_from_ifindex(if_name, packet->if_index) : "", + packet->if_index ? " " : "", +#endif + packet->data_len); + } + + if (received) { + rdebug_pair_list(L_DBG_LVL_1, request, packet->vps, NULL); + } else { + rdebug_proto_pair_list(L_DBG_LVL_1, request, packet->vps, NULL); + } +} diff --git a/src/main/listen.c b/src/main/listen.c index 31909843ae0..02c5dc7f5b1 100644 --- a/src/main/listen.c +++ b/src/main/listen.c @@ -1157,80 +1157,6 @@ int common_socket_print(rad_listen_t const *this, char *buffer, size_t bufsize) return 1; } -/* - * Debug the packet if requested. - */ -void common_packet_debug(REQUEST *request, RADIUS_PACKET *packet, bool received) -{ - char src_ipaddr[FR_IPADDR_STRLEN]; - char dst_ipaddr[FR_IPADDR_STRLEN]; -#if defined(WITH_UDPFROMTO) && defined(WITH_IFINDEX_NAME_RESOLUTION) - char if_name[IFNAMSIZ]; -#endif - - if (!packet) return; - if (!RDEBUG_ENABLED) return; - - /* - * Client-specific debugging re-prints the input - * packet into the client log. - * - * This really belongs in a utility library - */ - if (is_radius_code(packet->code)) { - radlog_request(L_DBG, L_DBG_LVL_1, request, "%s %s Id %i from %s%s%s:%i to %s%s%s:%i " -#if defined(WITH_UDPFROMTO) && defined(WITH_IFINDEX_NAME_RESOLUTION) - "%s%s%s" -#endif - "length %zu", - received ? "Received" : "Sent", - fr_packet_codes[packet->code], - packet->id, - packet->src_ipaddr.af == AF_INET6 ? "[" : "", - fr_inet_ntop(src_ipaddr, sizeof(src_ipaddr), &packet->src_ipaddr), - packet->src_ipaddr.af == AF_INET6 ? "]" : "", - packet->src_port, - packet->dst_ipaddr.af == AF_INET6 ? "[" : "", - fr_inet_ntop(dst_ipaddr, sizeof(dst_ipaddr), &packet->dst_ipaddr), - packet->dst_ipaddr.af == AF_INET6 ? "]" : "", - packet->dst_port, -#if defined(WITH_UDPFROMTO) && defined(WITH_IFINDEX_NAME_RESOLUTION) - packet->if_index ? "via " : "", - packet->if_index ? fr_ifname_from_ifindex(if_name, packet->if_index) : "", - packet->if_index ? " " : "", -#endif - packet->data_len); - } else { - radlog_request(L_DBG, L_DBG_LVL_1, request, "%s code %u Id %i from %s%s%s:%i to %s%s%s:%i " -#if defined(WITH_UDPFROMTO) && defined(WITH_IFINDEX_NAME_RESOLUTION) - "%s%s%s" -#endif - "length %zu", - received ? "Received" : "Sent", - packet->code, - packet->id, - packet->src_ipaddr.af == AF_INET6 ? "[" : "", - fr_inet_ntop(src_ipaddr, sizeof(src_ipaddr), &packet->src_ipaddr), - packet->src_ipaddr.af == AF_INET6 ? "]" : "", - packet->src_port, - packet->dst_ipaddr.af == AF_INET6 ? "[" : "", - fr_inet_ntop(dst_ipaddr, sizeof(dst_ipaddr), &packet->dst_ipaddr), - packet->dst_ipaddr.af == AF_INET6 ? "]" : "", - packet->dst_port, -#if defined(WITH_UDPFROMTO) && defined(WITH_IFINDEX_NAME_RESOLUTION) - packet->if_index ? "via " : "", - packet->if_index ? fr_ifname_from_ifindex(if_name, packet->if_index) : "", - packet->if_index ? " " : "", -#endif - packet->data_len); - } - - if (received) { - rdebug_pair_list(L_DBG_LVL_1, request, packet->vps, NULL); - } else { - rdebug_proto_pair_list(L_DBG_LVL_1, request, packet->vps, NULL); - } -} static CONF_PARSER performance_config[] = { { FR_CONF_OFFSET("skip_duplicate_checks", FR_TYPE_BOOL, rad_listen_t, nodup) },