aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-07-09 07:37:44 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-07-09 07:37:44 +0000
commit6e6d9ea0299a8dcdb76b39d1399f2746a0c3292f (patch)
treeee71200fa23f5259a2c676db9def8d3399d7cc6c
parent5a0c2274bf2db8b28d697ab7c9e5f83c8889413d (diff)
Fix provisioning for unload/reload
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@3406 f38db490-d61c-443f-a65b-d21fe96a405b
-rwxr-xr-xchannels/chan_iax2.c1
-rwxr-xr-xchannels/iax2-provision.c7
-rwxr-xr-xchannels/iax2-provision.h1
3 files changed, 9 insertions, 0 deletions
diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c
index fd08f2457..fbaed07d6 100755
--- a/channels/chan_iax2.c
+++ b/channels/chan_iax2.c
@@ -7108,6 +7108,7 @@ static int __unload_module(void)
ast_unregister_switch(&iax2_switch);
ast_channel_unregister(type);
delete_users();
+ iax_provision_unload();
return 0;
}
diff --git a/channels/iax2-provision.c b/channels/iax2-provision.c
index b49ea164d..da1097794 100755
--- a/channels/iax2-provision.c
+++ b/channels/iax2-provision.c
@@ -455,6 +455,13 @@ static int iax_provision_init(void)
return 0;
}
+int iax_provision_unload(void)
+{
+ provinit = 0;
+ ast_cli_unregister(&cli_show_provisioning);
+ return 0;
+}
+
int iax_provision_reload(void)
{
struct ast_config *cfg;
diff --git a/channels/iax2-provision.h b/channels/iax2-provision.h
index 2422ce0d3..3caaa5d31 100755
--- a/channels/iax2-provision.h
+++ b/channels/iax2-provision.h
@@ -38,6 +38,7 @@
extern char *iax_provflags2str(char *buf, int buflen, unsigned int flags);
extern int iax_provision_reload(void);
+extern int iax_provision_unload(void);
extern int iax_provision_build(struct iax_ie_data *provdata, unsigned int *signature, const char *template, int force);
extern int iax_provision_version(unsigned int *signature, const char *template, int force);
extern char *iax_prov_complete_template(char *line, char *word, int pos, int state);