s = UTI_IPSockAddrToString(&ip_saddr);
TEST_CHECK(strcmp(s, "1.2.3.4:12345") == 0);
+ ip = ip_saddr.ip_addr;
+ s = UTI_IPSubnetToString(&ip, 10);
+ TEST_CHECK(strcmp(s, "1.2.3.4/10") == 0);
+ s = UTI_IPSubnetToString(&ip, 32);
+ TEST_CHECK(strcmp(s, "1.2.3.4") == 0);
+ ip.family = IPADDR_UNSPEC;
+ s = UTI_IPSubnetToString(&ip, 0);
+ TEST_CHECK(strcmp(s, "any address") == 0);
+
s = UTI_TimeToLogForm(2000000000);
TEST_CHECK(strcmp(s, "2033-05-18 03:33:20") == 0);
/* ================================================== */
+char *
+UTI_IPSubnetToString(IPAddr *subnet, int bits)
+{
+ char *result;
+
+ result = NEXT_BUFFER;
+
+ if (subnet->family == IPADDR_UNSPEC)
+ snprintf(result, BUFFER_LENGTH, "%s", "any address");
+ else if ((subnet->family == IPADDR_INET4 && bits == 32) ||
+ (subnet->family == IPADDR_INET6 && bits == 128))
+ snprintf(result, BUFFER_LENGTH, "%s", UTI_IPToString(subnet));
+ else
+ snprintf(result, BUFFER_LENGTH, "%s/%d", UTI_IPToString(subnet), bits);
+
+ return result;
+}
+
+/* ================================================== */
+
char *
UTI_TimeToLogForm(time_t t)
{
extern char *UTI_IPSockAddrToString(const IPSockAddr *sa);
+extern char *UTI_IPSubnetToString(IPAddr *subnet, int bits);
+
extern char *UTI_TimeToLogForm(time_t t);
/* Adjust time following a frequency/offset change */