Compare commits

..

No commits in common. 'c9' and 'i8c-stream-0.78' have entirely different histories.

2
.gitignore vendored

@ -1 +1 @@
SOURCES/FCGI-0.79.tar.gz SOURCES/FCGI-0.78.tar.gz

@ -1 +1 @@
2c6d7ec8481009c23028ac37086b3ddc2ddb177b SOURCES/FCGI-0.79.tar.gz dbc2c4180656bbce87d06d0a6f28e46d6fb71b30 SOURCES/FCGI-0.78.tar.gz

@ -1,84 +0,0 @@
Description: fix CVE-2012-6687 in bundled libfcgi
Origin: https://bugs.launchpad.net/ubuntu/+source/libfcgi/+bug/933417
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=815840
Forwarded: https://rt.cpan.org/Ticket/Display.html?id=118405
--- a/os_unix.c
+++ b/os_unix.c
@@ -36,6 +36,7 @@
#include <sys/time.h>
#include <sys/un.h>
#include <signal.h>
+#include <poll.h>
#ifdef HAVE_NETDB_H
#include <netdb.h>
@@ -97,6 +98,9 @@
static int shutdownPending = FALSE;
static int shutdownNow = FALSE;
+static int libfcgiOsClosePollTimeout = 2000;
+static int libfcgiIsAfUnixKeeperPollTimeout = 2000;
+
void OS_ShutdownPending()
{
shutdownPending = TRUE;
@@ -162,6 +166,16 @@
if(libInitialized)
return 0;
+ char *libfcgiOsClosePollTimeoutStr = getenv( "LIBFCGI_OS_CLOSE_POLL_TIMEOUT" );
+ if(libfcgiOsClosePollTimeoutStr) {
+ libfcgiOsClosePollTimeout = atoi(libfcgiOsClosePollTimeoutStr);
+ }
+
+ char *libfcgiIsAfUnixKeeperPollTimeoutStr = getenv( "LIBFCGI_IS_AF_UNIX_KEEPER_POLL_TIMEOUT" );
+ if(libfcgiIsAfUnixKeeperPollTimeoutStr) {
+ libfcgiIsAfUnixKeeperPollTimeout = atoi(libfcgiIsAfUnixKeeperPollTimeoutStr);
+ }
+
asyncIoTable = (AioInfo *)malloc(asyncIoTableSize * sizeof(AioInfo));
if(asyncIoTable == NULL) {
errno = ENOMEM;
@@ -751,19 +765,16 @@
{
if (shutdown(fd, 1) == 0)
{
- struct timeval tv;
- fd_set rfds;
+ struct pollfd pfd;
int rv;
char trash[1024];
- FD_ZERO(&rfds);
+ pfd.fd = fd;
+ pfd.events = POLLIN;
do
{
- FD_SET(fd, &rfds);
- tv.tv_sec = 2;
- tv.tv_usec = 0;
- rv = select(fd + 1, &rfds, NULL, NULL, &tv);
+ rv = poll(&pfd, 1, libfcgiOsClosePollTimeout);
}
while (rv > 0 && read(fd, trash, sizeof(trash)) > 0);
}
@@ -1113,13 +1124,11 @@
*/
static int is_af_unix_keeper(const int fd)
{
- struct timeval tval = { READABLE_UNIX_FD_DROP_DEAD_TIMEVAL };
- fd_set read_fds;
-
- FD_ZERO(&read_fds);
- FD_SET(fd, &read_fds);
+ struct pollfd pfd;
+ pfd.fd = fd;
+ pfd.events = POLLIN;
- return select(fd + 1, &read_fds, NULL, NULL, &tval) >= 0 && FD_ISSET(fd, &read_fds);
+ return poll(&pfd, 1, libfcgiIsAfUnixKeeperPollTimeout) >= 0 && (pfd.revents & POLLIN);
}
/*

@ -2,23 +2,19 @@ Name: perl-FCGI
Summary: FastCGI Perl bindings Summary: FastCGI Perl bindings
# needed to properly replace/obsolete fcgi-perl # needed to properly replace/obsolete fcgi-perl
Epoch: 1 Epoch: 1
Version: 0.79 Version: 0.78
Release: 8%{?dist} Release: 11%{?dist}
# same as fcgi # same as fcgi
License: OML License: OML
Source0: https://cpan.metacpan.org/authors/id/E/ET/ETHER/FCGI-%{version}.tar.gz Source0: https://cpan.metacpan.org/authors/id/E/ET/ETHER/FCGI-%{version}.tar.gz
# Fix CVE-2012-6687 in the bundled fcgi library, bug #1190294, CPAN RT#118405,
# patch copied from Debian's libfcgi-perl.
Patch0: FCGI-0.78-CVE-2012-6687.patch
URL: https://metacpan.org/release/FCGI URL: https://metacpan.org/release/FCGI
BuildRequires: coreutils
BuildRequires: findutils BuildRequires: findutils
BuildRequires: gcc BuildRequires: gcc
BuildRequires: make BuildRequires: make
BuildRequires: perl-interpreter
BuildRequires: perl-devel BuildRequires: perl-devel
BuildRequires: perl-generators BuildRequires: perl-generators
BuildRequires: perl-interpreter
BuildRequires: perl(Config) BuildRequires: perl(Config)
BuildRequires: perl(Cwd) BuildRequires: perl(Cwd)
# ExtUtils::Liblist not used # ExtUtils::Liblist not used
@ -36,9 +32,6 @@ BuildRequires: perl(Test)
Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version)) Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
Requires: perl(Carp) Requires: perl(Carp)
Requires: perl(XSLoader) Requires: perl(XSLoader)
# fcgiapp.c, os_unix.c, os_win32.c are copied and modified from FastCGI
# Developer's Kit of an unknown version, bug #736612
Provides: bundled(fcgi)
%{?perl_default_filter} %{?perl_default_filter}
@ -47,16 +40,14 @@ Provides: bundled(fcgi)
%prep %prep
%setup -q -n FCGI-%{version} %setup -q -n FCGI-%{version}
%patch0 -p1
find . -type f -exec chmod -c -x {} + find . -type f -exec chmod -c -x {} +
%build %build
perl Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}" NO_PACKLIST=1 \ perl Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}" NO_PACKLIST=1
NO_PERLLOCAL=1 make %{?_smp_mflags}
%make_build
%install %install
%make_install make pure_install DESTDIR=%{buildroot}
%{_fixperms} %{buildroot}/* %{_fixperms} %{buildroot}/*
%check %check
@ -70,45 +61,11 @@ make test
%{_mandir}/man3/*.3* %{_mandir}/man3/*.3*
%changelog %changelog
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 1:0.79-8 * Sun Dec 10 2023 MSVSphere Packaging Team <packager@msvsphere-os.ru> - 1:0.78-11
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags - Rebuilt for MSVSphere 8.8
Related: rhbz#1991688
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 1:0.79-7
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:0.79-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:0.79-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jun 22 2020 Jitka Plesnikova <jplesnik@redhat.com> - 1:0.79-4
- Perl 5.32 rebuild
* Tue Feb 04 2020 Tom Stellard <tstellar@redhat.com> - 1:0.79-3
- Spec file cleanups: Use make_build and make_install macros
- https://docs.fedoraproject.org/en-US/packaging-guidelines/#_parallel_make
- https://fedoraproject.org/wiki/Perl/Tips#ExtUtils::MakeMake
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:0.79-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Sun Dec 15 2019 Emmanuel Seyman <emmanuel@seyman.fr> - 1:0.79-1
- Update to 0.79
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:0.78-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu May 30 2019 Jitka Plesnikova <jplesnik@redhat.com> - 1:0.78-13
- Perl 5.30 rebuild
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:0.78-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Tue Jan 15 2019 Petr Pisar <ppisar@redhat.com> - 1:0.78-11 * Fri Mar 29 2019 Jitka Plesnikova <jplesnik@redhat.com> - 1:0.78-11
- Document an fcgi library is bundled (bug #736612) - Rebuild with enable hardening (bug #1636329)
- Fix CVE-2012-6687 in the bundled fcgi library (bug #1190294)
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:0.78-10 * Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:0.78-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

Loading…
Cancel
Save