Bug 691733

Summary: gnome_date_edit_set_time() wrapped incorrectly, passing bogus data that result in crashes
Product: Red Hat Enterprise Linux 6 Reporter: Eduard Benes <ebenes>
Component: gnome-python2Assignee: Matthew Barnes <mbarnes>
Status: CLOSED WONTFIX QA Contact: Desktop QE <desktop-qa-list>
Severity: medium Docs Contact:
Priority: medium    
Version: 6.1   
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 691885 859524 (view as bug list) Environment:
Last Closed: 2017-12-06 12:12:23 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 682670    

Description Eduard Benes 2011-03-29 10:54:23 UTC
Description of problem:
audit-viewer segfaults on an attempt to modify properties for a report with no events.

Version-Release number of selected component (if applicable):
audit-2.0.4-1.el6
audit-2.0.6-1.el6

How reproducible:
always

Steps to Reproduce:
1. open audit-viewer in terminal
2. create an empty report in main window:
view -> new report on this view -> go to tab "date filter" and limit some dates in the past where there are no records in audit.log -> hit OK
3. again in main window: 
report -> properties
  
Actual results:
# audit-viewer 
/usr/share/audit-viewer/dialog_base.py:39: GtkWarning: GtkSpinButton: setting an adjustment with non-zero page size is deprecated
  glade_xml = gtk.glade.XML(settings.glade_file_path, toplevel_name)
Segmentation fault

Expected results:
no segmentation fault, and properties window shows up

Additional info:
This is not a regression in RHEL 6, yet untested in RHEL 5.

Comment 1 Eduard Benes 2011-03-29 10:55:25 UTC
Ooops, the affected package version should be set to:
audit-viewer-0.5.1-3.el6

Comment 2 Miloslav Trmač 2011-03-29 15:48:11 UTC
Thanks for your report.

I'm afraid I cannot reproduce this; what architecture and versions of python, gtk+extra, python-gtkextra do you use?

I'd appreciate a core file if you can get one, and a valgrind log could be very useful as well.

Comment 4 Miloslav Trmač 2011-03-29 19:23:26 UTC
Thanks, this is indeed PPC-specific.

There are two problems:

* pygobject2 handles time_t incorrectly: it uses
> time_t the_time
> ... PyArg_ParseTupleAndKeywords(args, kwargs, "i:...", kwlist, &the_time) ...
  which incorrectly accesses time_t using the "int" type.  This causes undefined
  behavior; in practice, if this works at all, it usually stores the parsed
  value into the top 32 bits of the time_t value instead of the lower 32 bits on
  big-endian architectures such as ppc64.

  This incorrect code is generated while compiling gnome-python2, in particular
  _wrap_gnome_date_edit_set_time().  This function passes an incorrect time_t
  value to gnome_date_edit_set_time().

* gnome_date_edit_set_time(), in libgnomeui, does not handle errors from
  localtime():
> mytm = localtime(&the_time);
> ... strftime(..., mytm) ...
  passing NULL to strftime, which crashes.


I'll reasign this to python-gnome2, where the wrapper definitely needs to be fixed (probably by fixing pygobject2 first, and regenerating python-gnome2) both to avoid the crash, and to get correct date values.  I'll also create a clone for libgnomeui (which "only" crashes on input that it can't reasonably handle).

Comment 5 RHEL Program Management 2011-07-06 01:07:36 UTC
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated
in the current release, Red Hat is unfortunately unable to
address this request at this time. Red Hat invites you to
ask your support representative to propose this request, if
appropriate and relevant, in the next release of Red Hat
Enterprise Linux. If you would like it considered as an
exception in the current release, please ask your support
representative.

Comment 6 Jan Kurik 2017-12-06 12:12:23 UTC
Red Hat Enterprise Linux 6 is in the Production 3 Phase. During the Production 3 Phase, Critical impact Security Advisories (RHSAs) and selected Urgent Priority Bug Fix Advisories (RHBAs) may be released as they become available.

The official life cycle policy can be reviewed here:

http://redhat.com/rhel/lifecycle

This issue does not meet the inclusion criteria for the Production 3 Phase and will be marked as CLOSED/WONTFIX. If this remains a critical requirement, please contact Red Hat Customer Support to request a re-evaluation of the issue, citing a clear business justification. Note that a strong business justification will be required for re-evaluation. Red Hat Customer Support can be contacted via the Red Hat Customer Portal at the following URL:

https://access.redhat.com/