|
|
|
@ -482,7 +482,6 @@ int ast_thread_inhibit_escalations(void)
|
|
|
|
|
|
|
|
|
|
thread_inhibit_escalations = ast_threadstorage_get(
|
|
|
|
|
&thread_inhibit_escalations_tl, sizeof(*thread_inhibit_escalations));
|
|
|
|
|
|
|
|
|
|
if (thread_inhibit_escalations == NULL) {
|
|
|
|
|
ast_log(LOG_ERROR, "Error inhibiting privilege escalations for current thread\n");
|
|
|
|
|
return -1;
|
|
|
|
@ -492,6 +491,23 @@ int ast_thread_inhibit_escalations(void)
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
int ast_thread_inhibit_escalations_swap(int inhibit)
|
|
|
|
|
{
|
|
|
|
|
int *thread_inhibit_escalations;
|
|
|
|
|
int orig;
|
|
|
|
|
|
|
|
|
|
thread_inhibit_escalations = ast_threadstorage_get(
|
|
|
|
|
&thread_inhibit_escalations_tl, sizeof(*thread_inhibit_escalations));
|
|
|
|
|
if (thread_inhibit_escalations == NULL) {
|
|
|
|
|
ast_log(LOG_ERROR, "Error swapping privilege escalations inhibit for current thread\n");
|
|
|
|
|
return -1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
orig = *thread_inhibit_escalations;
|
|
|
|
|
*thread_inhibit_escalations = !!inhibit;
|
|
|
|
|
return orig;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*!
|
|
|
|
|
* \brief Indicates whether the current thread inhibits the execution of
|
|
|
|
|
* dangerous functions.
|
|
|
|
@ -505,7 +521,6 @@ static int thread_inhibits_escalations(void)
|
|
|
|
|
|
|
|
|
|
thread_inhibit_escalations = ast_threadstorage_get(
|
|
|
|
|
&thread_inhibit_escalations_tl, sizeof(*thread_inhibit_escalations));
|
|
|
|
|
|
|
|
|
|
if (thread_inhibit_escalations == NULL) {
|
|
|
|
|
ast_log(LOG_ERROR, "Error checking thread's ability to run dangerous functions\n");
|
|
|
|
|
/* On error, assume that we are inhibiting */
|
|
|
|
|