diff options
author | Eric Wong <normalperson@yhbt.net> | 2013-04-16 20:26:57 +0000 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2013-04-16 20:27:42 +0000 |
commit | 29342bcd9864e4aabb9e6febef8748a5f51ac944 (patch) | |
tree | 4e639d4832f748a5a1ccf86eb4b80f4b3174275e /cmogstored.h | |
parent | 88d34b4686a650dba89674aa302ab13c78e8cef0 (diff) | |
download | cmogstored-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.h | 9 |
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; |