Bug 155122 - /bin/mail run from within a cronjob fails if nscd is not running and nss_ldap is used
/bin/mail run from within a cronjob fails if nscd is not running and nss_ldap...
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 4
Classification: Red Hat
Component: mailx (Show other bugs)
4.0
i686 Linux
medium Severity high
: ---
: ---
Assigned To: Ivana Varekova
:
Depends On:
Blocks: 187538
  Show dependency treegraph
 
Reported: 2005-04-16 13:24 EDT by Jay Turner
Modified: 2015-01-07 19:09 EST (History)
7 users (show)

See Also:
Fixed In Version: RHBA-2006-0317
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2006-05-17 16:08:02 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Jay Turner 2005-04-16 13:24:52 EDT
+++ This bug was initially created as a clone of Bug #142860 +++

From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4.3)
Gecko/20040924

Description of problem:
If crond runs a shell script (using any shell and as any user) and the
shell script calls /bin/mail while nscd is not running (ldap is used
here for auth and user lookup) /bin/mail will segfault.  Delivery by
command line is still OK (environment issue?).


Version-Release number of selected component (if applicable):
glibc-2.2.4-32.17

How reproducible:
Always

Steps to Reproduce:
1. Setup host to authenticate and perform user lookups via LDAP with
ssl start_tls and to cache requests using auth_config
2. setup a cron job that executes the attached script (calls /bin/mail)
3. stop nscd
4. run cron job again and /bin/mail will segfault.
5. start nscd
6. script will run properly
7. repeat steps 3 to 6 until unamused.
    

Actual Results:  /bin/mail segfaults.  Setting ulimit -c unlimited in
the script before the call to /bin/mail will cause a core dump.

Expected Results:  /bin/mail does not segfault but instead actually
sends mail...

Additional info:

This could be within /bin/mail but somehow I don't think that it is,
the circumstances are far too specific to be a /bin/mail problem. 
Also, you can run this from the command line and it will NOT segfault.
 This causes data that should explictly be sent to a person to not be,
then at that point data is lost.

This script is as simple as
#!/bin/bash
ulimit -c unlimited
echo "This is a test" > tmp.msg
/bin/mail -s "Testing" youremail@yourdomain.tld < tmp.msg
rm -f tmp.msg

Run this script from cron with the appropriate LDAP settings as above.  

Attached are the back trace from a core dump from RHEL 2.1 AS, RHEL 3
WS, and our /etc/ldap.conf.
Comment 2 Ken Reilly 2005-06-20 16:01:31 EDT
Moved to RHEL4U2Proposed tracker, from the RHEL3U6Proposed, based on Karel's
status in Comment #1. 

Ken Reilly
2-3906
Comment 17 Red Hat Bugzilla 2006-05-17 16:08:02 EDT
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2006-0317.html

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