Skip Menu |

This queue is for tickets about the cpan2rpm CPAN distribution.

Report information
The Basics
Id: 2013
Status: resolved
Worked: 9 hours (540 min)
Priority: 0/
Queue: cpan2rpm

People
Owner: bbb [...] cpan.org
Requestors: bbb [...] cpan.org
Cc: ecalder [...] cpan.org
AdminCc:

Bug Information
Severity: Important
Broken in: 2.010
Fixed in: (no value)



Subject: Segmention Fault
It is bad to crash with a SEGV. $ cpan2rpm Net_SSLeay -- cpan2rpm - Ver: 2.010 -- -- Searching CPAN for module Net_SSLeay -- -- Found URL http://search.cpan.org/CPAN/authors/id/S/SA/SAMPO/Net_SSLeay.pm-1.21.tar.gz -- Tarball extraction: [/home/rob/redhat/SOURCES/Net_SSLeay.pm-1.21.tar.gz] Metadata retrieval Segmentation fault $ $ cpan2rpm Net::FTPServer -- cpan2rpm - Ver: 2.010 -- -- Searching CPAN for module Net::FTPServer -- -- Found URL http://search.cpan.org/CPAN/authors/id/B/BB/BBB/Net-FTPServer-1.115.tar.gz -- -- Retrieving URL -- Tarball extraction: [/home/rob/redhat/SOURCES/Net-FTPServer-1.115.tar.gz] Metadata retrieval Segmentation fault $ $ cat /etc/redhat-release Red Hat Linux release 7.2 (Enigma) $ uname -a Linux box 2.4.7-10 #1 Thu Sep 6 17:27:27 EDT 2001 i686 unknown $ perl -V Summary of my perl5 (revision 5.0 version 6 subversion 0) configuration: Platform: osname=linux, osvers=2.4.6-3.1enterprise, archname=i386-linux uname='linux stripples.devel.redhat.com 2.4.6-3.1enterprise #1 smp tue jul 24 14:03:17 edt 2001 i686 unknown ' config_args='-des -Doptimize=-O2 -march=i386 -mcpu=i686 -Dcc=gcc -Dcccdlflags=-fPIC -Dinstallprefix=/usr -Dprefix= /usr -Darchname=i386-linux -Dd_dosuid -Dd_semctl_semun -Di_db -Di_ndbm -Di_gdbm -Di_shadow -Di_syslog -Dman3ext=3pm -U uselargefiles' hint=recommended, useposix=true, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=undef d_sfio=undef uselargefiles=undef use64bitint=undef use64bitall=undef uselongdouble=undef usesocks=undef Compiler: cc='gcc', optimize='-O2 -march=i386 -mcpu=i686', gccversion=2.96 20000731 (Red Hat Linux 7.1 2.96-96) cppflags='-fno-strict-aliasing -I/usr/local/include' ccflags ='-fno-strict-aliasing -I/usr/local/include' stdchar='char', d_stdstdio=define, usevfork=false intsize=4, longsize=4, ptrsize=4, doublesize=8 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=4 alignbytes=4, usemymalloc=n, prototype=define Linker and Libraries: ld='gcc', ldflags =' -L/usr/local/lib' libpth=/usr/local/lib /lib /usr/lib libs=-lnsl -ldl -lm -lc -lcrypt libc=/lib/libc-2.2.4.so, so=so, useshrplib=false, libperl=libperl.a Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic' cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib' $
Date: Fri, 31 Jan 2003 01:19:46 -0700 (MST)
From: Rob Brown <rob [...] roobik.com>
To: cpan2rpm <bug-cpan2rpm [...] rt.cpan.org>
CC: BBB [...] cpan.org, <ecalder [...] cpan.org>
Subject: Re: [cpan #2013] Segmention Fault
RT-Send-Cc:
I think it is crashing because it hits an eval while already within an eval. There are several modules out there with "eval" contained within the Makefile.PL. On Fri, 31 Jan 2003, cpan2rpm wrote: Show quoted text
> There is no need to reply to this message right now. Your bug in cpan2rpm has been assigned an ID of [cpan #2013]. Please include the string: > > [cpan #2013] > > in the subject line of all future correspondence about this issue. To do so, > you may reply to this message. > > Thank you, > bug-cpan2rpm@rt.cpan.org > > -------------------------------------------------------------------------
Fixed in cpan2rpm cvs revision -r2.106
Sorry, bug reopened. $ cpan2rpm MailTools -- cpan2rpm - Ver: 2.011 -- Searching CPAN website Found URL http://search.cpan.org/CPAN/authors/id/M/MA/MARKOV/MailTools-1.58.tar.gz Tarball extraction: [/home/rob/redhat/SOURCES/MailTools-1.58.tar.gz] Metadata retrieval Segmentation fault $ (This weird condition is probably a perl bug because it does not occur under perl 5.8.0.) Attached is a patch which fixes it, (or at least buttwags around the perl bug), but it is not recommended to apply. It is only for review and debugging purposes. From cvs log revision 2.111 date: 2003/02/04 05:37:30; author: ekkis; state: Exp; lines: +17 -11 - silenced output of Makefile.PL (again - the code to do that got wiped out with the transition to do() from eval()) I guess that ekkis guy must have been smokin something pretty good at 5:37 am when this change was committed, eh? Dang, that's the second time I removed that "local *STDERR" code! :-D Here are my details: $ cat /etc/redhat-release Red Hat Linux release 7.3 (Valhalla) $ uname -a Linux skip 2.4.18-3 #1 Thu Apr 18 07:37:53 EDT 2002 i686 unknown $ perl -V Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration: Platform: osname=linux, osvers=2.4.17-0.13smp, archname=i386-linux uname='linux daffy.perf.redhat.com 2.4.17-0.13smp #1 smp fri feb 1 10:30:48 est 2002 i686 unknown ' config_args='-des -Doptimize=-O2 -march=i386 -mcpu=i686 -Dcc=gcc -Dcf_by=Red Hat, Inc. -Dcccdlflags=-fPIC -Dinstallprefix =/usr -Dprefix=/usr -Darchname=i386-linux -Dvendorprefix=/usr -Dsiteprefix=/usr -Uusethreads -Uuseithreads -Uuselargefiles -D d_dosuid -Dd_semctl_semun -Di_db -Di_ndbm -Di_gdbm -Di_shadow -Di_syslog -Dman3ext=3pm' hint=recommended, useposix=true, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=undef d_sfio=undef uselargefiles=undef usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef Compiler: cc='gcc', ccflags ='-fno-strict-aliasing -I/usr/local/include', optimize='-O2 -march=i386 -mcpu=i686', cppflags='-fno-strict-aliasing -I/usr/local/include' ccversion='', gccversion='2.96 20000731 (Red Hat Linux 7.2 2.96-109)', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=4 alignbytes=4, usemymalloc=n, prototype=define Linker and Libraries: ld='gcc', ldflags =' -L/usr/local/lib' libpth=/usr/local/lib /lib /usr/lib libs=-lnsl -ldl -lm -lc -lcrypt -lutil perllibs=-lnsl -ldl -lm -lc -lcrypt -lutil libc=/lib/libc-2.2.5.so, so=so, useshrplib=false, libperl=libperl.a Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic' cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib'
Index: cpan2rpm =================================================================== RCS file: /var/cvs/cpan2rpm/cpan2rpm,v retrieving revision 2.134 diff -w -u -r2.134 cpan2rpm --- cpan2rpm 9 Feb 2003 07:26:26 -0000 2.134 +++ cpan2rpm 10 Feb 2003 07:44:21 -0000 @@ -289,7 +289,7 @@ # we want to protect us from exit()ing but without modifying the # actual Makefile.PL since we may be operating in a directory - my $PL = qq/\$^W = 0; local (*STDOUT, *STDERR);\n/; + my $PL = ""; $PL .= readfile(); $PL =~ s/\bexit\b/return/gs; (undef, $_) = $Temp ? tempfile() : (undef, "$TMPDIR/Makefile.$$");
Oh, the patch was diffed from cvs revision 2.134: https://rt.cpan.org/Ticket/Attachment/5366/7703/cpan2rpm.segv2.patch
RT-Send-CC: ECALDER [...] cpan.org
Fixed in cpan2rpm -r2.151 in cvs.