Bug 674852 - snmp-agent no longer works with Fedora 14
snmp-agent no longer works with Fedora 14
Status: CLOSED CURRENTRELEASE
Product: 389
Classification: Community
Component: snmp (Show other bugs)
1.2.8
i686 Linux
medium Severity medium
: ---
: ---
Assigned To: Nathan Kinder
Viktor Ashirov
: VerifiedUpstream
Depends On:
Blocks: 639035 389_1.2.8 679210 681351
  Show dependency treegraph
 
Reported: 2011-02-03 09:40 EST by David Yaffe
Modified: 2015-12-07 11:45 EST (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 681351 (view as bug list)
Environment:
Last Closed: 2015-12-07 11:45:08 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
Simple fix for segfault in ldap-agent-bin (466 bytes, patch)
2011-02-23 14:11 EST, Andrej Ota
no flags Details | Diff

  None (edit)
Description David Yaffe 2011-02-03 09:40:30 EST
Description of problem:
snmp-agent crashes when lauching.

Version-Release number of selected component (if applicable):
389-admin-console-1.1.5-1.fc14.noarch
fc14.i686389-ds-base-1.2.8-0.1.a1.fc14.i686
389-console-1.1.4-1.fc14.noarch
389-admin-1.1.14-1.fc14.i686
389-admin-console-doc-1.1.5-1.fc14.noarch
389-dsgw-1.1.6-1.fc14.i686
389-ds-console-1.2.3-1.fc14.noarch
389-ds-console-doc-1.2.3-1.fc14.noarch
389-adminutil-1.1.13-1.fc14.i686
389-ds-1.2.1-1.fc14.noarch

How reproducible:
start dirsrv-snmp

Steps to Reproduce:
1. configure /etc/dirsrv/config/ldap-agent.conf to refer to the proper directory instance
2. start the snmp agent.
3.
  
Actual results:
using service dirsrv-snmp start, the standard [FAILED] message is displayed.
/var/log/messages contains the following:
Feb  3 08:31:06 daisy kernel: [71624.891859] ldap-agent-bin[29793]: segfault at 0 ip 00abd978 sp bfdf5684 error 6 in libc-2.12.90.so[a44000+18d000]
Feb  3 08:31:06 daisy abrt[29796]: saved core dump of pid 29793 (/usr/sbin/ldap-agent-bin) to /var/spool/abrt/ccpp-1296743466-29793.new/coredump (991232 bytes)
Feb  3 08:31:06 daisy abrtd: Directory 'ccpp-1296743466-29793' creation detected
Feb  3 08:31:06 daisy abrtd: Crash is in database already (dup of /var/spool/abrt/ccpp-1296671123-3787)
Feb  3 08:31:06 daisy abrtd: Deleting crash ccpp-1296743466-29793 (dup of ccpp-1296671123-3787), sending dbus signal

Expected results:
The SNMP agent starts. With version 1.2.7, the SNMP agent started when selinux was disabled.

Additional info:
System is a new installation of Fedora 14, with all patches applied.

manually launching snmp agent results:
[root@daisy ~]# sh -x ldap-agent -D /etc/dirsrv/config/ldap-agent.conf
+ LIB_DIR=:::
+ BIN_DIR=/usr/sbin
+ COMMAND=ldap-agent-bin
+ MIBS=
+ export MIBS
+ LD_LIBRARY_PATH=:::
+ export LD_LIBRARY_PATH
+ PATH=/usr/sbin
+ export PATH
+ ORIGINAL_IFS='
'
+ IFS=:
+ for dir in '${PATH}'
+ '[' -x /usr/sbin/ldap-agent-bin ']'
+ IFS='
'
+ /usr/sbin/ldap-agent-bin -D /etc/dirsrv/config/ldap-agent.conf
/usr/sbin/ldap-agent: line 48: 29813 Segmentation fault      (core dumped) ${dir}/${COMMAND} "$@"
+ exit 139
Comment 1 Nathan Kinder 2011-02-03 12:48:34 EST
I am unable to reproduce the crash on my fully updated F14 system.  Please install the 389-ds-base-debuginfo package and launch ldap-agent-bin manually from gdb.  You should be able to generate a stack trace so we can see what is going on.
Comment 2 Andrej Ota 2011-02-23 14:11:08 EST
Created attachment 480557 [details]
Simple fix for segfault in ldap-agent-bin

I have also stumbeled on this bug this morning. The bug is caused by uninitialized buflen variable in ldap/servers/snmp/main.c, function load_config().

It's triggered by a call to ldif_read_record, which checks for buflen and reallocates memory if needed. As buflen isn't properly initialized to 0, this means the method randomly (or in my case not so randomly) segfaults while reading dse.ldif configuration of server instance.

I have attached a patch to fix this bug.
Comment 3 Nathan Kinder 2011-03-01 16:48:26 EST
Pushed patch contributed by Andrej to master.  Thanks for helping by finding the cause of the crash!

Counting objects: 11, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (6/6), done.
Writing objects: 100% (6/6), 608 bytes, done.
Total 6 (delta 5), reused 0 (delta 0)
To ssh://git.fedorahosted.org/git/389/ds.git
   6d4566e..9b5d9e6  master -> master

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