implement legacy function herror

based on patch by Timo Teräs; greatly simplified to use fprintf.
diff --git a/include/netdb.h b/include/netdb.h
index 8a7013a..2dd799b 100644
--- a/include/netdb.h
+++ b/include/netdb.h
@@ -134,6 +134,7 @@
 #endif
 
 #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
+void herror(const char *);
 const char *hstrerror(int);
 int gethostbyname_r(const char *, struct hostent *, char *, size_t, struct hostent **, int *);
 int gethostbyname2_r(const char *, int, struct hostent *, char *, size_t, struct hostent **, int *);
diff --git a/src/network/herror.c b/src/network/herror.c
new file mode 100644
index 0000000..65f25ff
--- /dev/null
+++ b/src/network/herror.c
@@ -0,0 +1,8 @@
+#define _GNU_SOURCE
+#include <stdio.h>
+#include <netdb.h>
+
+void herror(const char *msg)
+{
+	fprintf(stderr, "%s%s%s", msg?msg:"", msg?": ":"", hstrerror(h_errno));
+}