munge icon indicating copy to clipboard operation
munge copied to clipboard

IPv6 support

Open GoogleCodeExporter opened this issue 10 years ago • 1 comments

What new or enhanced feature are you proposing?

IPv6 support.

What goal would this enhancement help you achieve?

This would allow an IPv6 address for the credential origin to be stored in the metadata when the credential is encoded, and queried when the credential is decoded.

Please provide any additional information below.

Request from Tomas Kouba on 2013-02-06: https://groups.google.com/forum/?fromgroups=#!topic/munge-users/dzqNuKT9uww

Original issue reported on code.google.com by chris.m.dunlap on 11 Feb 2013 at 9:23

GoogleCodeExporter avatar May 15 '15 22:05 GoogleCodeExporter

The v3 credential format has an origin address of variable length, so it already allows for IPv6 addresses.

Additional work includes:

  • [ ] Replace struct in_addr addr in struct m_msg ["libcommon/m_msg.h"].
  • [ ] Replace struct in_addr addr in struct munge_ctx ["libmunge/ctx.h"].
  • [ ] Replace struct in_addr addr in struct conf ["munged/conf.h"].
  • [ ] Rename struct conf addr to origin_addr ["munged/conf.h"] for consistency.
  • [ ] Replace gethostbyname() with getaddrinfo().
  • [ ] Specify hints.ai_family = AF_UNSPEC in getaddrinfo().
  • [ ] Update write_origin_addr() ["munged/conf.c"].
  • [ ] Check AF_INET6 family in getifaddrs() result ["munged/net.c"].
  • [ ] Replace gethostbyaddr() with getnameinfo().
  • [ ] Remove "libmissing/inet_ntop.c" since it only supports IPv4.
  • [ ] Add context option MUNGE_OPT_ADDR to return a struct sockaddr.
  • [ ] Add context option MUNGE_OPT_ADDR6 to return a struct in6_addr?
  • [ ] Deprecate context option MUNGE_OPT_ADDR4?
  • [ ] Pack null addr into 1 byte of credential metadata.
  • [ ] Test munge_ctx_get (ctx, MUNGE_OPT_ADDR, ...) with null addr.
  • [ ] Test munge_ctx_get (ctx, MUNGE_OPT_ADDR, ...) with IPv6 addr.
  • [ ] Update display_encode_host() ["munge/unmunge.c"].
  • [ ] Support IPv6 addresses in munged --origin.
  • [ ] Support IPv6 addresses with MUNGE_OPT_ADDR_RESTRICTION.
  • [ ] Update libmunge libtool -version-info due to added context option(s).
  • [ ] Update sharness tests for munged --origin.
  • [ ] Update sharness tests for unmunge ENCODE_HOST.
  • [ ] Update sharness tests for unmunge ADDR_RESTRICTION.

dun avatar Jul 02 '19 17:07 dun