From d183484742670f09d5963505ff9fef5e314a4c26 Mon Sep 17 00:00:00 2001 From: Simon Tatham Date: Wed, 29 Jan 2020 06:13:41 +0000 Subject: [PATCH] Make prototype for new_prompts() consistent. In commit b4c8fd9d8 which introduced the Seat trait, I got a bit confused about the prototype of new_prompts(). Previously it took a 'Frontend *' parameter; I edited the call sites to pass a 'Seat *' instead, but the actual function definition takes no parameters at all - and rightly so, because the 'Frontend *' inside the prompts_t has been removed and _not_ replaced with a 'Seat *', so the constructor would have nothing to do with such a thing anyway. But I wrote the function declaration in putty.h with '()' rather than '(void)' (too much time spent in C++), and so the compiler never spotted the mismatch. Now new_prompts() is consistently nullary everywhere it appears: the prototype in the header is a proper (void) one, and the call sites have been modified to not pointlessly give it a Seat or null pointer. --- cmdgen.c | 2 +- putty.h | 2 +- ssh1login.c | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/cmdgen.c b/cmdgen.c index dbac992c..c3720b57 100644 --- a/cmdgen.c +++ b/cmdgen.c @@ -906,7 +906,7 @@ int main(int argc, char **argv) * we have just generated a key. */ if (!new_passphrase && (change_passphrase || keytype != NOKEYGEN)) { - prompts_t *p = new_prompts(NULL); + prompts_t *p = new_prompts(); int ret; p->to_server = false; diff --git a/putty.h b/putty.h index 0c4816cb..52cd90df 100644 --- a/putty.h +++ b/putty.h @@ -667,7 +667,7 @@ typedef struct { void *data; /* slot for housekeeping data, managed by * seat_get_userpass_input(); initially NULL */ } prompts_t; -prompts_t *new_prompts(); +prompts_t *new_prompts(void); void add_prompt(prompts_t *p, char *promptstr, bool echo); void prompt_set_result(prompt_t *pr, const char *newstr); char *prompt_get_result(prompt_t *pr); diff --git a/ssh1login.c b/ssh1login.c index c02b8d02..145ac640 100644 --- a/ssh1login.c +++ b/ssh1login.c @@ -648,7 +648,7 @@ static void ssh1_login_process_queue(PacketProtocolLayer *ppl) ppl_printf("No passphrase required.\r\n"); passphrase = NULL; } else { - s->cur_prompt = new_prompts(s->ppl.seat); + s->cur_prompt = new_prompts(); s->cur_prompt->to_server = false; s->cur_prompt->from_server = false; s->cur_prompt->name = dupstr("SSH key passphrase"); @@ -786,7 +786,7 @@ static void ssh1_login_process_queue(PacketProtocolLayer *ppl) /* * Otherwise, try various forms of password-like authentication. */ - s->cur_prompt = new_prompts(s->ppl.seat); + s->cur_prompt = new_prompts(); if (conf_get_bool(s->conf, CONF_try_tis_auth) && (s->supported_auths_mask & (1 << SSH1_AUTH_TIS)) &&