Bug 249407

Summary: Passing not existing policy file name causes segmentation fault.
Product: [Fedora] Fedora Reporter: Eduard Benes <ebenes>
Component: setoolsAssignee: Daniel Walsh <dwalsh>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: 7CC: ebenes, p.van.egdom, triage
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-05-17 12:46:47 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:
Bug Depends On: 249402    
Bug Blocks:    

Description Eduard Benes 2007-07-24 14:29:05 UTC
+++ This bug was initially created as a clone of Bug #249402 +++

Description of problem:
Running seinfo tool with option and specified policy file that does not exist 
causes segmentation fault. 

Version-Release number of selected component (if applicable):
setools-3.0-3.el5
setools-3.0-2.fc6
setools-3.1-4.fc7

How reproducible:
always

Steps to Reproduce:
1. seinfo -u AnyNonPolicyFileName
Instead of "-u" can be used any other option {c,t,a, ...}
  
Actual results:
Segmentation fault.

Expected results:
Should not segfault ...

Additional info:
This seems to be fixed in setools version 3.2-3 included in rawhide.

[root@pipa01 ~]# seinfo -u xyz
Rule loading disabled
Segmentation fault
[root@pipa01 ~]# rpm -q setools
setools-3.0-3.el5
[root@pipa01 ~]# gdb seinfo
GNU gdb Red Hat Linux (6.5-16.el5rh)
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db 
library "/lib/libthread_db.so.1".

(gdb) run -u xyz
Starting program: /usr/bin/seinfo -u xyz
Rule loading disabled

Program received signal SIGSEGV, Segmentation fault.
qpol_open_policy_from_file_no_rules (path=0x8ae23d0 "xyz", policy=0x8ae23e0, 
fn=0x61f350 <qpol_handle_route_to_callback>, varg=0x8ae23e0) at policy.c:995
995     policy.c: No such file or directory.
        in policy.c
(gdb) bt
#0  qpol_open_policy_from_file_no_rules (path=0x8ae23d0 "xyz", 
policy=0x8ae23e0, fn=0x61f350 <qpol_handle_route_to_callback>, varg=0x8ae23e0)
    at policy.c:995
#1  0x0061f5bf in apol_policy_open_no_rules (path=0x8ae23d0 "xyz", 
policy=0xbf98c3e4, msg_callback=0, callback_arg=0x0) at policy.c:134
#2  0x0804d4a2 in main (argc=3, argv=0xbf98c494) at seinfo.c:1375
#3  0x00125dec in __libc_start_main () from /lib/libc.so.6
#4  0x0804a741 in _start ()

Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.
(gdb)

Comment 1 Daniel Walsh 2007-10-12 11:18:57 UTC
Fixed in 3.2-3.fc7

Comment 2 Bug Zapper 2008-05-14 13:39:20 UTC
This message is a reminder that Fedora 7 is nearing the end of life. Approximately 30 (thirty) days from now Fedora will stop maintaining and issuing updates for Fedora 7. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as WONTFIX if it remains open with a Fedora 'version' of '7'.

Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version prior to Fedora 7's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that we may not be able to fix it before Fedora 7 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora please change the 'version' of this bug. If you are unable to change the version, please add a comment here and someone will do it for you.

Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete. If possible, it is recommended that you try the newest available Fedora distribution to see if your bug still exists.

Please read the Release Notes for the newest Fedora distribution to make sure it will meet your needs:
http://docs.fedoraproject.org/release-notes/

The process we are following is described here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 3 Peter van Egdom 2008-05-17 12:46:47 UTC
Confirmed fixed in "setools-3.3.4-1.fc9.i386" on Fedora release 9 (Sulphur) :

 [root@pavilion tmp]# seinfo -u xyz
 ERROR: Unable to open policy xyz.
 ERROR: No such file or directory
 [root@pavilion tmp]# rpm -q setools
 setools-3.3.4-1.fc9.i386
 [root@pavilion tmp]# cat /etc/fedora-release 
 Fedora release 9 (Sulphur)