Make kadmin work over IPv6
authorGreg Hudson <ghudson@mit.edu>
Sat, 26 Jun 2010 03:32:55 +0000 (03:32 +0000)
committerGreg Hudson <ghudson@mit.edu>
Sat, 26 Jun 2010 03:32:55 +0000 (03:32 +0000)
commit0080380b3b3e945c5eb84504771d9d01ee76a611
tree39234f0c55f0a9304b935e0f38c7c9b14aa0c7cf
parent5191e163a9a39ae11e1e62f4a2e191f2d26fbb7a
Make kadmin work over IPv6

Make gssrpc work over IPv6 TCP sockets provided that the client
creates and connects/binds the sockets and doesn't query their
addresses or use bindresvport().  Make kadmin work within those
constraints and handle IPv6.  Specific changes:

* Make svctcp_create() able to extract the port from an IPv6 socket,
  using a new helper function getport().
* Make clnttcp_create() handle a null raddr value if *sockp is set.
* Make kadm5_get_service_name() use getaddrinfo() to canonicalize the
  admin server name.
* Make libkadm5clnt's init_any() responsible for connecting its socket
  using a new helper function connect_to_server(), which uses
  getaddrinfo instead of gethostbyname.  Pass a null address to
  clnttcp_create().
* Make libapputil's net-server.c set up IPv6 as well as IPv4 listener
  ports for RPC connections.
* Adjust the error code expected in a libkadm5 unit test.

ticket: 6746

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@24147 dc483132-0cff-0310-8789-dd5450dbe970
src/kadmin/testing/util/tcl_kadm5.c
src/lib/apputils/net-server.c
src/lib/kadm5/alt_prof.c
src/lib/kadm5/clnt/client_init.c
src/lib/kadm5/unit-test/api.current/init-v2.exp
src/lib/rpc/clnt_tcp.c
src/lib/rpc/svc_tcp.c