Rework of some parts to support several keys pers slot.
* src/cert.h (struct cert): Add member certref. * src/agent.h (struct agent_card_info_s): Remove legacy data. * src/agent.c (learn_status_cb): Ditto. (scute_agent_get_cert): Copy the certref to the cert object. * src/cert-object.c (scute_attr_cert): Add arg 'grip' and use new scheme for CKA_ID. (scute_attr_prv): Ditto. * src/gpgsm.c (struct search): Rename to search_cb_parm for clarity. Add member 'grip'. (search_cb): Pass GRIP to scute_attr_prv and scute_attr_cert. (scute_gpgsm_get_cert): Convey GRIP. * src/slots.c (slot_init): Replace fixed "OPENPGP.3" by a loop over all available keyrefs. (session_sign): Actually use the set key. Add a few checks. * src/settings.h (LIBRARY_DESCRIPTION): Rename to "GnuPG". * src/slots.c (mechanism_alloc): Change ulMaxKeySize to 4096. * src/p11-gettokeninfo.c (C_GetTokenInfo): Set ulMaxSessionCount to CK_EFFECTIVELY_INFINITE. * tests/t-getattribute.c (dump_one_string): New. (dump_object): Use for some objects.
- Signed-off-by: Werner Koch <wk@gnupg.org>