* scdaemon.c (main): Do the last change the usual way. This is so
[gnupg.git] / scd / scdaemon.h
index 20e2fa7..1dd32ae 100644 (file)
 #include "../common/util.h"
 #include "../common/errors.h"
 
-/* Convenience funcion to be used instead of returning the old
-   GNUPG_Out_Of_Core. */
-static __inline__ gpg_error_t
-out_of_core (void)
-{
-  return gpg_error (gpg_err_code_from_errno (errno));
-}
-
 
 #define MAX_DIGEST_LEN 24 
 
@@ -54,7 +46,12 @@ struct {
   int batch;        /* batch mode */
   const char *homedir; /* configuration directory name */
   const char *ctapi_driver; /* Library to access the ctAPI. */
-  int disable_opensc;  /* Disable the sue of the OpenSC framework. */
+  const char *pcsc_driver;  /* Library to access the PC/SC system. */
+  const char *reader_port;  /* NULL or reder port to use. */
+  int disable_opensc;  /* Disable the use of the OpenSC framework. */
+  int disable_ccid;    /* Disable the use of the internal CCID driver. */
+  int allow_admin;     /* Allow the use of admin commands for certain
+                          cards. */
 } opt;
 
 
@@ -82,6 +79,7 @@ struct app_ctx_s;
 
 struct server_control_s {
   struct server_local_s *server_local;
+  int reader_slot;  /* Slot of the open reader or -1 if not open. */
   struct card_ctx_s *card_ctx;
   struct app_ctx_s *app_ctx;
   struct {
@@ -92,8 +90,10 @@ struct server_control_s {
 };
 
 typedef struct server_control_s *CTRL;
+typedef struct server_control_s *ctrl_t;
 typedef struct card_ctx_s *CARD;
 typedef struct app_ctx_s *APP;
+typedef struct app_ctx_s *app_t;
 
 /*-- scdaemon.c --*/
 void scd_exit (int rc);
@@ -102,6 +102,7 @@ void scd_init_default_ctrl (CTRL ctrl);
 /*-- command.c --*/
 void scd_command_handler (int);
 void send_status_info (CTRL ctrl, const char *keyword, ...);
+void scd_update_reader_status_file (void);
 
 /*-- card.c --*/
 int card_open (CARD *rcard);