[pkg-opensc-commit] [opensc] 191/295: card-npa: moved to internal card drivers
Eric Dorland
eric at moszumanska.debian.org
Sat Jun 24 21:11:30 UTC 2017
This is an automated email from the git hooks/post-receive script.
eric pushed a commit to branch master
in repository opensc.
commit 45a7ea9737075b5901fe7a5d65ed898733140315
Author: Frank Morgner <frankmorgner at gmail.com>
Date: Wed Nov 16 11:15:22 2016 +0100
card-npa: moved to internal card drivers
---
etc/opensc.conf.in | 3 ---
src/libopensc/Makefile.am | 17 ++++-------------
src/libopensc/Makefile.mak | 17 ++++-------------
src/libopensc/card-npa.c | 20 +-------------------
src/libopensc/card-npa.h | 12 +-----------
src/libopensc/cardnpa.exports | 2 --
src/libopensc/cards.h | 6 ++++++
src/libopensc/ctx.c | 1 +
win32/OpenSC.wxs.in | 5 -----
9 files changed, 17 insertions(+), 66 deletions(-)
diff --git a/etc/opensc.conf.in b/etc/opensc.conf.in
index 5419b44..237c128 100644
--- a/etc/opensc.conf.in
+++ b/etc/opensc.conf.in
@@ -152,9 +152,6 @@ app default {
# }
card_driver npa {
- # The location of the driver library
- module = @LIBDIR@@LIB_PRE at cardnpa@DYN_LIB_EXT@;
-
# German ID card requires the CAN to be verified before QES PIN. This,
# however, is not part of the PKCS#15 profile of the card. So for
# verifying the QES PIN we actually need both. The CAN may be given
diff --git a/src/libopensc/Makefile.am b/src/libopensc/Makefile.am
index 9cd44da..ec49ff4 100644
--- a/src/libopensc/Makefile.am
+++ b/src/libopensc/Makefile.am
@@ -4,7 +4,7 @@ MAINTAINERCLEANFILES = $(srcdir)/Makefile.in
EXTRA_DIST = Makefile.mak
-lib_LTLIBRARIES = libopensc.la libcardnpa.la
+lib_LTLIBRARIES = libopensc.la
noinst_HEADERS = cards.h ctbcs.h internal.h esteid.h muscle.h muscle-filesystem.h \
internal-winscard.h p15card-helper.h pkcs15-syn.h \
opensc.h pkcs15.h \
@@ -16,7 +16,7 @@ noinst_HEADERS = cards.h ctbcs.h internal.h esteid.h muscle.h muscle-filesystem.
AM_CPPFLAGS = -DOPENSC_CONF_PATH=\"$(sysconfdir)/opensc.conf\" \
-I$(top_srcdir)/src
-AM_CFLAGS = $(OPTIONAL_OPENSSL_CFLAGS) $(OPTIONAL_OPENCT_CFLAGS) \
+AM_CFLAGS = $(OPENPACE_CFLAGS) $(OPTIONAL_OPENSSL_CFLAGS) $(OPTIONAL_OPENCT_CFLAGS) \
$(OPTIONAL_PCSC_CFLAGS) $(OPTIONAL_ZLIB_CFLAGS)
libopensc_la_SOURCES = \
@@ -44,6 +44,7 @@ libopensc_la_SOURCES = \
card-iasecc.c iasecc-sdo.c iasecc-sm.c card-sc-hsm.c \
card-dnie.c cwa14890.c cwa-dnie.c \
card-isoApplet.c card-masktech.c card-gids.c card-jpki.c \
+ card-npa.c \
\
pkcs15-openpgp.c pkcs15-infocamere.c pkcs15-starcert.c \
pkcs15-tcos.c pkcs15-esteid.c pkcs15-postecert.c pkcs15-gemsafeGPK.c \
@@ -58,7 +59,7 @@ libopensc_la_SOURCES = \
if WIN32
libopensc_la_SOURCES += $(top_builddir)/win32/versioninfo.rc
endif
-libopensc_la_LIBADD = $(OPTIONAL_OPENSSL_LIBS) $(OPTIONAL_OPENCT_LIBS) \
+libopensc_la_LIBADD = $(OPENPACE_LIBS) $(OPTIONAL_OPENSSL_LIBS) $(OPTIONAL_OPENCT_LIBS) \
$(OPTIONAL_ZLIB_LIBS) \
$(top_builddir)/src/pkcs15init/libpkcs15init.la \
$(top_builddir)/src/scconf/libscconf.la \
@@ -73,16 +74,6 @@ libopensc_la_LDFLAGS = $(AM_LDFLAGS) \
-export-symbols "$(srcdir)/libopensc.exports" \
-no-undefined
-libcardnpa_la_SOURCES = card-npa.c cardnpa.exports
-libcardnpa_la_LIBADD = $(OPENPACE_LIBS) \
- $(top_builddir)/src/common/libcompat.la \
- libopensc.la
-libcardnpa_la_CFLAGS = -I$(top_srcdir)/src $(OPENPACE_CFLAGS) $(OPENSSL_CFLAGS)
-libcardnpa_la_LDFLAGS = $(AM_LDFLAGS) \
- -version-info @OPENSC_LT_CURRENT@:@OPENSC_LT_REVISION@:@OPENSC_LT_AGE@ \
- -export-symbols "$(srcdir)/cardnpa.exports" \
- -no-undefined
-
if WIN32
# def file required for MS users to build library
mylibdir=$(libdir)
diff --git a/src/libopensc/Makefile.mak b/src/libopensc/Makefile.mak
index a2431d3..4059536 100644
--- a/src/libopensc/Makefile.mak
+++ b/src/libopensc/Makefile.mak
@@ -27,6 +27,7 @@ OBJECTS = \
card-iasecc.obj iasecc-sdo.obj iasecc-sm.obj cwa-dnie.obj cwa14890.obj \
card-sc-hsm.obj card-dnie.obj card-isoApplet.obj pkcs15-coolkey.obj \
card-masktech.obj card-gids.obj card-jpki.obj \
+ card-npa.obj \
\
pkcs15-openpgp.obj pkcs15-infocamere.obj pkcs15-starcert.obj \
pkcs15-tcos.obj pkcs15-esteid.obj pkcs15-postecert.obj pkcs15-gemsafeGPK.obj \
@@ -43,10 +44,7 @@ LIBS = $(TOPDIR)\src\scconf\scconf.lib \
$(TOPDIR)\src\sm\libsmeac.lib \
$(TOPDIR)\src\pkcs15init\pkcs15init.lib
-TARGET1 = cardnpa.dll
-OBJECTS1 = card-npa.obj
-
-all: $(TOPDIR)\win32\versioninfo.res $(TARGET) $(TARGET1)
+all: $(TOPDIR)\win32\versioninfo.res $(TARGET)
!INCLUDE $(TOPDIR)\win32\Make.rules.mak
@@ -54,15 +52,8 @@ opensc.dll: $(OBJECTS) $(LIBS)
echo LIBRARY $* > $*.def
echo EXPORTS >> $*.def
type lib$*.exports >> $*.def
- link $(LINKFLAGS) /dll /def:$*.def /implib:$*.lib /out:opensc.dll $(OBJECTS) $(LIBS) $(OPENSSL_LIB) $(ZLIB_LIB) gdi32.lib advapi32.lib ws2_32.lib
+ link $(LINKFLAGS) /dll /def:$*.def /implib:$*.lib /out:opensc.dll $(OBJECTS) $(LIBS) $(OPENPACE_LIB) $(OPENSSL_LIB) $(ZLIB_LIB) gdi32.lib advapi32.lib ws2_32.lib
if EXIST opensc.dll.manifest mt -manifest opensc.dll.manifest -outputresource:opensc.dll;2
opensc_a.lib: $(OBJECTS) $(LIBS)
- lib $(LIBFLAGS) /out:opensc_a.lib $(OBJECTS) $(LIBS) $(OPENSSL_LIB) $(ZLIB_LIB) user32.lib advapi32.lib ws2_32.lib
-
-$(TARGET1): $(OBJECTS1) opensc_a.lib
- echo LIBRARY $* > $*.def
- echo EXPORTS >> $*.def
- type $*.exports >> $*.def
- link /dll $(LINKFLAGS) /def:$*.def /implib:$*.lib /out:$(TARGET1) $(OBJECTS1) opensc_a.lib $(ZLIB_LIB) $(OPENPACE_LIB) $(OPENSSL_LIB) ws2_32.lib gdi32.lib advapi32.lib Crypt32.lib User32.lib
- if EXIST $(TARGET).manifest mt -manifest $(TARGET1).manifest -outputresource:$(TARGET1);2
+ lib $(LIBFLAGS) /out:opensc_a.lib $(OBJECTS) $(LIBS) $(OPENPACE_LIB) $(OPENSSL_LIB) $(ZLIB_LIB) user32.lib advapi32.lib ws2_32.lib
diff --git a/src/libopensc/card-npa.c b/src/libopensc/card-npa.c
index b39a487..8a2ac42 100644
--- a/src/libopensc/card-npa.c
+++ b/src/libopensc/card-npa.c
@@ -690,7 +690,7 @@ static int npa_logout(sc_card_t *card)
return sc_select_file(card, sc_get_mf_path(), NULL);
}
-static struct sc_card_driver *npa_get_driver(void)
+struct sc_card_driver *sc_get_npa_driver(void)
{
struct sc_card_driver *iso_drv = sc_get_iso7816_driver();
@@ -704,21 +704,3 @@ static struct sc_card_driver *npa_get_driver(void)
return &npa_drv;
}
-
-void *sc_module_init(const char *name)
-{
- const char npa_name[] = "npa";
- if (name) {
- if (strcmp(npa_name, name) == 0)
- return npa_get_driver;
- }
- return NULL;
-}
-
-const char *sc_driver_version(void)
-{
- /* Tested with OpenSC 0.12 and 0.13.0, which can't be captured by checking
- * our version info against OpenSC's PACKAGE_VERSION. For this reason we
- * tell OpenSC that everything is fine, here. */
- return sc_get_version();
-}
diff --git a/src/libopensc/card-npa.h b/src/libopensc/card-npa.h
index 8cb482e..eca8516 100644
--- a/src/libopensc/card-npa.h
+++ b/src/libopensc/card-npa.h
@@ -25,23 +25,13 @@
extern "C" {
#endif
-#include "libopensc/opensc.h"
-
-enum {
- SC_CARD_TYPE_NPA = 42000,
- SC_CARD_TYPE_NPA_TEST,
- SC_CARD_TYPE_NPA_ONLINE,
-};
-
const unsigned char esign_chat[] = {
0x7F, 0x4C, 0x0E,
0x06, 0x09, 0x04, 0x00, 0x7F, 0x00, 0x07, 0x03, 0x01, 0x02, 0x03,
0x53, 0x01, 0x03,
};
-static const unsigned char df_esign_aid[] = { 0xa0, 0x00, 0x00, 0x01, 0x67, 0x45, 0x53, 0x49, 0x47, 0x4e};
-static const unsigned char df_esign_path[] = { 0x3f, 0x00, 0x50, 0x15, 0x1f, 0xff};
-static const unsigned char ef_cardaccess_path[] = { 0x3f, 0x00, 0x01, 0x1c};
+const unsigned char df_esign_aid[] = { 0xa0, 0x00, 0x00, 0x01, 0x67, 0x45, 0x53, 0x49, 0x47, 0x4e};
#ifdef __cplusplus
}
diff --git a/src/libopensc/cardnpa.exports b/src/libopensc/cardnpa.exports
deleted file mode 100644
index 52cec04..0000000
--- a/src/libopensc/cardnpa.exports
+++ /dev/null
@@ -1,2 +0,0 @@
-sc_driver_version
-sc_module_init
diff --git a/src/libopensc/cards.h b/src/libopensc/cards.h
index d71c02f..d9f5cbb 100644
--- a/src/libopensc/cards.h
+++ b/src/libopensc/cards.h
@@ -236,6 +236,11 @@ enum {
SC_CARD_TYPE_CAC_GENERIC,
SC_CARD_TYPE_CAC_I,
SC_CARD_TYPE_CAC_II,
+
+ /* nPA cards */
+ SC_CARD_TYPE_NPA = 34000,
+ SC_CARD_TYPE_NPA_TEST,
+ SC_CARD_TYPE_NPA_ONLINE,
};
extern sc_card_driver_t *sc_get_default_driver(void);
@@ -277,6 +282,7 @@ extern sc_card_driver_t *sc_get_gids_driver(void);
extern sc_card_driver_t *sc_get_jpki_driver(void);
extern sc_card_driver_t *sc_get_coolkey_driver(void);
extern sc_card_driver_t *sc_get_cac_driver(void);
+extern sc_card_driver_t *sc_get_npa_driver(void);
#ifdef __cplusplus
}
diff --git a/src/libopensc/ctx.c b/src/libopensc/ctx.c
index 9f296b6..54155b4 100644
--- a/src/libopensc/ctx.c
+++ b/src/libopensc/ctx.c
@@ -120,6 +120,7 @@ static const struct _sc_driver_entry internal_card_drivers[] = {
{ "openpgp", (void *(*)(void)) sc_get_openpgp_driver },
{ "jpki", (void *(*)(void)) sc_get_jpki_driver },
{ "coolkey", (void *(*)(void)) sc_get_coolkey_driver },
+ { "npa", (void *(*)(void)) sc_get_npa_driver },
/* The default driver should be last, as it handles all the
* unrecognized cards. */
{ "default", (void *(*)(void)) sc_get_default_driver },
diff --git a/win32/OpenSC.wxs.in b/win32/OpenSC.wxs.in
index bdab84a..044ff69 100644
--- a/win32/OpenSC.wxs.in
+++ b/win32/OpenSC.wxs.in
@@ -62,9 +62,6 @@
<Directory Id="TARGETDIR" Name="SourceDir">
<!-- Install critical DLL-s to system folder. NB! Id-s can not contain "-" characters! -->
<Directory Id="$(var.PlatformSystemFolder)" Name=".">
- <Component Id="cardnpa.dll" Guid="*" Win64="$(var.Win64YesNo)">
- <File Source="$(var.SOURCE_DIR)\src\libopensc\cardnpa.dll" Vital="yes"/>
- </Component>
<Component Id="opensc_pkcs11.dll" Guid="*" Win64="$(var.Win64YesNo)">
<File Source="$(var.SOURCE_DIR)\src\pkcs11\opensc-pkcs11.dll" Vital="yes"/>
</Component>
@@ -302,7 +299,6 @@
<Feature Id="Complete" Level="1" Title="OpenSC software suite" Display="expand">
<Feature Id="OpenSC_core" Level="1" Title="OpenSC core library" Description="Core DLL and configuration file used by all other components." Absent="disallow">
<ComponentRef Id="opensc.dll"/>
- <ComponentRef Id="cardnpa.dll"/>
<?ifdef zlib ?>
<ComponentRef Id="zlib1.dll"/>
<?endif ?>
@@ -312,7 +308,6 @@
<?endif ?>
</Feature>
<Feature Id="OpenSC_pkcs11" Level="1" Title="OpenSC PKCS#11 module" Description="PKCS#11 module usd by most open source and cross-platform software (like Firefox, Putty, TrueCrypt, OpenVPN etc)" TypicalDefault="install">
- <ComponentRef Id="cardnpa.dll"/>
<ComponentRef Id="opensc_pkcs11.dll"/>
<ComponentRef Id="onepin_opensc_pkcs11.dll"/>
</Feature>
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-opensc/opensc.git
More information about the pkg-opensc-commit
mailing list