diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2004-07-08 09:18:29 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2004-07-08 09:18:29 +0000 |
commit | 1d4707111a1a3f8ba6a15b44e6401de1d3fe4c34 (patch) | |
tree | b4f23e1efe3c4a83ed806ef09078eddca237342e | |
parent | 0d72b1deace65a0ee346ce988446503fb317bbda (diff) | |
download | cygnal-1d4707111a1a3f8ba6a15b44e6401de1d3fe4c34.tar.gz cygnal-1d4707111a1a3f8ba6a15b44e6401de1d3fe4c34.tar.bz2 cygnal-1d4707111a1a3f8ba6a15b44e6401de1d3fe4c34.zip |
* spawn.cc (spawn_guts): Check if script is executable.
-rw-r--r-- | winsup/cygwin/ChangeLog | 4 | ||||
-rw-r--r-- | winsup/cygwin/spawn.cc | 7 |
2 files changed, 11 insertions, 0 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index b102eaeba..0b62c695c 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,7 @@ +2004-07-07 Corinna Vinschen <corinna@vinschen.de> + + * spawn.cc (spawn_guts): Check if script is executable. + 2004-06-30 Corinna Vinschen <corinna@vinschen.de> * times.cc (hires_ms::usecs): Don't overreact. diff --git a/winsup/cygwin/spawn.cc b/winsup/cygwin/spawn.cc index 225e1ce0f..b7b136b2b 100644 --- a/winsup/cygwin/spawn.cc +++ b/winsup/cygwin/spawn.cc @@ -469,6 +469,13 @@ spawn_guts (const char * prog_arg, const char *const *argv, debug_printf ("%s is a script", (char *) real_path); + if (real_path.has_acls () && allow_ntsec + && check_file_access (real_path, X_OK)) + { + debug_printf ("... but not executable"); + break; + } + char *pgm, *arg1; if (buf[0] != '#' || buf[1] != '!') |