php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #14728 Static PHP w/SSL DSO startup crash
Submitted: 2001-12-27 22:01 UTC Modified: 2002-08-05 01:00 UTC
Votes:1
Avg. Score:3.0 ± 0.0
Reproduced:0 of 0 (0.0%)
From: tomki at www2 dot forefrontsw dot com Assigned:
Status: No Feedback Package: Reproducible crash
PHP Version: 4.1.1 OS: RH 6.1, Kernel 2.2.19
Private report: No CVE-ID: None
Have you experienced this issue?
Rate the importance of this bug to you:

 [2001-12-27 22:01 UTC] tomki at www2 dot forefrontsw dot com
All configurations are fine..
Config line for PHP:
./configure --with-mysql=/usr/local --with-ldap --with-db3 --with-gdbm --with-imap --with-openssl=/usr/local/ssl/ --with-imap-ssl=/usr/local/ssl --enable-dmalloc --with-apache=../apache_1.3.22/ --sysconfdir=/etc --with-mcrypt=/usr/local --with-mhash=/usr/local/ --enable-track-vars

'/usr/local/apache1322/bin/apachectl start' gives:
bin/apachectl start: httpd could not be started

If I comment out the mod_php4.c line, startup is fine.

'strace /usr/local/apache1322/bin/apachectl start' gives:
execve("/usr/local/apache1322/bin/apachectl", ["/usr/local/apache1322/bin/apachectl", "start"], [/* 26 vars */]) = 0
brk(0)                                  = 0x80a5420
open("/etc/ld.so.preload", O_RDONLY)    = -1 ENOENT (No such file or directory)
open("/lib/i686/mmx/libtermcap.so.2", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/lib/i686/mmx", 0xbffff53c)       = -1 ENOENT (No such file or directory)
open("/lib/i686/libtermcap.so.2", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/lib/i686", 0xbffff53c)           = -1 ENOENT (No such file or directory)
open("/lib/mmx/libtermcap.so.2", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/lib/mmx", 0xbffff53c)            = -1 ENOENT (No such file or directory)
open("/lib/libtermcap.so.2", O_RDONLY)  = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=15001, ...}) = 0
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300\v\0"..., 4096) = 4096
mmap(0, 13896, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40013000
mprotect(0x40016000, 1608, PROT_NONE)   = 0
mmap(0x40016000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x2000) = 0x40016000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=4118299, ...}) = 0
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\250\202"..., 4096) = 4096
mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40017000
mmap(0, 993500, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40018000
mprotect(0x40103000, 30940, PROT_NONE)  = 0
mmap(0x40103000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xea000) = 0x40103000
mmap(0x40107000, 14556, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40107000
close(3)                                = 0
mprotect(0x40018000, 962560, PROT_READ|PROT_WRITE) = 0
mprotect(0x40018000, 962560, PROT_READ|PROT_EXEC) = 0
personality(0 /* PER_??? */)            = 0
getpid()                                = 859
brk(0)                                  = 0x80a5420
brk(0x80a55c0)                          = 0x80a55c0
brk(0x80a6000)                          = 0x80a6000
getuid()                                = 0
getgid()                                = 0
geteuid()                               = 0
getegid()                               = 0
time(NULL)                              = 1009508020
rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGHUP, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGILL, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTRAP, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGABRT, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGFPE, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGBUS, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGSEGV, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGPIPE, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGALRM, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTERM, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGXCPU, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGXFSZ, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGVTALRM, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGPROF, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGUSR1, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGUSR2, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8)  = 0
rt_sigaction(SIGQUIT, {SIG_IGN}, {SIG_DFL}, 8) = 0
socket(PF_UNIX, SOCK_STREAM, 0)         = 3
connect(3, {sun_family=AF_UNIX, sun_path="/var/run/.nscd_socket"}, 110) = -1 ECONNREFUSED (Connection refused)
close(3)                                = 0
open("/etc/nsswitch.conf", O_RDONLY)    = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=1744, ...}) = 0
mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4010b000
read(3, "#\n# /etc/nsswitch.conf\n#\n# An ex"..., 4096) = 1744
brk(0x80a7000)                          = 0x80a7000
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x4010b000, 4096)                = 0
open("/lib/libnss_files.so.2", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=247348, ...}) = 0
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360\33"..., 4096) = 4096
mmap(0, 35232, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4010b000
mprotect(0x40113000, 2464, PROT_NONE)   = 0
mmap(0x40113000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x7000) = 0x40113000
close(3)                                = 0
open("/etc/passwd", O_RDONLY)           = 3
fcntl(3, F_GETFD)                       = 0
fcntl(3, F_SETFD, FD_CLOEXEC)           = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=1588, ...}) = 0
mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40114000
read(3, "root:x:0:0:root,Forefront Softwa"..., 4096) = 1588
close(3)                                = 0
munmap(0x40114000, 4096)                = 0
uname({sys="Linux", node="www2", ...})  = 0
open("/lib/libnss_nisplus.so.2", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=253826, ...}) = 0
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320\32"..., 4096) = 4096
mmap(0, 40852, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40114000
mprotect(0x4011d000, 3988, PROT_NONE)   = 0
mmap(0x4011d000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x8000) = 0x4011d000
close(3)                                = 0
open("/lib/libnsl.so.1", O_RDONLY)      = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=372604, ...}) = 0
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\2408\0"..., 4096) = 4096
mmap(0, 86440, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4011e000
mprotect(0x40130000, 12712, PROT_NONE)  = 0
mmap(0x40130000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x11000) = 0x40130000
mmap(0x40131000, 8616, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40131000
close(3)                                = 0
open("/lib/libnss_nis.so.2", O_RDONLY)  = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=254027, ...}) = 0
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240\32"..., 4096) = 4096
mmap(0, 36368, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40134000
mprotect(0x4013c000, 3600, PROT_NONE)   = 0
mmap(0x4013c000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x7000) = 0x4013c000
close(3)                                = 0
brk(0x80a8000)                          = 0x80a8000
brk(0x80aa000)                          = 0x80aa000
getcwd("/usr/local/apache1322", 4095)   = 22
getpid()                                = 859
getppid()                               = 858
stat(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat("/usr/bin/sh", 0xbffff840)         = -1 ENOENT (No such file or directory)
stat("/bin/sh", {st_mode=S_IFREG|0755, st_size=373176, ...}) = 0
getpgrp()                               = 858
fcntl(-1, F_SETFD, FD_CLOEXEC)          = -1 EBADF (Bad file descriptor)
rt_sigaction(SIGCHLD, {0x806059c, [], 0x4000000}, {SIG_DFL}, 8) = 0
open("/usr/local/apache1322/bin/apachectl", O_RDONLY) = 3
lseek(3, 0, SEEK_CUR)                   = 0
read(3, "#!/bin/sh\n#\n# Apache control scr"..., 80) = 80
lseek(3, 0, SEEK_SET)                   = 0
fcntl(3, F_SETFD, FD_CLOEXEC)           = 0
fcntl(3, F_GETFL)                       = 0 (flags O_RDONLY)
fstat(3, {st_mode=S_IFREG|0755, st_size=7415, ...}) = 0
lseek(3, 0, SEEK_CUR)                   = 0
brk(0x80ac000)                          = 0x80ac000
read(3, "#!/bin/sh\n#\n# Apache control scr"..., 7415) = 7415
brk(0x80ad000)                          = 0x80ad000
brk(0x80ae000)                          = 0x80ae000
brk(0x80af000)                          = 0x80af000
brk(0x80b0000)                          = 0x80b0000
brk(0x80b1000)                          = 0x80b1000
brk(0x80b2000)                          = 0x80b2000
stat("/usr/local/apache1322/logs/httpd.pid", {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
pipe([4, 5])                            = 0
rt_sigprocmask(SIG_BLOCK, [INT CHLD], [], 8) = 0
lseek(3, -2842, SEEK_CUR)               = 4573
fork()                                  = 860
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigaction(SIGCHLD, {0x806059c, [], 0x4000000}, {0x806059c, [], 0x4000000}, 8) = 0
fcntl(4, F_GETFL)                       = 0 (flags O_RDONLY)
fstat(4, {st_mode=S_IFIFO|0600, st_size=0, ...}) = 0
mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4013d000
_llseek(4, 0, 0xbfffeff0, SEEK_CUR)     = -1 ESPIPE (Illegal seek)
close(5)                                = 0
read(4, "", 128)                        = 0
--- SIGCHLD (Child exited) ---
wait4(-1, [WIFEXITED(s) && WEXITSTATUS(s) == 0], WNOHANG, NULL) = 860
wait4(-1, 0xbffff024, WNOHANG, NULL)    = -1 ECHILD (No child processes)
sigreturn()                             = ? (mask now [])
close(4)                                = 0
munmap(0x4013d000, 4096)                = 0
close(4)                                = -1 EBADF (Bad file descriptor)
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigaction(SIGINT, {0x805f51c, [], 0x4000000}, {0x804bb38, [HUP INT ILL TRAP ABRT BUS FPE USR1 SEGV USR2 PIPE ALRM TERM XCPU XFSZ VTALRM PROF], 0x4000000}, 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigaction(SIGINT, {0x804bb38, [], 0x4000000}, {0x805f51c, [], 0x4000000}, 8) = 0
close(4)                                = -1 EBADF (Bad file descriptor)
close(5)                                = -1 EBADF (Bad file descriptor)
rt_sigprocmask(SIG_BLOCK, [INT CHLD], [], 8) = 0
fork()                                  = 862
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigaction(SIGINT, {0x805f51c, [], 0x4000000}, {0x804bb38, [], 0x4000000}, 8) = 0
wait4(-1, [WIFSIGNALED(s) && WTERMSIG(s) == SIGSEGV && WCOREDUMP(s)], 0, NULL) = 862
rt_sigprocmask(SIG_BLOCK, [CHLD], [CHLD], 8) = 0
rt_sigprocmask(SIG_SETMASK, [CHLD], NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
--- SIGCHLD (Child exited) ---
wait4(-1, 0xbfffef94, WNOHANG, NULL)    = -1 ECHILD (No child processes)
sigreturn()                             = ? (mask now [])
rt_sigaction(SIGINT, {0x804bb38, [], 0x4000000}, {0x805f51c, [], 0x4000000}, 8) = 0
fstat(1, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 14), ...}) = 0
mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4013d000
ioctl(1, TCGETS, {B38400 opost isig icanon echo ...}) = 0
write(1, "/usr/local/apache1322/bin/apache"..., 70/usr/local/apache1322/bin/apachectl start: httpd could not be started
) = 70
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
read(3, "\nexit $ERROR\n\n## ==============="..., 7415) = 2842
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
munmap(0x4013d000, 4096)                = 0
_exit(3)                                = ?

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2001-12-27 22:17 UTC] tomki at www2 dot forefrontsw dot com
Still fails with the ldap and imap config options taken out:
./configure --with-mysql=/usr/local --with-db3 --with-gdbm --with-openssl=/usr/local/ssl/ --enable-dmalloc --with-apache=../apache_1.3.22/ --sysconfdir=/etc --with-mcrypt=/usr/local --with-mhash=/usr/local/ --enable-track-vars

 [2002-07-04 18:25 UTC] eru@php.net
Could you please try to reproduce with fresher versions of PHP, Apache and mod_ssl? Please include the configure-lines for each package and if it still segfaults, please include a _backtrace_, not a strace.
For instructions, see http://bugs.php.net/bugs-generating-backtrace.php.

Thanks for your patience.

 [2002-07-04 19:44 UTC] sniper@php.net
Leave the --enable-dmalloc option out. You don't need it.

 [2002-08-05 01:00 UTC] php-bugs at lists dot php dot net
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
 
PHP Copyright © 2001-2020 The PHP Group
All rights reserved.
Last updated: Wed Jul 08 02:01:27 2020 UTC