mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-06-30 19:12:48 -05:00
Pageant: introduce an API for passphrase prompts.
This begins to head towards the goal of storing a key file encrypted in Pageant, and decrypting it on demand via a GUI prompt the first time a client requests a signature from it. That won't be a facility available in all situations, so we have to be able to return failure from the prompt. More precisely, there are two versions of this API, one in PageantClient and one in PageantListenerClient: the stream implementation of PageantClient implements the former API and hands it off to the latter. Windows Pageant has to directly implement both (but they will end up funnelling to the same function within winpgnt.c). NFC: for the moment, the new API functions are never called, and every implementation of them returns failure.
This commit is contained in:
10
pageant.c
10
pageant.c
@ -1037,9 +1037,19 @@ static void pageant_conn_got_response(
|
||||
}
|
||||
}
|
||||
|
||||
static bool pageant_conn_ask_passphrase(
|
||||
PageantClient *pc, PageantClientDialogId *dlgid, const char *msg)
|
||||
{
|
||||
struct pageant_conn_state *pcs =
|
||||
container_of(pc, struct pageant_conn_state, pc);
|
||||
return pageant_listener_client_ask_passphrase(pcs->plc, dlgid, msg);
|
||||
}
|
||||
|
||||
|
||||
static const struct PageantClientVtable pageant_connection_clientvt = {
|
||||
pageant_conn_log,
|
||||
pageant_conn_got_response,
|
||||
pageant_conn_ask_passphrase,
|
||||
};
|
||||
|
||||
static void pageant_conn_receive(
|
||||
|
Reference in New Issue
Block a user