about summary refs log tree commit homepage
path: root/cmogstored.h
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2013-04-16 20:26:57 +0000
committerEric Wong <normalperson@yhbt.net>2013-04-16 20:27:42 +0000
commit29342bcd9864e4aabb9e6febef8748a5f51ac944 (patch)
tree4e639d4832f748a5a1ccf86eb4b80f4b3174275e /cmogstored.h
parent88d34b4686a650dba89674aa302ab13c78e8cef0 (diff)
downloadcmogstored-29342bcd9864e4aabb9e6febef8748a5f51ac944.tar.gz
This will allow us to more easily handle error reporting for
IPv6 addresses and allow for consistent formatting of
stringified IP addresses.
Diffstat (limited to 'cmogstored.h')
-rw-r--r--cmogstored.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/cmogstored.h b/cmogstored.h
index 25bbb62..170b840 100644
--- a/cmogstored.h
+++ b/cmogstored.h
@@ -551,8 +551,10 @@ _Noreturn void cmogstored_exit(void);
  * standard NI_MAXHOST/NI_MAXSERV values (1025 and 32 respectively).
  * This reduces our per-thread stack usage and keeps caches hotter.
  */
-#define MOG_NI_MAXHOST (INET6_ADDRSTRLEN)
-#define MOG_NI_MAXSERV (sizeof(":65536"))
+struct mog_ni {
+        char ni_host[INET6_ADDRSTRLEN + sizeof("[]") - 1];
+        char ni_serv[sizeof(":65536")];
+};
 
 /* avoid sockaddr_storage since that bigger than we need */
 union mog_sockaddr {
@@ -561,6 +563,9 @@ union mog_sockaddr {
         uint8_t bytes[sizeof(struct sockaddr_in6)];
 };
 
+/* nameinfo.c */
+int mog_nameinfo(union mog_sockaddr *, socklen_t, struct mog_ni *);
+
 static inline struct sockaddr *mog_sockaddr_sa(union mog_sockaddr *msa)
 {
         return (struct sockaddr *)msa;