summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Levy <alevy@redhat.com>2011-01-08 10:29:04 +0200
committerAlon Levy <alevy@redhat.com>2011-01-08 14:44:27 +0200
commit244804c976f5c89864c6e93322855c52408c4e0e (patch)
tree28ab9b5655bfd11e3b37e245273cb16bad1138a7
parent5244989a06583a7d4f8729835a2171ed80fee6e8 (diff)
vcard_emul,vcard_emul_nss: add vcard_emul_replay_insertion_events
-rw-r--r--vcard_emul.h1
-rw-r--r--vcard_emul_nss.c18
2 files changed, 19 insertions, 0 deletions
diff --git a/vcard_emul.h b/vcard_emul.h
index 749267a..1df1215 100644
--- a/vcard_emul.h
+++ b/vcard_emul.h
@@ -55,5 +55,6 @@ VCardEmulError vcard_emul_force_card_remove(VReader *vreader);
VCardEmulOptions *vcard_emul_options(const char *args);
VCardEmulError vcard_emul_init(const VCardEmulOptions *options);
+void vcard_emul_replay_insertion_events(void);
void vcard_emul_usage(void);
#endif
diff --git a/vcard_emul_nss.c b/vcard_emul_nss.c
index 5b7f9a2..aea487c 100644
--- a/vcard_emul_nss.c
+++ b/vcard_emul_nss.c
@@ -895,6 +895,24 @@ vcard_emul_init(const VCardEmulOptions *options)
return VCARD_EMUL_OK;
}
+/* Recreate card insert events for all readers (user should
+ * deduce implied reader insert. perhaps do a reader insert as well?)
+ */
+void
+vcard_emul_replay_insertion_events(void)
+{
+ VReaderListEntry *current_entry;
+ VReaderListEntry *next_entry = NULL;
+ VReaderList *list = vreader_get_reader_list();
+
+ for (current_entry= vreader_list_get_first(list); current_entry;
+ current_entry=next_entry) {
+ VReader *vreader = vreader_list_get_reader(current_entry);
+ next_entry = vreader_list_get_next(current_entry);
+ vreader_queue_card_event(vreader);
+ }
+}
+
/*
* Silly little functions to help parsing our argument string
*/