Re: r313494 make perl File::Temp broken

From: Mark Martinec <Mark.Martinec+freebsd_at_ijs.si>
Date: Fri, 10 Feb 2017 14:37:05 +0100
2017-02-10 14:09, Iblis Lin wrote:
> as not a perl programmer myself. I have no idea what is going on.
> I found this issue while compiling math/openblas.
> 
> [iblis_at_ns]% uname -a
> FreeBSD ns 12.0-CURRENT FreeBSD 12.0-CURRENT #1 r313500: Fri Feb 10 
> 16:39:21
> CST 2017     root_at_ns:/usr/obj/usr/src/sys/GENERIC  amd64
> 
> [iblis_at_ns]% cat test.pl
> use File::Temp qw(tempfile);
> $tmpf = new File::Temp( UNLINK => 1 );
> 
> [iblis_at_ns]% perl test.pl
> Error in tempfile() using template /tmp/XXXXXXXXXX: Could not create 
> temp file
> /tmp/dI5uhUsijR: Bad file descriptor at test.pl line 2.

[...]

> stat("/tmp/",{ mode=drwxrwxrwt 
> ,inode=24317568,size=1024,blksize=32768}) = 0 (0x0)
> stat("/tmp/",{ mode=drwxrwxrwt 
> ,inode=24317568,size=1024,blksize=32768}) = 0 (0x0)
> openat(AT_FDCWD,"/tmp/Nn0Epra5ff",O_RDWR|O_EXLOCK|O_NOFOLLOW|O_CREAT|O_EXCL,0600) 
> ERR#9 'Bad file descriptor'


Perhaps your /tmp is a logical link, and O_NOFOLLOW does not allow that.

   Mark
Received on Fri Feb 10 2017 - 12:37:20 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:10 UTC