1
0
mirror of git://git.gnupg.org/gnupg.git synced 2024-12-22 10:19:57 +01:00
gnupg/scd/NOTES-STATUSFD
Moritz Schulte 62039d815e Implemented the STATUSFD mechanism.
2007-08-16  Moritz Schulte  <moritz@g10code.com>

	* command.c: Include "statusfd.h".
	(cmd_statusfd): New function.
	(register_commands): New entry for STATUSFD command.
	(update_reader_status_file): Call statusfd_event_card_inserted and
	statusfd_event_card_removed on events.
	(scd_command_handler): Pass flags=3 to
	assuan_init_socket_server_ext (enabling fd passing).
	* statusfd.c, statusfd.h: New files.
	* Makefile.am (scdaemon_SOURCES): Added statusfd.c, statusfd.h.
	* NOTES-STATUSFD: New file.
2007-08-16 12:44:17 +00:00

37 lines
855 B
Plaintext

Description of the statusfd mechanism:
Applications can now ask scdaemon to be notified about certain events
(card inserted/removed) on a specified file descriptor.
This is how it works:
Run gpg-agent in daemon mode.
Figure out scdaemons socket:
moritz@pink:~/g10/hacks/gnupg-mo/build/scd$ gpg-connect-agent
SCD GETINFO socket_name
D /tmp/gpg-QZRVNr/S.scdaemon
OK
Connect to scdaemon and register a status file descriptor:
moritz@pink:~/g10/hacks/gnupg-mo/build/scd$ gpg-connect-agent -S /tmp/gpg-QZRVNr/S.scdaemon
/sendfd /tmp/scd-events w
STATUSFD
OK
moritz@pink:~/g10/hacks/gnupg-mo/build/scd$
Watch the log file as you remove/insert the smartcard:
moritz@pink:~/g10/hacks/gnupg-mo/build/scd$ tail -f /tmp/scd-events
CARD REMOVED
CARD INSERTED
CARD REMOVED
CARD INSERTED
^C
moritz@pink:~/g10/hacks/gnupg-mo/build/scd$
That's it for now.