diff --git a/server/access.c b/server/access.c index 01fc727f..6e5ae1bd 100644 --- a/server/access.c +++ b/server/access.c @@ -1425,6 +1425,15 @@ parse_access_file(fko_srv_options_t *opts, char *access_filename, int *depth) /* First see if the access file exists. If it doesn't, complain * and bail. */ +#if HAVE_LSTAT + if(lstat(access_filename, &st) != 0) + { + log_msg(LOG_ERR, "[*] Access file: '%s' was not found.", + access_filename); + + return EXIT_FAILURE; + } +#elif HAVE_STAT if(stat(access_filename, &st) != 0) { log_msg(LOG_ERR, "[*] Access file: '%s' was not found.", @@ -1432,6 +1441,7 @@ parse_access_file(fko_srv_options_t *opts, char *access_filename, int *depth) return EXIT_FAILURE; } +#endif if(verify_file_perms_ownership(access_filename) != 1) return EXIT_FAILURE; diff --git a/test/conf/access-include.tar.gz b/test/conf/access-include.tar.gz index 8fdca8e9..cc09175a 100644 Binary files a/test/conf/access-include.tar.gz and b/test/conf/access-include.tar.gz differ diff --git a/test/tests/rijndael_hmac.pl b/test/tests/rijndael_hmac.pl index 92cd9fac..ba93dae8 100644 --- a/test/tests/rijndael_hmac.pl +++ b/test/tests/rijndael_hmac.pl @@ -166,6 +166,18 @@ 'fw_rule_removed' => $NEW_RULE_REMOVED, 'key_file' => $cf{'rc_hmac_b64_key'}, }, + { + 'category' => 'Rijndael+HMAC', + 'subcategory' => 'client+server', + 'detail' => 'complete cycle, include (3)', + 'function' => \&spa_cycle, + 'cmdline' => $default_client_hmac_args, + 'fwknopd_cmdline' => "$fwknopdCmd -c $cf{'def'} --access-folder conf/access-include/defaults " . + "-d $default_digest_file -p $default_pid_file $intf_str", + 'fw_rule_created' => $NEW_RULE_REQUIRED, + 'fw_rule_removed' => $NEW_RULE_REMOVED, + 'key_file' => $cf{'rc_hmac_b64_key'}, + }, { 'category' => 'Rijndael+HMAC',