Bug 1446765

Summary: lshw html output does not escape the ampersand character
Product: Red Hat Enterprise Linux 7 Reporter: Mike Gahagan <mgahagan>
Component: lshwAssignee: Petr Oros <poros>
Status: CLOSED ERRATA QA Contact: Mike Gahagan <mgahagan>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 7.4CC: skozina
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: lshw-B.02.18-9.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-04-10 10:03:13 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1472889    

Description Mike Gahagan 2017-04-28 20:10:38 UTC
Description of problem:
:: [  BEGIN   ] :: Running lshw and logging html output :: actually running 'lshw -html > /mnt/testarea/check-output/logs/lshw.out.html'
:: [   PASS   ] :: Running lshw and logging html output (Expected 0, got 0)
:: [  BEGIN   ] :: Validating html output :: actually running 'xmllint --html --noout /mnt/testarea/check-output/logs/lshw.out.html'
/mnt/testarea/check-output/logs/lshw.out.html:1551: HTML parser error : htmlParseEntityRef: no name
: </td><td class="second">Integrated Lights-Out Standard Slave Instrumentation &
                                                                               ^
/mnt/testarea/check-output/logs/lshw.out.html:1963: HTML parser error : htmlParseEntityRef: no name
">product: </td><td class="second">Xeon E7 v3/Xeon E5 v3/Core i7 R3 QPI Link 0 &

offending line:
   1551                 <tr><td class="first">product: </td><td class="second">Integrated Lights-Out Sta   
   1551 ndard Slave Instrumentation & System Support</td></tr>
                                   ^^^

relevant entries still render in Firefox but fails xmllint's html validator.


Version-Release number of selected component (if applicable):

lshw-B.02.18-4.el7.x86_64

How reproducible:
always, depending on the hardware

Steps to Reproduce:
1. run lshw -html on a system with a hardware description field that contains an ampersand.
2.
3.

Actual results:
ampersand character is not escaped 

Expected results:
should escape the literal ampersand '&' with &amp for html compliance.


Additional info:

Comment 5 Mike Gahagan 2017-12-04 19:17:39 UTC
This issue is fixed in lshw-B.02.18-9.el7:

               <tr><td class="first">product: </td><td class="second">Integrated Lights-Out Standard Slave Instrumentation &amp; System Support</td></tr>

                                        ^^^^^^^^

:: [   LOG    ] :: Package lshw is present
:: [   LOG    ] :: Package versions:
:: [   LOG    ] ::   lshw-B.02.18-9.el7.x86_64
:: [   PASS   ] :: Check to see if beaker lshw is not installed (Expected 0, got 0)
:: [   PASS   ] :: Getting lshw version information (Expected 0, got 0)
:: [   PASS   ] :: Getting lshw command line help information (Expected 0, got 0)
:: [   PASS   ] :: Running lshw with no options and logging output (Expected 0, got 0)
:: [   PASS   ] :: Running lshw and logging sanitized output (Expected 0, got 0)
:: [   PASS   ] :: Checking that sensitive information is removed from sanitized output (Expected 0, got 0)
:: [   PASS   ] :: Generating diff of unsanitized and sanitized output (Expected 0,1, got 1)
:: [   PASS   ] :: Running lshw and logging html output (Expected 0, got 0)
:: [   PASS   ] :: Validating html output (Expected 0, got 0)
:: [   PASS   ] :: running lshw and logging xml output (Expected 0, got 0)
:: [   PASS   ] :: Validating xml output (Expected 0, got 0)
:: [   PASS   ] :: Running lshw and logging json output (Expected 0, got 0)
:: [   PASS   ] :: Validating json output (Expected 0, got 0)
:: [   PASS   ] :: Running lshw and logging sql output (Expected 0, got 0)
:: [   PASS   ] :: Validating sql output (Expected 0, got 0)
:: [   LOG    ] :: Duration: 23s
:: [   LOG    ] :: Assertions: 15 good, 0 bad
:: [   PASS   ] :: RESULT: Test

Comment 8 errata-xmlrpc 2018-04-10 10:03:13 UTC
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://access.redhat.com/errata/RHEA-2018:0689