2006-10-21 David Kimdon * opncls.c (bfd_fopen): Return failure if filename is a directory. --- bfd/opncls.c +++ bfd/opncls.c @@ -182,6 +182,15 @@ bfd_fopen (const char *filename, const c { bfd *nbfd; const bfd_target *target_vec; + struct stat s; + + if ((fd != -1 && fstat (fd, &s) == 0) || + (fd == -1 && stat (filename, &s) == 0)) + if (S_ISDIR(s.st_mode)) + { + bfd_set_error (bfd_error_file_not_recognized); + return NULL; + } nbfd = _bfd_new_bfd (); if (nbfd == NULL)