automerge commit

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2-netsec@37455 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.2-netsec
Automerge script 19 years ago
parent 94755549d7
commit afb25c2c40

20
app.c

@ -1167,11 +1167,13 @@ enum AST_LOCK_RESULT ast_lock_path(const char *path)
time(&start);
while (((res = link(fs, s)) < 0) && (errno == EEXIST) && (time(NULL) - start < 5))
usleep(1);
unlink(fs);
if (res) {
ast_log(LOG_WARNING, "Failed to lock path '%s': %s\n", path, strerror(errno));
return AST_LOCK_TIMEOUT;
} else {
unlink(fs);
ast_log(LOG_DEBUG, "Locked path '%s'\n", path);
return AST_LOCK_SUCCESS;
}
@ -1180,12 +1182,22 @@ enum AST_LOCK_RESULT ast_lock_path(const char *path)
int ast_unlock_path(const char *path)
{
char *s;
int res;
s = alloca(strlen(path) + 10);
if (!s)
if (!s) {
ast_log(LOG_WARNING, "Out of memory!\n");
return -1;
}
snprintf(s, strlen(path) + 9, "%s/%s", path, ".lock");
ast_log(LOG_DEBUG, "Unlocked path '%s'\n", path);
return unlink(s);
if ((res = unlink(s)))
ast_log(LOG_ERROR, "Could not unlock path '%s': %s\n", path, strerror(errno));
else
ast_log(LOG_DEBUG, "Unlocked path '%s'\n", path);
return res;
}
int ast_record_review(struct ast_channel *chan, const char *playfile, const char *recordfile, int maxtime, const char *fmt, int *duration, const char *path)

@ -2617,7 +2617,8 @@ static int leave_voicemail(struct ast_channel *chan, char *ext, struct leave_vm_
} else if (ast_fileexists(tmptxtfile, NULL, NULL) <= 0) {
if (option_debug)
ast_log(LOG_DEBUG, "The recorded media file is gone, so we should remove the .txt file too!\n");
unlink(tmptxtfile);
unlink(tmptxtfile);
ast_unlock_path(dir);
} else {
for (;;) {
make_file(fn, sizeof(fn), dir, msgnum);

@ -147,6 +147,7 @@ static char context[80] = "default";
static char language[MAX_LANGUAGE] = "";
static char regcontext[AST_MAX_CONTEXT] = "";
static int maxauthreq = 0;
static int max_retries = 4;
static int ping_time = 20;
static int lagrq_time = 10;
@ -8432,6 +8433,7 @@ static struct iax2_user *build_user(const char *name, struct ast_variable *v, in
if (user) {
memset(user, 0, sizeof(struct iax2_user));
user->maxauthreq = maxauthreq;
user->curauthreq = oldcurauthreq;
user->prefs = prefs;
user->capability = iax2_capability;
@ -8868,6 +8870,10 @@ static int set_config(char *config_file, int reload)
}
} else if (!strcasecmp(v->name, "language")) {
ast_copy_string(language, v->value, sizeof(language));
} else if (!strcasecmp(v->name, "maxauthreq")) {
maxauthreq = atoi(v->value);
if (maxauthreq < 0)
maxauthreq = 0;
} /*else if (strcasecmp(v->name,"type")) */
/* ast_log(LOG_WARNING, "Ignoring %s\n", v->name); */
v = v->next;

Loading…
Cancel
Save