diff options
Diffstat (limited to 'main/openssh/openssh-fix-utmp.diff')
-rw-r--r-- | main/openssh/openssh-fix-utmp.diff | 26 |
1 files changed, 8 insertions, 18 deletions
diff --git a/main/openssh/openssh-fix-utmp.diff b/main/openssh/openssh-fix-utmp.diff index 6bfe49df65..275e80590d 100644 --- a/main/openssh/openssh-fix-utmp.diff +++ b/main/openssh/openssh-fix-utmp.diff @@ -1,21 +1,11 @@ ---- openssh-6.2p2/loginrec.c.orig -+++ openssh-6.2p2/loginrec.c -@@ -784,12 +784,12 @@ +--- openssh-6.8p1.orig/loginrec.c 2015-03-17 07:49:20.000000000 -0200 ++++ openssh-6.8p1/loginrec.c 2015-03-19 10:45:45.780276841 -0200 +@@ -783,7 +783,7 @@ + if (li->hostaddr.sa.sa_family == AF_INET) + utx->ut_addr = li->hostaddr.sa_in.sin_addr.s_addr; + # endif +-# ifdef HAVE_ADDR_V6_IN_UTMP ++# ifdef HAVE_ADDR_V6_IN_UTMPX /* this is just a 128-bit IPv6 address */ if (li->hostaddr.sa.sa_family == AF_INET6) { sa6 = ((struct sockaddr_in6 *)&li->hostaddr.sa); -- memcpy(ut->ut_addr_v6, sa6->sin6_addr.s6_addr, 16); -+ memcpy(utx->ut_addr_v6, sa6->sin6_addr.s6_addr, 16); - if (IN6_IS_ADDR_V4MAPPED(&sa6->sin6_addr)) { -- ut->ut_addr_v6[0] = ut->ut_addr_v6[3]; -- ut->ut_addr_v6[1] = 0; -- ut->ut_addr_v6[2] = 0; -- ut->ut_addr_v6[3] = 0; -+ utx->ut_addr_v6[0] = utx->ut_addr_v6[3]; -+ utx->ut_addr_v6[1] = 0; -+ utx->ut_addr_v6[2] = 0; -+ utx->ut_addr_v6[3] = 0; - } - } - # endif - |