res_crypto: Don't load non-regular files in keys directory

ASTERISK-30046

Change-Id: Ie77e0648f8b0b1c2159fb24662d1989cfd4cc36d
18.15
Philip Prindeville 3 years ago committed by Friendly Automation
parent f74c459a42
commit 7a0fe63390

@ -0,0 +1,5 @@
Subject: res_crypto
In addition to only paying attention to files ending with .key or .pub
in the keys directory, we now also ignore any files which aren't regular
files.

@ -507,6 +507,13 @@ static void crypto_load(int ifd, int ofd)
/* Load new keys */ /* Load new keys */
if ((dir = opendir(ast_config_AST_KEY_DIR))) { if ((dir = opendir(ast_config_AST_KEY_DIR))) {
while ((ent = readdir(dir))) { while ((ent = readdir(dir))) {
if (!strcmp(ent->d_name, ".") || !strcmp(ent->d_name, "..")) {
continue;
}
if (ent->d_type != DT_REG) {
ast_log(LOG_WARNING, "Non-regular file '%s' in keys directory\n", ent->d_name);
continue;
}
try_load_key(ast_config_AST_KEY_DIR, ent->d_name, ifd, ofd, &note); try_load_key(ast_config_AST_KEY_DIR, ent->d_name, ifd, ofd, &note);
} }
closedir(dir); closedir(dir);

Loading…
Cancel
Save