mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-28 07:01:07 +00:00
Ref/unref res_srtp when we create/destroy a session
This avoids unhappy crashing when we try to 'core stop gracefully' and res_srtp tries to unload before chan_sip does. Thanks, Russell! (closes issue #18085) Reported by: st git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@292016 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -382,6 +382,7 @@ static int ast_srtp_create(struct ast_srtp **srtp, struct ast_rtp_instance *rtp,
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ast_module_ref(ast_module_info->self);
|
||||||
temp->rtp = rtp;
|
temp->rtp = rtp;
|
||||||
*srtp = temp;
|
*srtp = temp;
|
||||||
|
|
||||||
@@ -400,6 +401,7 @@ static void ast_srtp_destroy(struct ast_srtp *srtp)
|
|||||||
ao2_t_ref(srtp->policies, -1, "Destroying container");
|
ao2_t_ref(srtp->policies, -1, "Destroying container");
|
||||||
|
|
||||||
ast_free(srtp);
|
ast_free(srtp);
|
||||||
|
ast_module_unref(ast_module_info->self);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int ast_srtp_add_stream(struct ast_srtp *srtp, struct ast_srtp_policy *policy)
|
static int ast_srtp_add_stream(struct ast_srtp *srtp, struct ast_srtp_policy *policy)
|
||||||
|
|||||||
Reference in New Issue
Block a user