Bug 1451255 - segfault when trying to start with no files in /etc/gssproxy directory
Summary: segfault when trying to start with no files in /etc/gssproxy directory
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: gssproxy
Version: 7.4
Hardware: Unspecified
OS: Unspecified
low
low
Target Milestone: rc
: ---
Assignee: Robbie Harwood
QA Contact: ipa-qe
URL: https://pagure.io/gssproxy/pull-reque...
Whiteboard:
Keywords:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-05-16 08:43 UTC by michal novacek
Modified: 2018-04-10 11:10 UTC (History)
7 users (show)

(edit)
Clone Of:
(edit)
Last Closed: 2018-04-10 11:09:51 UTC


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2018:0709 None None None 2018-04-10 11:10 UTC

Description michal novacek 2017-05-16 08:43:52 UTC
Description of problem:
Removing configuration files in /etc/gssproxy/ directory causes 'systemctl start gssproxy' to segfault.

Version-Release number of selected component (if applicable):
gssproxy-0.7.0-3.el7.x86_64
kernel-3.10.0-666.el7.x86_64

How reproducible: always

Steps to Reproduce:
1. remove files in /etc/gssproxy/
2. systemctl start gssproxy

Actual results: segfault, gssproxy not started

Expected results: gssproxy started


Additional info:
May 16 04:40:44 pool-10-34-69-57 kernel: gssproxy[11833]: segfault at 10102be ip 00007fa39315a4dc sp 00007ffe310936b8 error 4 in libc-2.17.so[7fa3930da000+1b8000]

Comment 2 Robbie Harwood 2017-05-16 18:19:02 UTC
We're not going to start without a config file, especially when the distribution ships one by default.  We shouldn't segfault, though.

Comment 3 Robbie Harwood 2017-05-16 22:45:24 UTC
Fix applied to fedora in gssproxy >= 0.7.0-6.

Comment 5 Mohammad Rizwan 2018-01-10 09:24:37 UTC
version:
gssproxy-0.7.0-17.el7.x86_64
kernel-3.10.0-828.el7.x86_64

Steps:

