agent: Fix memory leaks
* agent/call-daemon.c (daemon_start): free wctp * agent/call-scd.c (agent_card_pksign): return error instead of noop (card_keyinfo_cb): free keyinfo. Restructure to avoid a goto backwards. * agent/protect.c (agent_get_shadow_info_type): allocate only as a last action. Catch xtrymalloc failure. (agent_is_tpm2_key): Free buf.
Additional changes are:
- Restructure to avoid a goto backwards.
- Catch xtrymalloc failure.
- Signed-off-by: Werner Koch <wk@gnupg.org>
- GnuPG-bug-id: T5393