Bug 1024517 - perl.req returns wrong set of required modules due parsing bug
perl.req returns wrong set of required modules due parsing bug
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: rpm (Show other bugs)
6.4
x86_64 Linux
unspecified Severity low
: rc
: ---
Assigned To: packaging-team-maint
Marek Marusic
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2013-10-29 16:19 EDT by jernej.porenta
Modified: 2015-07-22 03:02 EDT (History)
7 users (show)

See Also:
Fixed In Version: rpm-4.8.0-40.el6
Doc Type: Bug Fix
Doc Text:
If a Perl script in a package contained a string declared as a here-document that included the "use" or "require" words, or a multiline string with these words, the package in some cases had incorrect dependencies when it was created using the "rpmbuild" command. Now, the "use" and "require" strings are ignored as keywords in here-documents and multiline strings, which prevents the problem from occurring.
Story Points: ---
Clone Of:
: 1191121 (view as bug list)
Environment:
Last Closed: 2015-07-22 03:02:58 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description jernej.porenta 2013-10-29 16:19:49 EDT
Description of problem:
/usr/lib/rpm/perl.req returns wrong set of required modules for rpm-build spec files, since it has a parsing bug when a comment in perl module starts with "use something etc" (perl.req returns depencency on perl(something).

Version-Release number of selected component (if applicable):
rpm-build-4.8.0-32.el6.x86_64

How reproducible:
- the bug is reproducable with certain version of some SpamAssassin module, which was later fixed to prevent such bugs with rpm-builds perl.req scripts


Steps to Reproduce:
1. curl -o /tmp/DependencyInfo.pm "http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Util/DependencyInfo.pm?revision=1531991&view=co"
2. /usr/lib/rpm/perl.req /tmp/DependencyInfo.pm

Actual results:
perl(bytes)
perl(re)
perl(strict)
perl(these)
perl(vars)
perl(warnings)

Expected results:
perl(bytes)
perl(re)
perl(strict)
perl(vars)
perl(warnings)

Additional info:
The script is parsing also through comments section of perl module, so it wrongly parses out comments starting with "use XXXX asdfasd" in the beginning of the line.
Comment 2 Dusty Mabe 2014-08-22 10:50:19 EDT
Moving to rpm component as the rpm-build package is a subpackage of rpm. 

This looks like a dup of 1026750. Can someone else confirm and mark it as such?
Comment 4 Florian Festi 2014-12-15 07:27:53 EST
Patch available upstream.
Comment 5 Dusty Mabe 2014-12-15 09:11:16 EST
(In reply to Florian Festi from comment #4)
> Patch available upstream.

That's great news. Do you have a link to the patch?

Thanks
Comment 7 Karel Srot 2015-01-06 08:48:23 EST
Hi Florian,
could you please tell me how is this different from the bug 1026750? I can see that patches are different, the description seems similar though.
Comment 8 Karel Srot 2015-01-06 08:49:20 EST
(In reply to Karel Srot from comment #7)
> Hi Florian,
> could you please tell me how is this different from the bug 1026750? I can
> see that patches are different, the description seems similar though.

Please ignore.
Comment 13 errata-xmlrpc 2015-07-22 03:02:58 EDT
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2015-1452.html

Note You need to log in before you can comment on or make changes to this bug.