[Heimdal-source-changes] [heimdal/heimdal] 59b8f4: ipv6 loopbacks fix for GNU libc getaddrinfo()

GitHub noreply at github.com
Sön Jan 25 22:19:06 CET 2015


  Branch: refs/heads/master
  Home:   https://github.com/heimdal/heimdal
  Commit: 59b8f4ff840aaaf1f06c348d26da64cc75f87eac
      https://github.com/heimdal/heimdal/commit/59b8f4ff840aaaf1f06c348d26da64cc75f87eac
  Author: Rok Papež, ARNES <rok.papez at arnes.si>
  Date:   2015-01-25 (Sun, 25 Jan 2015)

  Changed paths:
    M lib/krb5/addr_families.c

  Log Message:
  -----------
  ipv6 loopbacks fix for GNU libc getaddrinfo()

On any OS with a properly implemented getaddrinfo() this change is a
no-op. Passing NULL for the hint is supposed to be the same as an
addrinfo structure with all fields set to 0. There is no need to set
ai_family to AF_UNSPEC because that value is already 0.

GNU libc doesn't follow standard behaviour. Quoting from
http://man7.org/linux/man-pages/man3/getaddrinfo.3.html :

  "Specifying hints as NULL is equivalent to setting ai_socktype and
  ai_protocol to 0; ai_family to AF_UNSPEC; and ai_flags to
  (AI_V4MAPPED | AI_ADDRCONFIG). (POSIX specifies different defaults for
  ai_flags; see NOTES.)"

The NOTES section says:

  "According to POSIX.1-2001, specifying hints as NULL should cause
  ai_flags to be assumed as 0. The GNU C library instead assumes a value
  of (AI_V4MAPPED | AI_ADDRCONFIG) for this case, since this value is
  considered an improvement on the specification."

The patch makes sure that krb5_parse_address works consistently on both
GNU libc and systems that follow POSIX.1-2001 to the letter. Some
incorrect Fedora 17 patches managed to break IPv6 connectivity and were
later backed out (see discussion at https://bugzilla.redhat.com/808147).
This patch resolves the incompatibility.

Signed-off-by: Ken Dreyer <ktdreyer at ktdreyer.com>


  Commit: c1564e2cdb84f4ee4f8c1d70fcebe9db973cafca
      https://github.com/heimdal/heimdal/commit/c1564e2cdb84f4ee4f8c1d70fcebe9db973cafca
  Author: Jeffrey Altman <jaltman at secure-endpoints.com>
  Date:   2015-01-25 (Sun, 25 Jan 2015)

  Changed paths:
    M lib/krb5/addr_families.c

  Log Message:
  -----------
  Merge pull request #119 from ktdreyer/ipv6-loopback

ipv6 loopbacks fix


Compare: https://github.com/heimdal/heimdal/compare/ef8e4da01035...c1564e2cdb84


More information about the Heimdal-source-changes mailing list