diff options
author | Werner Koch <wk@gnupg.org> | 2009-03-18 12:18:56 +0100 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2009-03-18 12:18:56 +0100 |
commit | a3b63ac1dc1084beb3d4350e10033ac4af43dcf5 (patch) | |
tree | 0eb716595b5d85872ecb006743847d99945639ea /scd/app-p15.c | |
parent | Enhanced last patch. (diff) | |
download | gnupg2-a3b63ac1dc1084beb3d4350e10033ac4af43dcf5.tar.xz gnupg2-a3b63ac1dc1084beb3d4350e10033ac4af43dcf5.zip |
Add server option with-ephemeral-keys.
Extend SCD LEARN command.
Diffstat (limited to 'scd/app-p15.c')
-rw-r--r-- | scd/app-p15.c | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/scd/app-p15.c b/scd/app-p15.c index 4ebe7b2fd..62404bef9 100644 --- a/scd/app-p15.c +++ b/scd/app-p15.c @@ -2492,17 +2492,23 @@ send_keypairinfo (app_t app, ctrl_t ctrl, prkdf_object_t keyinfo) /* This is the handler for the LEARN command. */ static gpg_error_t -do_learn_status (app_t app, ctrl_t ctrl) +do_learn_status (app_t app, ctrl_t ctrl, unsigned int flags) { gpg_error_t err; - err = send_certinfo (app, ctrl, "100", app->app_local->certificate_info); - if (!err) - err = send_certinfo (app, ctrl, "101", - app->app_local->trusted_certificate_info); - if (!err) - err = send_certinfo (app, ctrl, "102", - app->app_local->useful_certificate_info); + if ((flags & 1)) + err = 0; + else + { + err = send_certinfo (app, ctrl, "100", app->app_local->certificate_info); + if (!err) + err = send_certinfo (app, ctrl, "101", + app->app_local->trusted_certificate_info); + if (!err) + err = send_certinfo (app, ctrl, "102", + app->app_local->useful_certificate_info); + } + if (!err) err = send_keypairinfo (app, ctrl, app->app_local->private_key_info); |