1. mv /etc/gssproxy/* /tmp/gssproxy/
2. systemctl start gssproxy
3. systemctl status gssproxy

Additinal steps:

4. systemctl stop gssproxy
5. systemctl start gssproxy
6. systemctl status gssproxy
7. mv /tmp/gssproxy/* /etc/gssproxy/
8. systemctl start gssproxy
9. systemctl status gssproxy

Step 5 failed to start the gssproxy. When restored the config file to /etc/gssproxy/, it started successfully.

Actual result:

[root@qe-blade-01 ~]# systemctl status gssproxy
● gssproxy.service - GSSAPI Proxy Daemon
   Loaded: loaded (/usr/lib/systemd/system/gssproxy.service; disabled; vendor preset: disabled)
   Active: active (running) since Wed 2018-01-10 04:08:24 EST; 6s ago
  Process: 13511 ExecStart=/usr/sbin/gssproxy -D (code=exited, status=0/SUCCESS)
 Main PID: 13512 (gssproxy)
   CGroup: /system.slice/gssproxy.service
           └─13512 /usr/sbin/gssproxy -D

Jan 10 04:08:24 master.testrelm.test systemd[1]: Starting GSSAPI Proxy Daemon...
Jan 10 04:08:24 master.testrelm.test systemd[1]: Started GSSAPI Proxy Daemon.
[root@qe-blade-01 ~]# 
[root@qe-blade-01 ~]# 
[root@qe-blade-01 ~]# mv /etc/gssproxy/* /tmp/gssproxy/
[root@qe-blade-01 ~]# ll /etc/gssproxy/
total 0
[root@qe-blade-01 ~]# systemctl start gssproxy
[root@qe-blade-01 ~]# systemctl status gssproxy
● gssproxy.service - GSSAPI Proxy Daemon
   Loaded: loaded (/usr/lib/systemd/system/gssproxy.service; disabled; vendor preset: disabled)
   Active: active (running) since Wed 2018-01-10 04:08:24 EST; 3min 7s ago
  Process: 13511 ExecStart=/usr/sbin/gssproxy -D (code=exited, status=0/SUCCESS)
 Main PID: 13512 (gssproxy)
   CGroup: /system.slice/gssproxy.service
           └─13512 /usr/sbin/gssproxy -D

Jan 10 04:08:24 master.testrelm.test systemd[1]: Starting GSSAPI Proxy Daemon...
Jan 10 04:08:24 master.testrelm.test systemd[1]: Started GSSAPI Proxy Daemon.
[root@qe-blade-01 ~]# 
[root@qe-blade-01 ~]# systemctl stop gssproxy
[root@qe-blade-01 ~]# 
[root@qe-blade-01 ~]# systemctl status gssproxy
● gssproxy.service - GSSAPI Proxy Daemon
   Loaded: loaded (/usr/lib/systemd/system/gssproxy.service; disabled; vendor preset: disabled)
   Active: inactive (dead) since Wed 2018-01-10 04:11:51 EST; 6s ago
  Process: 13511 ExecStart=/usr/sbin/gssproxy -D (code=exited, status=0/SUCCESS)
 Main PID: 13512 (code=exited, status=0/SUCCESS)

Jan 10 04:08:24 master.testrelm.test systemd[1]: Starting GSSAPI Proxy Daemon...
Jan 10 04:08:24 master.testrelm.test systemd[1]: Started GSSAPI Proxy Daemon.
Jan 10 04:11:51 master.testrelm.test systemd[1]: Stopping GSSAPI Proxy Daemon...
Jan 10 04:11:51 master.testrelm.test systemd[1]: Stopped GSSAPI Proxy Daemon.
[root@qe-blade-01 ~]# systemctl start gssproxy
Job for gssproxy.service failed because the control process exited with error code. See "systemctl status gssproxy.service" and "journalctl -xe" for details.

[root@qe-blade-01 ~]# tail -10f /var/log/messages 
Jan 10 04:08:24 localhost systemd: Starting GSSAPI Proxy Daemon...
Jan 10 04:08:24 localhost systemd: Started GSSAPI Proxy Daemon.
Jan 10 04:11:51 localhost systemd: Stopping GSSAPI Proxy Daemon...
Jan 10 04:11:51 localhost systemd: Stopped GSSAPI Proxy Daemon.
Jan 10 04:12:06 localhost systemd: Starting GSSAPI Proxy Daemon...
Jan 10 04:12:06 localhost gssproxy: Failed to open config file: 2 (No such file or directory)
Jan 10 04:12:06 localhost systemd: gssproxy.service: control process exited, code=exited status=1
Jan 10 04:12:06 localhost systemd: Failed to start GSSAPI Proxy Daemon.
Jan 10 04:12:06 localhost systemd: Unit gssproxy.service entered failed state.
Jan 10 04:12:06 localhost systemd: gssproxy.service failed.

[root@qe-blade-01 ~]# mv /tmp/gssproxy/* /etc/gssproxy/
[root@qe-blade-01 ~]# systemctl start gssproxy
[root@qe-blade-01 ~]# systemctl status gssproxy
● gssproxy.service - GSSAPI Proxy Daemon
   Loaded: loaded (/usr/lib/systemd/system/gssproxy.service; disabled; vendor preset: disabled)
   Active: active (running) since Wed 2018-01-10 04:08:24 EST; 6s ago
  Process: 13511 ExecStart=/usr/sbin/gssproxy -D (code=exited, status=0/SUCCESS)
 Main PID: 13512 (gssproxy)
   CGroup: /system.slice/gssproxy.service
           └─13512 /usr/sbin/gssproxy -D

Jan 10 04:08:24 master.testrelm.test systemd[1]: Starting GSSAPI Proxy Daemon...
Jan 10 04:08:24 master.testrelm.test systemd[1]: Started GSSAPI Proxy Daemon.

Comment 7 Robbie Harwood 2018-01-10 16:23:12 UTC
(Housekeeping: marking QE notes as private.)

That works, thanks!

Comment 8 Mohammad Rizwan 2018-01-11 07:00:25 UTC
Based on comment#5 and comment#7, making this bug as verified.

Comment 11 errata-xmlrpc 2018-04-10 11:09:51 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/RHBA-2018:0709


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