summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Bar-Lev <alonbl@gentoo.org>2018-09-15 11:28:04 +0300
committerAlon Bar-Lev <alonbl@gentoo.org>2018-09-15 11:28:49 +0300
commit1ea198753e1e74d6627ef6412abb2990a851426b (patch)
treebd117fdbde28692f80bf9887b83d27ad40ba8216
parentsys-kernel/linux-firmware: drop old (diff)
downloadgentoo-1ea198753e1e74d6627ef6412abb2990a851426b.tar.gz
gentoo-1ea198753e1e74d6627ef6412abb2990a851426b.tar.bz2
gentoo-1ea198753e1e74d6627ef6412abb2990a851426b.zip
dev-libs/opensc: fix implicit invocation
fix implicit test, add missing upstream include. add notify USE. Closes: https://bugs.gentoo.org/show_bug.cgi?id=666268 Thanks: Toralf Förster Package-Manager: Portage-2.3.40, Repoman-2.3.9
-rw-r--r--dev-libs/opensc/files/opensc-0.19.0-p11test_common.h.patch108
-rw-r--r--dev-libs/opensc/metadata.xml3
-rw-r--r--dev-libs/opensc/opensc-0.19.0-r1.ebuild (renamed from dev-libs/opensc/opensc-0.19.0.ebuild)25
3 files changed, 127 insertions, 9 deletions
diff --git a/dev-libs/opensc/files/opensc-0.19.0-p11test_common.h.patch b/dev-libs/opensc/files/opensc-0.19.0-p11test_common.h.patch
new file mode 100644
index 000000000000..ca27c70245d7
--- /dev/null
+++ b/dev-libs/opensc/files/opensc-0.19.0-p11test_common.h.patch
@@ -0,0 +1,108 @@
+From d1e4f4879b8d0a7423afc1c9a3632da4763ee31c Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sat, 15 Sep 2018 11:04:13 +0300
+Subject: [PATCH] missing include
+
+---
+ src/tests/p11test/p11test_common.h | 89 ++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 89 insertions(+)
+ create mode 100644 src/tests/p11test/p11test_common.h
+
+diff --git a/src/tests/p11test/p11test_common.h b/src/tests/p11test/p11test_common.h
+new file mode 100644
+index 0000000..d3ca304
+--- /dev/null
++++ b/src/tests/p11test/p11test_common.h
+@@ -0,0 +1,89 @@
++/*
++ * p11test_common.h: Test suite shared declarations for PKCS#11 API
++ *
++ * Copyright (C) 2016 Martin Strhársky <strharsky.martin@gmail.com>
++ * Copyright (C) 2016, 2017 Red Hat, Inc.
++ *
++ * Author: Jakub Jelen <jjelen@redhat.com>
++ *
++ * This library is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU Lesser General Public
++ * License as published by the Free Software Foundation; either
++ * version 2.1 of the License, or (at your option) any later version.
++ *
++ * This library is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program. If not, see <http://www.gnu.org/licenses/>.
++ */
++
++#ifndef P11TEST_COMMON_H
++#define P11TEST_COMMON_H
++#include "config.h"
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++#include <setjmp.h>
++#include <cmocka.h>
++#include "pkcs11/pkcs11.h"
++#include "libopensc/sc-ossl-compat.h"
++
++#define MAX_MECHS 200
++
++#ifndef NDEBUG
++ #define debug_print(fmt, ...) \
++ { fprintf(stderr, fmt "\n", ##__VA_ARGS__); } while (0)
++#else
++ #define debug_print(fmt, ...)
++#endif
++
++#define FLAGS_SIGN 0x01
++#define FLAGS_SIGN_OPENSSL 0x02
++#define FLAGS_SIGN_ANY ( FLAGS_SIGN | FLAGS_SIGN_OPENSSL )
++#define FLAGS_DECRYPT 0x04
++#define FLAGS_DECRYPT_OPENSSL 0x08
++#define FLAGS_DECRYPT_ANY ( FLAGS_DECRYPT | FLAGS_DECRYPT_OPENSSL )
++
++typedef struct {
++ char *outfile;
++ FILE *fd;
++ int in_test;
++ int first;
++ int in_data;
++ int first_data;
++} log_context_t;
++
++typedef struct {
++ CK_MECHANISM_TYPE mech;
++ CK_MECHANISM_TYPE hash;
++ CK_RSA_PKCS_MGF_TYPE mgf;
++ int salt;
++ int usage_flags;
++ int result_flags;
++} test_mech_t;
++
++typedef struct {
++ CK_FUNCTION_LIST_PTR function_pointer;
++ CK_SLOT_ID slot_id;
++ CK_SESSION_HANDLE session_handle;
++ CK_UTF8CHAR* pin;
++ size_t pin_length;
++ char *library_path;
++ unsigned int interactive;
++ log_context_t log;
++
++ test_mech_t rsa_mechs[MAX_MECHS];
++ size_t num_rsa_mechs;
++ test_mech_t ec_mechs[MAX_MECHS];
++ size_t num_ec_mechs;
++ test_mech_t keygen_mechs[MAX_MECHS];
++ size_t num_keygen_mechs;
++} token_info_t;
++
++token_info_t token;
++
++#endif /* P11TEST_COMMON_H */
++
+--
+2.16.4
+
diff --git a/dev-libs/opensc/metadata.xml b/dev-libs/opensc/metadata.xml
index 52bf7f8f7bb9..7c8bf05b0e80 100644
--- a/dev-libs/opensc/metadata.xml
+++ b/dev-libs/opensc/metadata.xml
@@ -16,8 +16,9 @@
card.
</longdescription>
<use>
- <flag name="openct">Use <pkg>dev-libs/openct</pkg> (and CT-API) for accessing Smartcard hardware</flag>
<flag name="ctapi">Use CT-API for accessing Smartcard hardware</flag>
+ <flag name="notify">Enable notifications</flag>
+ <flag name="openct">Use <pkg>dev-libs/openct</pkg> (and CT-API) for accessing Smartcard hardware</flag>
<flag name="pcsc-lite">Use <pkg>sys-apps/pcsc-lite</pkg> (and PC/SC API) for accessing Smartcard hardware</flag>
<flag name="secure-messaging">Enable secure messaging</flag>
</use>
diff --git a/dev-libs/opensc/opensc-0.19.0.ebuild b/dev-libs/opensc/opensc-0.19.0-r1.ebuild
index ed42b0d921d2..10b9ad5a8db7 100644
--- a/dev-libs/opensc/opensc-0.19.0.ebuild
+++ b/dev-libs/opensc/opensc-0.19.0-r1.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://github.com/OpenSC/OpenSC/releases/download/${PV}/${P}.tar.gz"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-IUSE="doc +pcsc-lite secure-messaging openct ctapi readline libressl ssl zlib"
+IUSE="ctapi doc libressl openct notify +pcsc-lite readline secure-messaging ssl test zlib"
RDEPEND="zlib? ( sys-libs/zlib )
readline? ( sys-libs/readline:0= )
@@ -21,11 +21,13 @@ RDEPEND="zlib? ( sys-libs/zlib )
libressl? ( >=dev-libs/libressl-2.7.0:0= )
)
openct? ( >=dev-libs/openct-0.5.0 )
- pcsc-lite? ( >=sys-apps/pcsc-lite-1.3.0 )"
+ pcsc-lite? ( >=sys-apps/pcsc-lite-1.3.0 )
+ notify? ( dev-libs/glib:2= )"
DEPEND="${RDEPEND}
virtual/pkgconfig
app-text/docbook-xsl-stylesheets
- dev-libs/libxslt"
+ dev-libs/libxslt
+ test? ( dev-util/cmocka )"
REQUIRED_USE="
pcsc-lite? ( !openct !ctapi )
@@ -33,19 +35,26 @@ REQUIRED_USE="
ctapi? ( !pcsc-lite !openct )
|| ( pcsc-lite openct ctapi )"
+PATCHES=(
+ "${FILESDIR}/${P}-p11test_common.h.patch"
+)
+
src_configure() {
econf \
- --disable-static \
--disable-openpace \
+ --disable-static \
+ --enable-man \
+ $(use_enable ctapi) \
$(use_enable doc) \
+ $(use_enable notify ) \
+ $(use_enable openct) \
$(use_enable openct) \
+ $(use_enable pcsc-lite pcsc) \
$(use_enable readline) \
- $(use_enable zlib) \
$(use_enable secure-messaging sm) \
$(use_enable ssl openssl) \
- $(use_enable pcsc-lite pcsc) \
- $(use_enable openct) \
- $(use_enable ctapi)
+ $(use_enable test tests) \
+ $(use_enable zlib)
}
src_install() {