summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJakub Jelen <jjelen@redhat.com>2020-03-06 14:40:03 +0100
committerFrediano Ziglio <freddy77@gmail.com>2020-04-17 08:59:04 +0100
commit177d55dfcc373b3c466fba26b3930c7a3ec38cd1 (patch)
tree9cff1eaf3ef76d62cfcfebc84c4174ba8d57b494 /src
parentfd2e0949a2fbb94f761218c2268761a9c7386501 (diff)
Introduce new API for cleanup
Signed-off-by: Jakub Jelen <jjelen@redhat.com> Acked-by: Frediano Ziglio <fziglio@redhat.com>
Diffstat (limited to 'src')
-rw-r--r--src/libcacard.map1
-rw-r--r--src/vcard_emul.h1
-rw-r--r--src/vcard_emul_nss.c14
3 files changed, 16 insertions, 0 deletions
diff --git a/src/libcacard.map b/src/libcacard.map
index 10230f9..939f098 100644
--- a/src/libcacard.map
+++ b/src/libcacard.map
@@ -22,6 +22,7 @@
vcard_emul_type_from_string;
vcard_emul_type_select;
vcard_emul_usage;
+ vcard_emul_finalize;
vcard_find_applet;
vcard_free;
vcard_get_atr;
diff --git a/src/vcard_emul.h b/src/vcard_emul.h
index 55bf720..8853f54 100644
--- a/src/vcard_emul.h
+++ b/src/vcard_emul.h
@@ -63,6 +63,7 @@ VCardEmulError vcard_emul_force_card_remove(VReader *vreader);
VCardEmulOptions *vcard_emul_options(const char *args);
VCardEmulError vcard_emul_init(const VCardEmulOptions *options);
+VCardEmulError vcard_emul_finalize(void);
void vcard_emul_replay_insertion_events(void);
void vcard_emul_usage(void);
diff --git a/src/vcard_emul_nss.c b/src/vcard_emul_nss.c
index f5783c3..f2bc8cf 100644
--- a/src/vcard_emul_nss.c
+++ b/src/vcard_emul_nss.c
@@ -1167,6 +1167,20 @@ vcard_emul_replay_insertion_events(void)
vreader_list_delete(list);
}
+VCardEmulError
+vcard_emul_finalize(void)
+{
+ SECStatus rv;
+
+ rv = NSS_Shutdown();
+ if (rv != SECSuccess) {
+ g_debug("%s: NSS_Shutdown failed.", __func__);
+ return VCARD_EMUL_FAIL;
+ }
+
+ return VCARD_EMUL_OK;
+}
+
/*
* Silly little functions to help parsing our argument string
*/