[asterisk-commits] app voicemail: IMAP logout on reload/unload (asterisk[13])
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Mon Jun 19 09:19:39 CDT 2017
George Joseph has submitted this change and it was merged. ( https://gerrit.asterisk.org/5852 )
Change subject: app_voicemail: IMAP logout on reload/unload
......................................................................
app_voicemail: IMAP logout on reload/unload
Closing IMAP connection on module reload or unload.
ASTERISK-24052 #close
Change-Id: I2a40182aa9ef249fa6865d33570430e9ada68525
---
M apps/app_voicemail.c
1 file changed, 23 insertions(+), 1 deletion(-)
Approvals:
Joshua Colp: Looks good to me, but someone else must approve
George Joseph: Looks good to me, approved; Approved for Submit
diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c
index 0c0e2ba..2152cca 100644
--- a/apps/app_voicemail.c
+++ b/apps/app_voicemail.c
@@ -13057,10 +13057,25 @@
return;
}
+ ast_mutex_lock(&vms->lock);
vms->mailstream = mail_close(vms->mailstream);
+ ast_mutex_unlock(&vms->lock);
+
vmstate_delete(vms);
}
+static void imap_close_subscribed_mailboxes(void)
+{
+ struct mwi_sub *mwi_sub;
+
+ AST_RWLIST_RDLOCK(&mwi_subs);
+ AST_RWLIST_TRAVERSE(&mwi_subs, mwi_sub, entry) {
+ if (!ast_strlen_zero(mwi_sub->mailbox)) {
+ imap_logout(mwi_sub->mailbox);
+ }
+ }
+ AST_RWLIST_UNLOCK(&mwi_subs);
+}
#endif
static int handle_unsubscribe(void *datap)
@@ -13514,7 +13529,11 @@
strcpy(listen_control_restart_key, DEFAULT_LISTEN_CONTROL_RESTART_KEY);
strcpy(listen_control_stop_key, DEFAULT_LISTEN_CONTROL_STOP_KEY);
- /* Free all the users structure */
+#ifdef IMAP_STORAGE
+ imap_close_subscribed_mailboxes();
+#endif
+
+ /* Free all the users structure */
free_vm_users();
/* Free all the zones structure */
@@ -14908,6 +14927,9 @@
ast_unload_realtime("voicemail");
ast_unload_realtime("voicemail_data");
+#ifdef IMAP_STORAGE
+ imap_close_subscribed_mailboxes();
+#endif
free_vm_users();
free_vm_zones();
return res;
--
To view, visit https://gerrit.asterisk.org/5852
To unsubscribe, visit https://gerrit.asterisk.org/settings
Gerrit-Project: asterisk
Gerrit-Branch: 13
Gerrit-MessageType: merged
Gerrit-Change-Id: I2a40182aa9ef249fa6865d33570430e9ada68525
Gerrit-Change-Number: 5852
Gerrit-PatchSet: 2
Gerrit-Owner: Alexei Gradinari <alex2grad at gmail.com>
Gerrit-Reviewer: George Joseph <gjoseph at digium.com>
Gerrit-Reviewer: Jenkins2
Gerrit-Reviewer: Joshua Colp <jcolp at digium.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-commits/attachments/20170619/d1461dc0/attachment-0001.html>
More information about the asterisk-commits
mailing list