Comments (1)
From [email protected]
____________________________________________________________________________
[ 2232] By: gbarr on 1998/11/13 03:12:37
Log: integrate change#2215 from mainline
set close-on-exec bit on pipe() FDs
Branch: maint-5.005/perl
! pod/perlfunc.pod pod/perlvar.pod pp_sys.c
is the change that adds:
#if defined(HAS_FCNTL) && defined(F_SETFD)
fcntl(fd[0],F_SETFD,fd[0] > PL_maxsysfd); /* ensure close-on-exec */
fcntl(fd[1],F_SETFD,fd[1] > PL_maxsysfd); /* ensure close-on-exec */
#endif
to pp_pipe_op. I'm not sure what other people use pipe() for, but I was
using it to set up IPC with a child process. I'm guessing this mostly
went unnoticed because most people probably do this with stdin/stdout,
which are exempted from this. Anyway, this change broke PGP::Sign on _03.
I can go add a call to fcntl() to unset close-on-exec, wrapped in eval in
case the platform doesn't have that stuff (does the import of F_SETFD from
Fcntl via use Fcntl qw(F_SETFD); fail on platforms that don't have it?),
but this would seem to me to be a bit of a big change for the maintenance
release.
--
Russ Allbery (rra@stanford.edu) <URL:http://www.eyrie.org/~eagle/>
from perl5.
Related Issues (20)
- Bug: File::Spec->path() doesn't keep trailing empty elements HOT 9
- [doc] perlclass is not linked to in obvious places
- POSIX::strftime: modified behavior surprises users HOT 2
- TEST 09_roundtrip.t fails in 5.40.0 RELEASE HOT 2
- BBC: Blead Breaks EV HOT 7
- BBC: Blead Breaks PDL HOT 9
- chdir doesn't return a boolean, but manual says it returns true/false
- SIGSEGV on start if LC_ALL is unset HOT 10
- BBC: 5.41.1 breaks PLICEASE/UUID-FFI-0.11.tar.gz HOT 14
- BBC: 5.41.1 breaks RJH/DataLoader-0.02.tar.gz HOT 1
- open unexpectedly creates temporary files with undefined variables sometimes HOT 5
- Unable to build 5.40.0 - infinite loop trying to build IO-Socket-SSL HOT 4
- Cannot build without another Perl HOT 8
- Give more informative error when using a filehandle as a directory handle HOT 3
- Porting/sync-with-cpan having trouble with version declared in package statement HOT 8
- ExtUtils::Liblist->ext() finds wrong libraries that do not work for build-time linking ('-ltinfo' found at .../libtinfo.so.6.4), breaks builds (Term::ReadLine::Gnu) HOT 3
- When Configure checks the integrity of Perl, running the ls command encounters an error message related to “grep: warning: stray \ before -.” This causes Configure to mistakenly judge the package as incomplete HOT 7
- [doc] print join 1..9 HOT 5
- split bitwise-assignment operators (`&=`, `&.=`, etc) don't return lvalues HOT 1
- test t/io/sem fails on Mac PPC64 HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from perl5.