summaryrefslogtreecommitdiffstats
path: root/src/include/common/ip.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/include/common/ip.h')
-rw-r--r--src/include/common/ip.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/src/include/common/ip.h b/src/include/common/ip.h
new file mode 100644
index 0000000..34c78eb
--- /dev/null
+++ b/src/include/common/ip.h
@@ -0,0 +1,37 @@
+/*-------------------------------------------------------------------------
+ *
+ * ip.h
+ * Definitions for IPv6-aware network access.
+ *
+ * These definitions are used by both frontend and backend code.
+ *
+ * Copyright (c) 2003-2020, PostgreSQL Global Development Group
+ *
+ * src/include/common/ip.h
+ *
+ *-------------------------------------------------------------------------
+ */
+#ifndef IP_H
+#define IP_H
+
+#include "getaddrinfo.h" /* pgrminclude ignore */
+#include "libpq/pqcomm.h" /* pgrminclude ignore */
+
+
+#ifdef HAVE_UNIX_SOCKETS
+#define IS_AF_UNIX(fam) ((fam) == AF_UNIX)
+#else
+#define IS_AF_UNIX(fam) (0)
+#endif
+
+extern int pg_getaddrinfo_all(const char *hostname, const char *servname,
+ const struct addrinfo *hintp,
+ struct addrinfo **result);
+extern void pg_freeaddrinfo_all(int hint_ai_family, struct addrinfo *ai);
+
+extern int pg_getnameinfo_all(const struct sockaddr_storage *addr, int salen,
+ char *node, int nodelen,
+ char *service, int servicelen,
+ int flags);
+
+#endif /* IP_H */