@cryptotaxi247 / netdata-1 / commits / 7c5b00e02

fix symbolic link file detection in etc (#4926)

Costa Tsaousis committed Dec 6, 2018 at 01:02 UTC 7c5b00e02ce2d1ea6d84a7fc3b63de95d9b515cf
1 file changed +11 -12
libnetdata/libnetdata.c
+11 -12
@@ -1380,7 +1380,8 @@ void recursive_config_double_dir_load(const char *user_path, const char *stock_p
1380 continue;
1381 }
1382 }
1383 - else if(de->d_type == DT_UNKNOWN || de->d_type == DT_REG || de->d_type == DT_LNK) {
1383 +
1384 + if(de->d_type == DT_UNKNOWN || de->d_type == DT_REG || de->d_type == DT_LNK) {
1385 size_t len = strlen(de->d_name);
1386 if(path_is_file(udir, de->d_name) &&
1387 len > 5 && !strcmp(&de->d_name[len - 5], ".conf")) {
@@ -1388,13 +1389,11 @@ void recursive_config_double_dir_load(const char *user_path, const char *stock_p
1389 debug(D_HEALTH, "CONFIG calling callback for user file '%s'", filename);
1390 callback(filename, data);
1391 freez(filename);
1392 + continue;
1393 }
1392 - else
1393 - debug(D_HEALTH, "CONFIG ignoring user-config file '%s/%s'", udir, de->d_name);
1394 - }
1395 - else {
1396 - debug(D_HEALTH, "CONFIG ignoring user-config file '%s/%s' with invalid type %d", udir, de->d_name, (int)de->d_type);
1394 }
1395 +
1396 + debug(D_HEALTH, "CONFIG ignoring user-config file '%s/%s' of type %d", udir, de->d_name, (int)de->d_type);
1397 }
1398
1399 closedir(dir);
@@ -1428,7 +1427,8 @@ void recursive_config_double_dir_load(const char *user_path, const char *stock_p
1427 continue;
1428 }
1429 }
1431 - else if(de->d_type == DT_UNKNOWN || de->d_type == DT_REG || de->d_type == DT_LNK) {
1430 +
1431 + if(de->d_type == DT_UNKNOWN || de->d_type == DT_REG || de->d_type == DT_LNK) {
1432 size_t len = strlen(de->d_name);
1433 if(path_is_file(sdir, de->d_name) && !path_is_file(udir, de->d_name) &&
1434 len > 5 && !strcmp(&de->d_name[len - 5], ".conf")) {
@@ -1436,13 +1436,12 @@ void recursive_config_double_dir_load(const char *user_path, const char *stock_p
1436 debug(D_HEALTH, "CONFIG calling callback for stock file '%s'", filename);
1437 callback(filename, data);
1438 freez(filename);
1439 + continue;
1440 }
1440 - else
1441 - debug(D_HEALTH, "CONFIG ignoring stock config file '%s/%s'", sdir, de->d_name);
1442 - }
1443 - else {
1444 - debug(D_HEALTH, "CONFIG ignoring stock-config file '%s/%s' with invalid type %d", udir, de->d_name, (int)de->d_type);
1441 +
1442 }
1443 +
1444 + debug(D_HEALTH, "CONFIG ignoring stock-config file '%s/%s' of type %d", udir, de->d_name, (int)de->d_type);
1445 }
1446
1447 closedir(dir);