mirror of
git://git.gnupg.org/gnupg.git
synced 2025-05-24 16:43:28 +02:00
scd: Add the "undefined" stub application.
* scd/app.c (select_application): Implement the "undefined" application.
This commit is contained in:
parent
45cf9de341
commit
dcd64131c6
@ -181,6 +181,8 @@ write hashed data to files named @code{dbgmd-000*}
|
|||||||
trace Assuan protocol. See also option @option{--debug-assuan-log-cats}.
|
trace Assuan protocol. See also option @option{--debug-assuan-log-cats}.
|
||||||
@item 11 (2048)
|
@item 11 (2048)
|
||||||
trace APDU I/O to the card. This may reveal sensitive data.
|
trace APDU I/O to the card. This may reveal sensitive data.
|
||||||
|
@item 12 (4096)
|
||||||
|
trace some card reader related function calls.
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
@item --debug-all
|
@item --debug-all
|
||||||
@ -327,6 +329,7 @@ stripping off the two leading dashes.
|
|||||||
* DINSIG Card:: The DINSIG card application
|
* DINSIG Card:: The DINSIG card application
|
||||||
* PKCS#15 Card:: The PKCS#15 card application
|
* PKCS#15 Card:: The PKCS#15 card application
|
||||||
* Geldkarte Card:: The Geldkarte application
|
* Geldkarte Card:: The Geldkarte application
|
||||||
|
* Undefined Card:: The Undefined stub application
|
||||||
@end menu
|
@end menu
|
||||||
|
|
||||||
@node OpenPGP Card
|
@node OpenPGP Card
|
||||||
@ -367,6 +370,14 @@ This is a simple application to display information of a German
|
|||||||
Geldkarte. The Geldkarte is a small amount debit card application which
|
Geldkarte. The Geldkarte is a small amount debit card application which
|
||||||
comes with almost all German banking cards.
|
comes with almost all German banking cards.
|
||||||
|
|
||||||
|
@node Undefined Card
|
||||||
|
@subsection The Undefined card application ``undefined''
|
||||||
|
|
||||||
|
This is a stub application to allow the use of the APDU command even
|
||||||
|
if no supported application is found on the card. This application is
|
||||||
|
not used automatically but must be explicitly requested using the
|
||||||
|
SERIALNO command.
|
||||||
|
|
||||||
|
|
||||||
@c *******************************************
|
@c *******************************************
|
||||||
@c *************** ****************
|
@c *************** ****************
|
||||||
|
10
scd/app.c
10
scd/app.c
@ -387,6 +387,14 @@ select_application (ctrl_t ctrl, int slot, const char *name, app_t *r_app)
|
|||||||
if (err && is_app_allowed ("geldkarte")
|
if (err && is_app_allowed ("geldkarte")
|
||||||
&& (!name || !strcmp (name, "geldkarte")))
|
&& (!name || !strcmp (name, "geldkarte")))
|
||||||
err = app_select_geldkarte (app);
|
err = app_select_geldkarte (app);
|
||||||
|
if (err && is_app_allowed ("undefined")
|
||||||
|
&& (name && !strcmp (name, "undefined")))
|
||||||
|
{
|
||||||
|
/* We switch to the "undefined" application only if explicitly
|
||||||
|
requested. */
|
||||||
|
app->apptype = "UNDEFINED";
|
||||||
|
err = 0;
|
||||||
|
}
|
||||||
if (err && name)
|
if (err && name)
|
||||||
err = gpg_error (GPG_ERR_NOT_SUPPORTED);
|
err = gpg_error (GPG_ERR_NOT_SUPPORTED);
|
||||||
|
|
||||||
@ -422,6 +430,8 @@ get_supported_applications (void)
|
|||||||
"p15",
|
"p15",
|
||||||
"dinsig",
|
"dinsig",
|
||||||
"geldkarte",
|
"geldkarte",
|
||||||
|
/* Note: "undefined" is not listed here because it needs special
|
||||||
|
treatment by the client. */
|
||||||
NULL
|
NULL
|
||||||
};
|
};
|
||||||
int idx;
|
int idx;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user