>Number: 3493 >Category: mod_so >Synopsis: os/unix/os.c dlclose()s objects before module cleanups are >complete >Confidential: no >Severity: serious >Priority: medium >Responsible: apache >State: open >Class: sw-bug >Submitter-Id: apache >Arrival-Date: Fri Dec 4 16:20:01 PST 1998 >Last-Modified: >Originator: [EMAIL PROTECTED] >Organization: apache >Release: 1.3.3 >Environment: NetBSD, any version from 1.0 on up. >Description: When a file is loaded via LoadFile or LoadModule on UN*X, it is dlopen()ed into memory. During cleanups (such as a CGI child calling ap_cleanup_for_exec()), the dlclose() hooks are called, but in no particular order with respect to other registered cleanup hooks. This is bad, because a module which is loaded with LoadModule may register cleanups that Apache attempts to run _after_ it has dlclose()d that module. This results in a hard to trace back SIGSEGV. >How-To-Repeat: See "mod_perl interfering with `regular' CGI?" recent thread on the modperl list. E-mail if you need further details. >Fix: Make sure all dlclose() hooks are run after ALL other cleanups are run. >Audit-Trail: >Unformatted: [In order for any reply to be added to the PR database, ] [you need to include <[EMAIL PROTECTED]> in the Cc line ] [and leave the subject line UNCHANGED. This is not done] [automatically because of the potential for mail loops. ] [If you do not include this Cc, your reply may be ig- ] [nored unless you are responding to an explicit request ] [from a developer. ] [Reply only with text; DO NOT SEND ATTACHMENTS! ]
