+#ifdef HAVE_LINUX
+ if((scopeid = strchr(address, '%')))
+ *scopeid = '\0'; /* Descope. */
+#endif
+
+ *addrstr = xstrdup(address);
+ *portstr = xstrdup(port);
+cp
+}
+
+char *sockaddr2hostname(sockaddr_t *sa)
+{
+ char *str;
+ char address[NI_MAXHOST] = "unknown";
+ char port[NI_MAXSERV] = "unknown";
+ int err;
+cp
+ if((err = getnameinfo(&sa->sa, SALEN(sa->sa), address, sizeof(address), port, sizeof(port), hostnames?0:(NI_NUMERICHOST|NI_NUMERICSERV))))