[oath-toolkit] Initial import (#949324)

Jaroslav Škarvada jskarvad at fedoraproject.org
Wed Jun 5 21:56:01 UTC 2013


commit f755dfce64f5da882e1c432a852a1c9d4d68f988
Author: Jaroslav Škarvada <jskarvad at redhat.com>
Date:   Wed Jun 5 23:54:56 2013 +0200

    Initial import (#949324)

 .gitignore                       |    1 +
 oath-toolkit-2.0.2-man-fix.patch |   59 +++++++++++
 oath-toolkit.spec                |  202 ++++++++++++++++++++++++++++++++++++++
 sources                          |    1 +
 4 files changed, 263 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..19d30f2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/oath-toolkit-2.0.2.tar.gz
diff --git a/oath-toolkit-2.0.2-man-fix.patch b/oath-toolkit-2.0.2-man-fix.patch
new file mode 100644
index 0000000..9349065
--- /dev/null
+++ b/oath-toolkit-2.0.2-man-fix.patch
@@ -0,0 +1,59 @@
+diff --git a/libpskc/man/pskc_get_key_algparm_chall_max.3 b/libpskc/man/pskc_get_key_algparm_chall_max.3
+index 6ae79a3..2001320 100644
+--- a/libpskc/man/pskc_get_key_algparm_chall_max.3
++++ b/libpskc/man/pskc_get_key_algparm_chall_max.3
+@@ -15,8 +15,8 @@ output variable indicating whether data was provided or not.
+ Get the PSKC KeyPackage Key AlgorithmParameters ChallengeFormat Max
+ value.  This attribute defines the maximum size of the challenge
+ accepted by the device for CR mode and MUST be included.  If the
+-'Encoding' attribute is set to 'DECIMAL', 'HEXADECIMAL', or
+-'ALPHANUMERIC', this value indicates the maximum number of
++\&'Encoding' attribute is set to 'DECIMAL', 'HEXADECIMAL', or
++\&'ALPHANUMERIC', this value indicates the maximum number of
+ digits/characters.  If the 'Encoding' attribute is set to 'BASE64'
+ or 'BINARY', this value indicates the maximum number of bytes of
+ the unencoded value.
+diff --git a/libpskc/man/pskc_get_key_algparm_chall_min.3 b/libpskc/man/pskc_get_key_algparm_chall_min.3
+index 85009d6..6e51e52 100644
+--- a/libpskc/man/pskc_get_key_algparm_chall_min.3
++++ b/libpskc/man/pskc_get_key_algparm_chall_min.3
+@@ -15,8 +15,8 @@ output variable indicating whether data was provided or not.
+ Get the PSKC KeyPackage Key AlgorithmParameters ChallengeFormat Min
+ value.  This attribute defines the minimum size of the challenge
+ accepted by the device for CR mode and MUST be included.  If the
+-'Encoding' attribute is set to 'DECIMAL', 'HEXADECIMAL', or
+-'ALPHANUMERIC', this value indicates the minimum number of
++\&'Encoding' attribute is set to 'DECIMAL', 'HEXADECIMAL', or
++\&'ALPHANUMERIC', this value indicates the minimum number of
+ digits/characters.  If the 'Encoding' attribute is set to 'BASE64'
+ or 'BINARY', this value indicates the minimum number of bytes of
+ the unencoded value.
+diff --git a/libpskc/man/pskc_get_key_policy_pinmaxlength.3 b/libpskc/man/pskc_get_key_policy_pinmaxlength.3
+index be96a9a..d4ce51e 100644
+--- a/libpskc/man/pskc_get_key_policy_pinmaxlength.3
++++ b/libpskc/man/pskc_get_key_policy_pinmaxlength.3
+@@ -16,9 +16,9 @@ Get the PSKC KeyPackage Key Policy PINPolicy MaxLength value.  This
+ attribute indicates the maximum length of a PIN that can be set to
+ protect this key.  It MUST NOT be possible to set a PIN longer than
+ this value.  If the 'PINFormat' attribute is set to 'DECIMAL',
+-'HEXADECIMAL', or 'ALPHANUMERIC', this value indicates the number
++\&'HEXADECIMAL', or 'ALPHANUMERIC', this value indicates the number
+ of digits/ characters.  If the 'PINFormat' attribute is set to
+-'BASE64' or 'BINARY', this value indicates the number of bytes of
++\&'BASE64' or 'BINARY', this value indicates the number of bytes of
+ the unencoded value.
+ 
+ If \fIpresent\fP is non\-NULL, it will be 0 if the field is not present
+diff --git a/libpskc/man/pskc_get_key_policy_pinminlength.3 b/libpskc/man/pskc_get_key_policy_pinminlength.3
+index c00523d..a5efe53 100644
+--- a/libpskc/man/pskc_get_key_policy_pinminlength.3
++++ b/libpskc/man/pskc_get_key_policy_pinminlength.3
+@@ -16,7 +16,7 @@ Get the PSKC KeyPackage Key Policy PINPolicy MinLength value.  This
+ attribute indicates the minimum length of a PIN that can be set to
+ protect the associated key.  It MUST NOT be possible to set a PIN
+ shorter than this value.  If the 'PINFormat' attribute is set to
+-'DECIMAL', 'HEXADECIMAL', or 'ALPHANUMERIC', this value indicates
++\&'DECIMAL', 'HEXADECIMAL', or 'ALPHANUMERIC', this value indicates
+ the number of digits/ characters.  If the 'PINFormat' attribute is
+ set to 'BASE64' or 'BINARY', this value indicates the number of
+ bytes of the unencoded value.
diff --git a/oath-toolkit.spec b/oath-toolkit.spec
new file mode 100644
index 0000000..d51a18b
--- /dev/null
+++ b/oath-toolkit.spec
@@ -0,0 +1,202 @@
+Name:          oath-toolkit
+Version:       2.0.2
+Release:       3%{?dist}
+License:       GPLv3+
+Group:         System Environment/Libraries
+Summary:       One-time password components
+BuildRequires: xmlsec1-devel, pam-devel, gtk-doc, libtool, libtool-ltdl-devel
+Source:        http://download.savannah.gnu.org/releases/%{name}/%{name}-%{version}.tar.gz
+URL:           http://www.nongnu.org/oath-toolkit/
+# Escape leading single quotes in man pages which are misinterpreted as macros,
+# patch sent upstream, upstream ticket #108312
+Patch0:        oath-toolkit-2.0.2-man-fix.patch
+
+%description
+The OATH Toolkit provide components for building one-time password
+authentication systems. It contains shared libraries, command line tools and a
+PAM module. Supported technologies include the event-based HOTP algorithm
+(RFC4226) and the time-based TOTP algorithm (RFC6238). OATH stands for Open
+AuTHentication, which is the organization that specify the algorithms. For
+managing secret key files, the Portable Symmetric Key Container (PSKC) format
+described in RFC6030 is supported.
+
+%package -n liboath
+Summary:          Library for OATH handling
+Group:            Development/Libraries
+License:          LGPLv2+
+Requires(post):   /sbin/ldconfig
+Requires(postun): /sbin/ldconfig
+# https://fedorahosted.org/fpc/ticket/174
+Provides:         bundled(gnulib)
+
+%description -n liboath
+OATH stands for Open AuTHentication, which is the organization that
+specify the algorithms. Supported technologies include the event-based
+HOTP algorithm (RFC4226) and the time-based TOTP algorithm (RFC6238).
+
+%package -n liboath-devel
+Summary:  Development files for liboath
+Group:    Development/Libraries
+License:  LGPLv2+
+Requires: liboath%{?_isa} = %{version}-%{release}
+
+%description -n liboath-devel
+Development files for liboath.
+
+%package -n liboath-doc
+Summary:   Documentation files for liboath
+Group:     Development/Libraries
+License:   LGPLv2+
+Requires:  liboath = %{version}-%{release}
+Requires:  gtk-doc
+BuildArch: noarch
+
+%description -n liboath-doc
+Documentation files for liboath.
+
+%package -n libpskc
+Summary:          Library for PSKC handling
+Group:            Development/Libraries
+License:          LGPLv2+
+Requires:         xml-common
+Requires(post):   /sbin/ldconfig
+Requires(postun): /sbin/ldconfig
+# https://fedorahosted.org/fpc/ticket/174
+Provides:         bundled(gnulib)
+
+%description -n libpskc
+Library for managing secret key files, the Portable Symmetric Key
+Container (PSKC) format described in RFC6030 is supported.
+
+%package -n libpskc-devel
+Summary:  Development files for libpskc
+Group:    Development/Libraries
+License:  LGPLv2+
+Requires: libpskc%{?_isa} = %{version}-%{release}
+
+%description -n libpskc-devel
+Development files for libpskc.
+
+%package -n libpskc-doc
+Summary:   Documentation files for libpskc
+Group:     Development/Libraries
+License:   LGPLv2+
+Requires:  libpskc = %{version}-%{release}
+Requires:  gtk-doc
+BuildArch: noarch
+
+%description -n libpskc-doc
+Documentation files for libpskc.
+
+%package -n oathtool
+Summary:  A command line tool for generating and validating OTPs
+License:  GPLv3+
+# https://fedorahosted.org/fpc/ticket/174
+Provides: bundled(gnulib)
+
+%description -n oathtool
+A command line tool for generating and validating OTPs.
+
+%package -n pskctool
+Summary:  A command line tool for manipulating PSKC data
+# https://fedorahosted.org/fpc/ticket/174
+Provides: bundled(gnulib)
+
+%description -n pskctool
+A command line tool for manipulating PSKC data.
+
+%package -n pam_oath
+Summary:  A PAM module for pluggable login authentication for OATH
+Group:    Development/Libraries
+Requires: pam
+
+%description -n pam_oath
+A PAM module for pluggable login authentication for OATH.
+
+%prep
+%setup -q
+%patch0 -p1 -b .man-fix
+
+%build
+%configure --with-pam-dir=%{_libdir}/security
+
+# Kill rpaths and link with --as-needed
+for d in liboath libpskc oathtool pam_oath pskctool
+do
+  sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' $d/libtool
+  sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' $d/libtool
+  sed -i 's| -shared | -Wl,--as-needed\0|g' $d/libtool
+done
+
+make %{?_smp_mflags}
+
+%install
+make %{?_smp_mflags} DESTDIR=%{buildroot} install
+
+# Remove static objects and libtool files
+rm -f %{buildroot}%{_libdir}/*.{a,la}
+rm -f %{buildroot}%{_libdir}/security/*.la
+
+# Make /etc/liboath directory
+mkdir -p -m 0600 %{buildroot}%{_sysconfdir}/liboath
+
+%post -n liboath -p /sbin/ldconfig
+
+%postun -n liboath -p /sbin/ldconfig
+
+%post -n libpskc -p /sbin/ldconfig
+
+%postun -n libpskc -p /sbin/ldconfig
+
+%files -n liboath
+%doc liboath/COPYING
+%attr(0600, root, root) %dir %{_sysconfdir}/liboath
+%{_libdir}/liboath.so.*
+
+%files -n liboath-devel
+%{_includedir}/liboath
+%{_libdir}/liboath.so
+%{_libdir}/pkgconfig/liboath.pc
+
+%files -n liboath-doc
+%{_mandir}/man3/oath*
+%{_datadir}/gtk-doc/html/liboath/*
+
+%files -n libpskc
+%doc libpskc/README
+%{_libdir}/libpskc.so.*
+%{_datadir}/xml/pskc
+
+%files -n libpskc-devel
+%{_includedir}/pskc
+%{_libdir}/libpskc.so
+%{_libdir}/pkgconfig/libpskc.pc
+
+%files -n libpskc-doc
+%{_mandir}/man3/pskc*
+%{_datadir}/gtk-doc/html/libpskc/*
+
+%files -n oathtool
+%doc oathtool/COPYING
+%{_bindir}/oathtool
+%{_mandir}/man1/oathtool.*
+
+%files -n pskctool
+%{_bindir}/pskctool
+%{_mandir}/man1/pskctool.*
+
+%files -n pam_oath
+%doc pam_oath/README pam_oath/COPYING
+%{_libdir}/security/pam_oath.so
+
+%changelog
+* Wed Jun  5 2013 Jaroslav Škarvada <jskarvad at redhat.com> - 2.0.2-3
+- Fixed requirements according to reviewer comments
+- Linked with --as-needed
+- Fixed man pages (by man-fix patch)
+
+* Mon Apr  8 2013 Jaroslav Škarvada <jskarvad at redhat.com> - 2.0.2-2
+- Added /etc/liboath directory to hold configuration / user lists
+
+* Sun Apr 07 2013 Jaroslav Škarvada <jskarvad at redhat.com> - 2.0.2-1
+- Initial version
diff --git a/sources b/sources
index e69de29..a5e2156 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+35232dfcaf0e77377f926d561fe5086d  oath-toolkit-2.0.2.tar.gz


More information about the scm-commits mailing list