This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libc/10559] New: getaddrinfo() calls unnecessarily connect()


Background: I am a developer in hipl.hiit.fi project which develops Linux-based
IPsec key and mobility management daemon for Host Identity Protocol (HIP). The
daemon stores its keys in DNS according to RFC5206 and uses a local DNS proxy to
returns hashes of public keys to application from the DNS. The daemon calls also
getaddrinfo() to resolve identifiers from the DNS when using registration
extensions defined in RFC5204.

The problem: it appears that calling getaddrinfo() also calls connect() with the
given IP address, UDP protocol and port 0. This a problem in the IPsec key
management daemon because it calls also getaddrinfo and this triggers a
Diffie-Hellman based key exchange (which is a costly operation)

Is it really necessary to call connect() in getaddrinfo() or is there some other
way around this? Currently it's not possible to filter requests to trigger key
exchange with UDP port zero in IPsec key managers because Linux XFRM does not
support it.

-- 
           Summary: getaddrinfo() calls unnecessarily connect()
           Product: glibc
           Version: unspecified
            Status: NEW
          Severity: minor
          Priority: P2
         Component: libc
        AssignedTo: drepper at redhat dot com
        ReportedBy: miika at iki dot fi
                CC: glibc-bugs at sources dot redhat dot com


http://sourceware.org/bugzilla/show_bug.cgi?id=10559

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]