delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2008/04/17/10:46:07

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
Newsgroups: comp.lang.perl.misc,comp.os.msdos.djgpp
Subject: Re: Perldoc error: "Could not create temp file"
From: "A. Sinan Unur" <1usa AT llenroc DOT ude DOT invalid>
References: <zd6dnbRZ8J5AdJvVnZ2dnUVZ_rignZ2d AT giganews DOT com> <Xns9A8321CB0C79asu1cornelledu AT 127 DOT 0 DOT 0 DOT 1> <YNqdnXMJMcgtkJrVnZ2dnUVZ_qOknZ2d AT giganews DOT com>
Organization: Cornell University
Message-ID: <Xns9A836B4AECDF7asu1cornelledu@127.0.0.1>
User-Agent: Xnews/2006.08.24
Lines: 69
NNTP-Posting-Host: 929f3da87c874144d09576f2d7f99e05
X-Complaints-To: abuse AT worldnet DOT att DOT net
X-Trace: bgtnsc04-news.ops.worldnet.att.net 1208442770 929f3da87c874144d09576f2d7f99e05 (Thu, 17 Apr 2008 14:32:50 GMT)
NNTP-Posting-Date: Thu, 17 Apr 2008 14:32:50 GMT
Date: Thu, 17 Apr 2008 14:32:50 GMT
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

"Robbie Hatley" <lonewolf AT well DOT com> wrote in
news:YNqdnXMJMcgtkJrVnZ2dnUVZ_qOknZ2d AT giganews DOT com: 

> 
> "A. Sinan Unur" wrote:
> 
>> "Robbie Hatley" wrote:
>>
>> > wd=C:\djgpp\bin
>> > %bash
>> > bash-2.04$ perldoc perl
>> > Error in tempfile() using c:/djgpp/tmp/XXXXXXXXXX: Could not
>> > create temp file c: /djgpp/tmp/zkQ06tqlcH: Invalid argument
>> > (EINVAL) at /dev/env/DJDIR/lib/perl5/Pod /Perldoc.pm line 1483
>> > bash-2.04$ exit
>> > exit
>> > wd=C:\djgpp\bin
>> > %perl perldoc perl
>> > Error in tempfile() using C:/TEMP/XXXXXXXXXX: Could not create
>> > temp file C:/TEMP /0mfgo64w9W: Invalid argument (EINVAL) at
>> > /dev/env/DJDIR/lib/perl5/Pod/Perldoc.p m line 1483
>> > wd=C:\djgpp\bin
>> > %
>>
>> You have a permissions problem. Either c:\djgpp\tmp does not
>> exist or you do not have permissions to write there. Same applies
>> to C:\TEMP
> 
...

> First of all, in that situation, the error is different,
> and says "Permission Denied" (EACESS or EPERM) not
> "Invalid Argument (EINVAL)".

Looking more carefully at the error message you posted, note that 
the actual error is coming from File::Temp::_gettemp.

$open_success = sysopen($fh, $path, $flags, 0600);

is returning the error condition. So, the invalid value being passed 
is either in $flags or the umask. I suspect $flags.

On a hunch, could you check what the following script prints:

#!/usr/bin/perl

use strict;
use warnings;

use Fcntl;

my $EXLOCK = eval {
    local $SIG{__DIE__} = sub {};
    local $SIG{__WARN__} = sub {};
    &Fcntl::O_EXLOCK();
};

print "'$EXLOCK'\n";

__END__

Sinan

-- 
A. Sinan Unur <1usa AT llenroc DOT ude DOT invalid>
(remove .invalid and reverse each component for email address)

comp.lang.perl.misc guidelines on the WWW:
http://www.rehabitation.com/clpmisc/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019