#ifndef _ARPA_INET_H
#define _ARPA_INET_H
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#if __STDC_VERSION__ >= 199901L
+#define __restrict restrict
+#elif !defined(__GNUC__)
+#define __restrict
+#endif
+
#include <netinet/in.h>
#include <inttypes.h>
in_addr_t inet_addr (const char *);
char *inet_ntoa (struct in_addr);
-int inet_pton (int, const char *, void *);
-const char *inet_ntop (int, const void *, char *, socklen_t);
+int inet_pton (int, const char *__restrict, void *__restrict);
+const char *inet_ntop (int, const void *__restrict, char *__restrict, socklen_t);
int inet_aton (const char *, struct in_addr *); /* nonstandard but widely used */
#define INET_ADDRSTRLEN 16
#define INET6_ADDRSTRLEN 46
+#ifdef __cplusplus
+}
+#endif
+
#endif