Bug 671235

Summary: cmdline_args doesn't return arguments after a NULL argument
Product: Red Hat Enterprise Linux 6 Reporter: Marc Milgram <mmilgram>
Component: systemtapAssignee: Frank Ch. Eigler <fche>
Status: CLOSED ERRATA QA Contact: qe-baseos-tools-bugs
Severity: low Docs Contact:
Priority: low    
Version: 6.0CC: mjw, pmuller, wcohen
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: systemtap-1.6-1.el6 Doc Type: Bug Fix
Doc Text:
Cause The cmdline_string() function used to concatenate commandline arguments would abort the concatenation when it encountered a NULL pointer for an argument. Consequence The cmdline_string() function would not print any arguments following a null argument. Fix The cmdline_string() function insert "" for empty string. Result The cmdline_args() function now prints all arguments from the command line including ones that follow a NULL argument.
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-12-06 15:17:35 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
cmdlinefail.stp
none
Proposed patch none

Description Marc Milgram 2011-01-20 19:57:42 UTC
Created attachment 474525 [details]
cmdlinefail.stp

Description of problem:
In tapset context.stp, cmdline_args won't return data after the first NULL argument.

Version-Release number of selected component (if applicable):
systemtap-1.2-9.el6.x86_64


How reproducible:
100%

Steps to Reproduce:
1. stap cmdlinefail.stp   (see attached file)
2. In a separate window, execute: /bin/ls "" additional arguments
3. Look at stap output
  
Actual results:
stap displays: /bin/ls

Expected results:
stap displays: /bin/ls ^@ additional arguments
Note, that instead of ^@, it could display something else, or even nothing, but it should display the additional arguments.

Additional info:

Comment 1 Marc Milgram 2011-01-20 20:06:07 UTC
Created attachment 474528 [details]
Proposed patch

I attached a suggested fix.

Comment 4 Frank Ch. Eigler 2011-06-10 19:07:42 UTC
upstream commit 5e3f644

Comment 8 William Cohen 2011-11-09 16:08:29 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Cause
    The cmdline_string() function used to concatenate commandline arguments
    would abort the concatenation when it encountered a NULL pointer for an
    argument.
Consequence
    The cmdline_string() function would not print any arguments following
    a null argument.
Fix
    The cmdline_string() function insert "" for empty string.
Result
    The cmdline_args() function now prints all arguments from the command
    line including ones that follow a NULL argument.

Comment 9 errata-xmlrpc 2011-12-06 15:17:35 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.

http://rhn.redhat.com/errata/RHBA-2011-1517.html