about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorThorben Günther <admin@xenrox.net>2021-03-11 14:38:27 +0100
committerThorben Günther <admin@xenrox.net>2021-03-11 14:40:17 +0100
commit71236a0d5a47277d55caa5a09befa97ccabe7fec (patch)
tree5d2a3585322f72bad73060fa4fce59afadd6d8f5 /src
parent96580f917b5c0a061e7bf41714cf48c8e89cd5f8 (diff)
downloadprofani-tty-71236a0d5a47277d55caa5a09befa97ccabe7fec.tar.gz
Update ui_ask_password to support confirmation
Just prints a different string to console.
Useful for changing passwords or account registration.
Diffstat (limited to 'src')
-rw-r--r--src/command/cmd_funcs.c4
-rw-r--r--src/ui/core.c8
-rw-r--r--src/ui/ui.h2
3 files changed, 9 insertions, 5 deletions
diff --git a/src/command/cmd_funcs.c b/src/command/cmd_funcs.c
index 55965690..60b7010b 100644
--- a/src/command/cmd_funcs.c
+++ b/src/command/cmd_funcs.c
@@ -438,7 +438,7 @@ cmd_connect(ProfWin* window, const char* const command, gchar** args)
 
             // no account password setting, prompt
         } else {
-            account->password = ui_ask_password();
+            account->password = ui_ask_password(false);
             conn_status = cl_ev_connect_account(account);
             free(account->password);
             account->password = NULL;
@@ -450,7 +450,7 @@ cmd_connect(ProfWin* window, const char* const command, gchar** args)
         // connect with JID
     } else {
         jid = g_utf8_strdown(user, -1);
-        char* passwd = ui_ask_password();
+        char* passwd = ui_ask_password(false);
         conn_status = cl_ev_connect_jid(jid, passwd, altdomain, port, tls_policy, auth_policy);
         free(passwd);
     }
diff --git a/src/ui/core.c b/src/ui/core.c
index 5021ac72..931417c4 100644
--- a/src/ui/core.c
+++ b/src/ui/core.c
@@ -993,9 +993,13 @@ ui_win_unread(int index)
 }
 
 char*
-ui_ask_password(void)
+ui_ask_password(gboolean confirm)
 {
-    status_bar_set_prompt("Enter password:");
+    if (!confirm) {
+        status_bar_set_prompt("Enter password:");
+    } else {
+        status_bar_set_prompt("Confirm password:");
+    }
     return inp_get_password();
 }
 
diff --git a/src/ui/ui.h b/src/ui/ui.h
index 8ce27840..391b906c 100644
--- a/src/ui/ui.h
+++ b/src/ui/ui.h
@@ -75,7 +75,7 @@ int ui_close_all_wins(void);
 int ui_close_read_wins(void);
 void ui_close_win(int index);
 int ui_win_unread(int index);
-char* ui_ask_password(void);
+char* ui_ask_password(gboolean confirm);
 char* ui_get_line(void);
 char* ui_ask_pgp_passphrase(const char* hint, int prev_fail);
 void ui_contact_online(char* barejid, Resource* resource, GDateTime* last_activity);