Andreas Krennmair:
[apps/madmutt.git] / imap / imap.c
index eefdd31..9bc7e86 100644 (file)
@@ -1484,3 +1484,20 @@ int imap_complete(char* dest, size_t dlen, char* path) {
   FREE (&mx.mbox);
   return -1;
 }
+
+/* reconnect if connection was lost */
+int imap_reconnect(CONTEXT* ctx) {
+  IMAP_DATA* imap_data = (IMAP_DATA *)ctx->data;
+
+  if (imap_data) {
+    if (imap_data->status == IMAP_CONNECTED)
+      return -1;
+  }
+
+  if (query_quadoption(OPT_IMAPRECONNECT,_("Connection lost. Reconnect to IMAP server?")) != M_YES)
+    return -1;
+
+  mx_open_mailbox(ctx->path,0,ctx);
+  return 0;
+}
+