X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fstaging%2Fdedeckeh.git;a=blobdiff_plain;f=scripts%2Fmkhash.c;fp=scripts%2Fmkhash.c;h=ced4f3c34a8c3bf70f384c211eb6cc058140ccf3;hp=ce156e979dea3761a1e2684cf046be8cf505abe8;hb=fcd3e13779ca644bfbb0940f39fdf13203bf8211;hpb=fac98f1c54a16073e28ab11adf195f9917a30ef6 diff --git a/scripts/mkhash.c b/scripts/mkhash.c index ce156e979d..ced4f3c34a 100644 --- a/scripts/mkhash.c +++ b/scripts/mkhash.c @@ -85,6 +85,7 @@ #include #include #include +#include #define ARRAY_SIZE(_n) (sizeof(_n) / sizeof((_n)[0])) @@ -770,6 +771,13 @@ static int hash_file(struct hash_type *t, const char *filename, bool add_filenam if (!filename || !strcmp(filename, "-")) { str = t->func(stdin); } else { + struct stat path_stat; + stat(filename, &path_stat); + if (S_ISDIR(path_stat.st_mode)) { + fprintf(stderr, "Failed to open '%s': Is a directory\n", filename); + return 1; + } + FILE *f = fopen(filename, "r"); if (!f) {