diff options
Diffstat (limited to 'security')
-rw-r--r-- | security/openssh-portable/Makefile | 3 | ||||
-rw-r--r-- | security/openssh-portable/files/openssh-lpk-5.0p1-64bit.patch | 44 |
2 files changed, 47 insertions, 0 deletions
diff --git a/security/openssh-portable/Makefile b/security/openssh-portable/Makefile index c8ac83eeec06..2c050c942b79 100644 --- a/security/openssh-portable/Makefile +++ b/security/openssh-portable/Makefile @@ -148,6 +148,9 @@ PATCHFILES+= openssh-5.1p1-hpn13v5.diff.gz # See http://dev.inversepath.com/trac/openssh-lpk .if defined(WITH_LPK) EXTRA_PATCHES= ${FILESDIR}/openssh-lpk-5.0p1-0.3.9.patch +.if ${ARCH} == "amd64" +EXTRA_PATCHES+= ${FILESDIR}/openssh-lpk-5.0p1-64bit.patch +.endif USE_OPENLDAP= yes CPPFLAGS+= "-I${LOCALBASE}/include -DWITH_LDAP_PUBKEY" CONFIGURE_ARGS+= --with-libs='-lldap' --with-ldflags='-L${LOCALBASE}/lib' \ diff --git a/security/openssh-portable/files/openssh-lpk-5.0p1-64bit.patch b/security/openssh-portable/files/openssh-lpk-5.0p1-64bit.patch new file mode 100644 index 000000000000..2e95d951885b --- /dev/null +++ b/security/openssh-portable/files/openssh-lpk-5.0p1-64bit.patch @@ -0,0 +1,44 @@ +diff -Nuar --exclude '*.rej' servconf.c.orig servconf.c +--- servconf.c.orig 2008-08-23 15:02:47.000000000 -0700 ++++ servconf.c 2008-08-23 15:04:21.000000000 -0700 +@@ -701,6 +701,7 @@ + int cmdline = 0, *intptr, value, n; + SyslogFacility *log_facility_ptr; + LogLevel *log_level_ptr; ++ unsigned long lvalue, *longptr; + ServerOpCodes opcode; + u_short port; + u_int i, flags = 0; +@@ -715,6 +716,7 @@ + if (!arg || !*arg || *arg == '#') + return 0; + intptr = NULL; ++ longptr = NULL; + charptr = NULL; + opcode = parse_token(arg, filename, linenum, &flags); + +@@ -1449,11 +1451,20 @@ + *intptr = value; + break; + case sBindTimeout: +- intptr = (int *) &options->lpk.b_timeout.tv_sec; +- goto parse_int; ++ longptr = (unsigned long *) &options->lpk.b_timeout.tv_sec; ++parse_ulong: ++ arg = strdelim(&cp); ++ if (!arg || *arg == '\0') ++ fatal("%s line %d: missing integer value.", ++ filename, linenum); ++ lvalue = atol(arg); ++ if (*activep && *longptr == -1) ++ *longptr = lvalue; ++ break; ++ + case sSearchTimeout: +- intptr = (int *) &options->lpk.s_timeout.tv_sec; +- goto parse_int; ++ longptr = (unsigned long *) &options->lpk.s_timeout.tv_sec; ++ goto parse_ulong; + break; + case sLdapConf: + arg = cp; |