about summary refs log tree commit diff stats
path: root/src/ui
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui')
-rw-r--r--src/ui/core.c32
-rw-r--r--src/ui/ui.h3
2 files changed, 35 insertions, 0 deletions
diff --git a/src/ui/core.c b/src/ui/core.c
index bc4a9587..4bccf5d5 100644
--- a/src/ui/core.c
+++ b/src/ui/core.c
@@ -878,6 +878,36 @@ _ui_smp_successful(const char * const recipient)
 }
 
 static void
+_ui_smp_answer_success(const char * const recipient)
+{
+    ProfWin *window = wins_get_by_recipient(recipient);
+    if (window == NULL) {
+        return;
+    } else {
+        win_vprint_line(window, '!', 0, "%s successfully authenticated you.", recipient);
+        win_update_virtual(window);
+        if (wins_is_current(window)) {
+            ui_current_page_off();
+        }
+    }
+}
+
+static void
+_ui_smp_answer_failure(const char * const recipient)
+{
+    ProfWin *window = wins_get_by_recipient(recipient);
+    if (window == NULL) {
+        return;
+    } else {
+        win_vprint_line(window, '!', 0, "%s failed to authenticated you.", recipient);
+        win_update_virtual(window);
+        if (wins_is_current(window)) {
+            ui_current_page_off();
+        }
+    }
+}
+
+static void
 _ui_gone_insecure(const char * const recipient)
 {
     ProfWin *window = wins_get_by_recipient(recipient);
@@ -2112,6 +2142,8 @@ ui_init_module(void)
     ui_smp_unsuccessful_sender = _ui_smp_unsuccessful_sender;
     ui_smp_unsuccessful_receiver = _ui_smp_unsuccessful_receiver;
     ui_smp_aborted = _ui_smp_aborted;
+    ui_smp_answer_success = _ui_smp_answer_success;
+    ui_smp_answer_failure = _ui_smp_answer_failure;
     ui_chat_win_contact_online = _ui_chat_win_contact_online;
     ui_chat_win_contact_offline = _ui_chat_win_contact_offline;
     ui_handle_recipient_not_found = _ui_handle_recipient_not_found;
diff --git a/src/ui/ui.h b/src/ui/ui.h
index 5e850c6c..c4d42939 100644
--- a/src/ui/ui.h
+++ b/src/ui/ui.h
@@ -71,6 +71,9 @@ void (*ui_smp_unsuccessful_sender)(const char * const recipient);
 void (*ui_smp_unsuccessful_receiver)(const char * const recipient);
 void (*ui_smp_aborted)(const char * const recipient);
 
+void (*ui_smp_answer_success)(const char * const recipient);
+void (*ui_smp_answer_failure)(const char * const recipient);
+
 unsigned long (*ui_get_idle_time)(void);
 void (*ui_reset_idle_time)(void);
 void (*ui_new_chat_win)(const char * const to);