mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-26 09:46:09 +00:00
security/oath-toolkit: update to 2.6.7 release
This commit is contained in:
parent
31e7b4d0c1
commit
cf4f63cf4a
@ -1,17 +1,25 @@
|
||||
# Created by: Alex Dupre <ale@FreeBSD.org>
|
||||
|
||||
PORTNAME= oath-toolkit
|
||||
PORTVERSION= 2.6.2
|
||||
PORTVERSION= 2.6.7
|
||||
CATEGORIES= security
|
||||
MASTER_SITES= SAVANNAH
|
||||
|
||||
MAINTAINER= ale@FreeBSD.org
|
||||
COMMENT= Library, tools, and PAM module for OATH authentication
|
||||
|
||||
LICENSE= GPLv3+ LGPL20+
|
||||
LICENSE_COMB= multi
|
||||
|
||||
LIB_DEPENDS= libltdl.so:devel/libltdl
|
||||
|
||||
GNU_CONFIGURE= yes
|
||||
CONFIGURE_ARGS= --with-html-dir=${DOCSDIR}
|
||||
USES= gmake libtool pathfix pkgconfig
|
||||
USE_GNOME= libxslt
|
||||
USE_LDCONFIG= yes
|
||||
INSTALL_TARGET= install-strip
|
||||
TEST_TARGET= check
|
||||
|
||||
OPTIONS_DEFINE= PSKC DOCS
|
||||
OPTIONS_DEFAULT=PSKC
|
||||
|
@ -1,3 +1,3 @@
|
||||
TIMESTAMP = 1472638195
|
||||
SHA256 (oath-toolkit-2.6.2.tar.gz) = b03446fa4b549af5ebe4d35d7aba51163442d255660558cd861ebce536824aa0
|
||||
SIZE (oath-toolkit-2.6.2.tar.gz) = 4295786
|
||||
TIMESTAMP = 1643620380
|
||||
SHA256 (oath-toolkit-2.6.7.tar.gz) = 36eddfce8f2f36347fb257dbf878ba0303a2eaafe24eaa071d5cd302261046a9
|
||||
SIZE (oath-toolkit-2.6.7.tar.gz) = 5625279
|
||||
|
11
security/oath-toolkit/files/patch-liboath_tests_tst__basic.c
Normal file
11
security/oath-toolkit/files/patch-liboath_tests_tst__basic.c
Normal file
@ -0,0 +1,11 @@
|
||||
--- liboath/tests/tst_basic.c.orig 2022-01-31 11:26:43 UTC
|
||||
+++ liboath/tests/tst_basic.c
|
||||
@@ -57,7 +57,7 @@ main (void)
|
||||
return 1;
|
||||
}
|
||||
|
||||
- if (OATH_VERSION_NUMBER < 0x02060300 || OATH_VERSION_NUMBER >= 0x03000000)
|
||||
+ if (OATH_VERSION_NUMBER < 0x02060200 || OATH_VERSION_NUMBER >= 0x03000000)
|
||||
{
|
||||
printf ("OATH_VERSION_NUMBER out of range?!\n");
|
||||
return 1;
|
@ -0,0 +1,20 @@
|
||||
--- liboath/tests/tst_totp_validate.c.orig 2022-01-31 11:03:27 UTC
|
||||
+++ liboath/tests/tst_totp_validate.c
|
||||
@@ -156,7 +156,7 @@ main (void)
|
||||
}
|
||||
if (otp_counter != tv[i].otp_counter)
|
||||
{
|
||||
- printf ("validate3 loop %ld failed (counter %d != %d)?!\n",
|
||||
+ printf ("validate3 loop %ld failed (counter %ld != %ld)?!\n",
|
||||
i, otp_counter, tv[i].otp_counter);
|
||||
return 1;
|
||||
}
|
||||
@@ -184,7 +184,7 @@ main (void)
|
||||
}
|
||||
if (otp_counter != tv[i].otp_counter)
|
||||
{
|
||||
- printf ("validate3_callback loop %ld failed (counter %d != %d)?!\n",
|
||||
+ printf ("validate3_callback loop %ld failed (counter %ld != %ld)?!\n",
|
||||
i, otp_counter, tv[i].otp_counter);
|
||||
return 1;
|
||||
}
|
11
security/oath-toolkit/files/patch-libpskc_tests_tst__basic.c
Normal file
11
security/oath-toolkit/files/patch-libpskc_tests_tst__basic.c
Normal file
@ -0,0 +1,11 @@
|
||||
--- libpskc/tests/tst_basic.c.orig 2022-01-31 11:38:13 UTC
|
||||
+++ libpskc/tests/tst_basic.c
|
||||
@@ -70,7 +70,7 @@ main (void)
|
||||
return 1;
|
||||
}
|
||||
|
||||
- if (PSKC_VERSION_NUMBER < 0x02060300 || PSKC_VERSION_NUMBER >= 0x03000000)
|
||||
+ if (PSKC_VERSION_NUMBER < 0x02060200 || PSKC_VERSION_NUMBER >= 0x03000000)
|
||||
{
|
||||
printf ("PSKC_VERSION_NUMBER out of range?!\n");
|
||||
return 1;
|
11
security/oath-toolkit/files/patch-pam__oath_Makefile.in
Normal file
11
security/oath-toolkit/files/patch-pam__oath_Makefile.in
Normal file
@ -0,0 +1,11 @@
|
||||
--- pam_oath/Makefile.in.orig 2022-01-31 11:17:51 UTC
|
||||
+++ pam_oath/Makefile.in
|
||||
@@ -414,7 +414,7 @@ AM_CPPFLAGS = -I$(builddir)/../liboath
|
||||
EXTRA_DIST = README
|
||||
pammoddir = $(PAMDIR)
|
||||
pammod_LTLIBRARIES = pam_oath.la
|
||||
-pam_oath_la_SOURCES = pam_oath.c
|
||||
+pam_oath_la_SOURCES = pam_oath.c pam_modutil.c pam_modutil.h
|
||||
# XXX add -Wl,-x too? PAM documentation suggests it.
|
||||
pam_oath_la_LIBADD = ../liboath/liboath.la
|
||||
pam_oath_la_LDFLAGS = -module -avoid-version
|
11
security/oath-toolkit/files/patch-pam__oath_configure
Normal file
11
security/oath-toolkit/files/patch-pam__oath_configure
Normal file
@ -0,0 +1,11 @@
|
||||
--- pam_oath/configure.orig 2022-01-31 11:20:05 UTC
|
||||
+++ pam_oath/configure
|
||||
@@ -12156,8 +12156,6 @@ if test "x$ac_cv_header_security_pam_modutil_h" = xyes
|
||||
#define HAVE_SECURITY_PAM_MODUTIL_H 1
|
||||
_ACEOF
|
||||
|
||||
-else
|
||||
- as_fn_error $? "PAM header files not found, install libpam-dev." "$LINENO" 5
|
||||
fi
|
||||
|
||||
done
|
85
security/oath-toolkit/files/patch-pam__oath_pam__modutil.c
Normal file
85
security/oath-toolkit/files/patch-pam__oath_pam__modutil.c
Normal file
@ -0,0 +1,85 @@
|
||||
--- pam_oath/pam_modutil.c.orig 2022-01-31 11:03:40 UTC
|
||||
+++ pam_oath/pam_modutil.c
|
||||
@@ -0,0 +1,82 @@
|
||||
+#include <config.h>
|
||||
+
|
||||
+#ifndef HAVE_SECURITY_PAM_MODUTIL_H
|
||||
+
|
||||
+#include "pam_modutil.h"
|
||||
+
|
||||
+#ifdef HAVE_SECURITY_PAM_APPL_H
|
||||
+#include <security/pam_appl.h>
|
||||
+#endif
|
||||
+#ifdef HAVE_SECURITY_PAM_MODULES_H
|
||||
+#include <security/pam_modules.h>
|
||||
+#endif
|
||||
+
|
||||
+#include <errno.h>
|
||||
+#include <pwd.h>
|
||||
+#include <stddef.h>
|
||||
+#include <stdlib.h>
|
||||
+#include <unistd.h>
|
||||
+
|
||||
+#define PWD_INITIAL_LENGTH 0x400
|
||||
+#define PWD_ABSURD_PWD_LENGTH 0x4000
|
||||
+
|
||||
+void _pam_modutil_cleanup(pam_handle_t *pamh, void *data, int error_status) {
|
||||
+ if (data) {
|
||||
+ (void) free(data);
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+struct passwd *pam_modutil_getpwnam(pam_handle_t *pamh, const char *user) {
|
||||
+ void *buffer = NULL;
|
||||
+ size_t length = PWD_INITIAL_LENGTH;
|
||||
+ long sc_init_length = sysconf(_SC_GETPW_R_SIZE_MAX);
|
||||
+
|
||||
+ if (sc_init_length != -1 && sc_init_length < PWD_ABSURD_PWD_LENGTH) {
|
||||
+ length = (size_t) sc_init_length;
|
||||
+ }
|
||||
+
|
||||
+ do {
|
||||
+ int status;
|
||||
+ void *new_buffer;
|
||||
+ struct passwd *result = NULL;
|
||||
+
|
||||
+ new_buffer = realloc(buffer, sizeof(struct passwd) + length);
|
||||
+ if (new_buffer == NULL) {
|
||||
+ // out of memory
|
||||
+ if (buffer) {
|
||||
+ free(buffer);
|
||||
+ }
|
||||
+ return NULL;
|
||||
+ }
|
||||
+ buffer = new_buffer;
|
||||
+
|
||||
+ status = getpwnam_r(user, buffer,
|
||||
+ sizeof(struct passwd) + (char *) buffer,
|
||||
+ length, &result);
|
||||
+ if (!status && result) {
|
||||
+ status = pam_set_data(pamh, "_pammodutil_getpwnam", result,
|
||||
+ _pam_modutil_cleanup);
|
||||
+ if (status == PAM_SUCCESS) {
|
||||
+ return result;
|
||||
+ }
|
||||
+ // unable to set data item
|
||||
+ free(buffer);
|
||||
+ return NULL;
|
||||
+ }
|
||||
+ if (status != ERANGE) {
|
||||
+ // no matching record found (if status == 0)
|
||||
+ // or getpwnam_r encountered an error
|
||||
+ free(buffer);
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ length <<= 1;
|
||||
+ } while (length < PWD_ABSURD_PWD_LENGTH);
|
||||
+
|
||||
+ // exceeded maximum buffer size
|
||||
+ free(buffer);
|
||||
+ return NULL;
|
||||
+}
|
||||
+#else
|
||||
+typedef int make_iso_compilers_happy;
|
||||
+#endif /* HAVE_SECURITY_PAM_MODUTIL_H */
|
20
security/oath-toolkit/files/patch-pam__oath_pam__modutil.h
Normal file
20
security/oath-toolkit/files/patch-pam__oath_pam__modutil.h
Normal file
@ -0,0 +1,20 @@
|
||||
--- pam_oath/pam_modutil.h.orig 2022-01-31 11:03:40 UTC
|
||||
+++ pam_oath/pam_modutil.h
|
||||
@@ -0,0 +1,17 @@
|
||||
+#ifndef PAM_MODUTIL_H
|
||||
+#define PAM_MODUTIL_H
|
||||
+
|
||||
+#ifdef HAVE_SECURITY_PAM_MODUTIL_H
|
||||
+#include <security/pam_modutil.h>
|
||||
+#else
|
||||
+
|
||||
+#ifdef HAVE_SECURITY_PAM_MODULES_H
|
||||
+#include <security/pam_modules.h>
|
||||
+#endif
|
||||
+
|
||||
+#include <pwd.h>
|
||||
+
|
||||
+struct passwd *pam_modutil_getpwnam(pam_handle_t *pamh, const char *user);
|
||||
+
|
||||
+#endif
|
||||
+#endif
|
20
security/oath-toolkit/files/patch-pam__oath_pam__oath.c
Normal file
20
security/oath-toolkit/files/patch-pam__oath_pam__oath.c
Normal file
@ -0,0 +1,20 @@
|
||||
--- pam_oath/pam_oath.c.orig 2021-05-01 17:10:32 UTC
|
||||
+++ pam_oath/pam_oath.c
|
||||
@@ -21,6 +21,7 @@
|
||||
#include <config.h>
|
||||
|
||||
#include "oath.h"
|
||||
+#include "pam_modutil.h"
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
@@ -42,9 +43,6 @@
|
||||
|
||||
#ifdef HAVE_SECURITY_PAM_APPL_H
|
||||
#include <security/pam_appl.h>
|
||||
-#endif
|
||||
-#ifdef HAVE_SECURITY_PAM_MODUTIL_H
|
||||
-#include <security/pam_modutil.h>
|
||||
#endif
|
||||
#ifdef HAVE_SECURITY_PAM_MODULES_H
|
||||
#include <security/pam_modules.h>
|
@ -0,0 +1,11 @@
|
||||
--- pam_oath/tests/Makefile.in.orig 2022-01-31 12:02:54 UTC
|
||||
+++ pam_oath/tests/Makefile.in
|
||||
@@ -102,7 +102,7 @@ PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
-TESTS = test-pam_oath$(EXEEXT) $(am__append_1)
|
||||
+TESTS = $(am__append_1)
|
||||
@ROOT_TESTS_TRUE@am__append_1 = run-root-tests.sh
|
||||
subdir = tests
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
Loading…
Reference in New Issue
Block a user