diff options
author | Nalin Dahyabhai <nalin@redhat.com> | 2011-11-15 11:18:24 -0500 |
---|---|---|
committer | Nalin Dahyabhai <nalin@redhat.com> | 2011-11-15 11:18:24 -0500 |
commit | ffdbb209984e0628545b6addd425d6c726d46eb1 (patch) | |
tree | 55b5d924dbf03021e5ce61dd9a29f7b348b9af3c | |
parent | 57dcd4d36a4ddfb794b728fe8a23d11428897a71 (diff) | |
download | krb5-ffdbb209984e0628545b6addd425d6c726d46eb1.tar.gz krb5-ffdbb209984e0628545b6addd425d6c726d46eb1.tar.xz krb5-ffdbb209984e0628545b6addd425d6c726d46eb1.zip |
- don't need this any more
-rw-r--r-- | krb5-trunk-kadmin-oldproto.patch | 39 |
1 files changed, 0 insertions, 39 deletions
diff --git a/krb5-trunk-kadmin-oldproto.patch b/krb5-trunk-kadmin-oldproto.patch deleted file mode 100644 index da4172a..0000000 --- a/krb5-trunk-kadmin-oldproto.patch +++ /dev/null @@ -1,39 +0,0 @@ ------------------------------------------------------------------------- -r24967 | ghudson | 2011-06-13 14:54:33 -0400 (Mon, 13 Jun 2011) | 11 lines - -ticket: 6920 -subject: Fix old-style GSSRPC authentication -target_version: 1.9.2 -tags: pullup - -r24147 (ticket #6746) made libgssrpc ignorant of the remote address of -the kadmin socket, even when it's IPv4. This made old-style GSSAPI -authentication fail because it uses the wrong channel bindings. Fix -this problem by making clnttcp_create() get the remote address from -the socket using getpeername() if the caller doesn't provide it and -it's an IPv4 address. ------------------------------------------------------------------------- -Index: src/lib/rpc/clnt_tcp.c -=================================================================== ---- src/lib/rpc/clnt_tcp.c (revision 24966) -+++ src/lib/rpc/clnt_tcp.c (revision 24967) -@@ -187,9 +187,16 @@ - ct->ct_sock = *sockp; - ct->ct_wait.tv_usec = 0; - ct->ct_waitset = FALSE; -- if (raddr == NULL) -- memset(&ct->ct_addr, 0, sizeof(ct->ct_addr)); -- else -+ if (raddr == NULL) { -+ /* Get the remote address from the socket, if it's IPv4. */ -+ struct sockaddr_in sin; -+ socklen_t len = sizeof(sin); -+ int ret = getpeername(ct->ct_sock, (struct sockaddr *)&sin, &len); -+ if (ret == 0 && len == sizeof(sin) && sin.sin_family == AF_INET) -+ ct->ct_addr = sin; -+ else -+ memset(&ct->ct_addr, 0, sizeof(ct->ct_addr)); -+ } else - ct->ct_addr = *raddr; - - /* |