return -1;
}
- fr_packet_header_log(&default_log, request->packet, false);
- if (fr_debug_lvl > L_DBG_LVL_1) fr_pair_list_log(&default_log, request->packet->vps);
+ fr_packet_log(&default_log, request->packet, false);
return 0;
}
goto packet_done;
}
- fr_packet_header_log(&default_log, request->reply, true);
- if (fr_debug_lvl >= L_DBG_LVL_1) fr_pair_list_log(&default_log, request->reply->vps);
+ fr_packet_log(&default_log, request->reply, true);
/*
* Increment counters...
/*
* Print the attributes we're about to send
*/
- fr_packet_header_log(&default_log, request, false);
- if (fr_debug_lvl >= L_DBG_LVL_1) fr_pair_list_log(&default_log, request->vps);
-#ifndef NDEBUG
- if (fr_debug_lvl >= L_DBG_LVL_4) fr_radius_packet_log_hex(&default_log, request);
-#endif
+ fr_packet_log(&default_log, request, false);
FD_ZERO(&set); /* clear the set */
FD_SET(fd, &set);
/*
* Print the attributes we received in response
*/
- fr_packet_header_log(&default_log, reply, true);
- if (fr_debug_lvl >= L_DBG_LVL_1) fr_pair_list_log(&default_log, reply->vps);
-#ifndef NDEBUG
- if (fr_debug_lvl >= L_DBG_LVL_4) fr_radius_packet_log_hex(&default_log, reply);
-#endif
+ fr_packet_log(&default_log, reply, true);
switch (command) {
case RADSNMP_GET:
packet->data_len);
}
}
+
+/*
+ * Debug the packet header and all attributes
+ */
+void fr_packet_log(fr_log_t const *log, RADIUS_PACKET *packet, bool received)
+{
+ fr_packet_header_log(log, packet, received);
+ if (fr_debug_lvl >= L_DBG_LVL_1) fr_pair_list_log(log, packet->vps);
+#ifndef NDEBUG
+ if (fr_debug_lvl >= L_DBG_LVL_4) fr_radius_packet_log_hex(log, packet);
+#endif
+}
uint32_t fr_packet_list_num_incoming(fr_packet_list_t *pl);
uint32_t fr_packet_list_num_outgoing(fr_packet_list_t *pl);
void fr_packet_header_log(fr_log_t const *log, RADIUS_PACKET *packet, bool received);
+void fr_packet_log(fr_log_t const *log, RADIUS_PACKET *packet, bool received);
/*
* "find" returns a pointer to the RADIUS_PACKET* member in the
&packet->dst_ipaddr, packet->dst_port);
}
-void _fr_radius_packet_log_hex(fr_log_t *log, RADIUS_PACKET const *packet, char const *file, int line)
+void _fr_radius_packet_log_hex(fr_log_t const *log, RADIUS_PACKET const *packet, char const *file, int line)
{
uint8_t const *attr, *end;
char buffer[256];
char const *secret) CC_HINT(nonnull (1,3));
#define fr_radius_packet_log_hex(_log, _packet) _fr_radius_packet_log_hex(_log, _packet, __FILE__, __LINE__);
-void _fr_radius_packet_log_hex(fr_log_t *log, RADIUS_PACKET const *packet, char const *file, int line) CC_HINT(nonnull);
+void _fr_radius_packet_log_hex(fr_log_t const *log, RADIUS_PACKET const *packet, char const *file, int line) CC_HINT(nonnull);
typedef struct {
uint8_t const *vector; //!< vector for encryption / decryption of data