View Issue Details

IDProjectCategoryView StatusLast Update
0003015unrealinstallingpublic2006-11-11 14:39
ReporterderPENGUIN Assigned Toaquanight  
PrioritynormalSeverityblockReproducibilityalways
Status resolvedResolutionfixed 
Platformi386OSLinuxOS Version2.4.28
Product Version3.2.5 
Fixed in Version3.2.6 
Summary0003015: failed to load tmp/[random].commands.so
Descriptionerror: loadmodule src/modules/commands.so: failed to load: tmp/[random].commands.so: cannot open shared object file: No such file or directory
ENV:
RedHat9; Kernel 2.4.28, gcc 3.5
I tried 3.2.3 and 3.2.5, Compiled with user ircd, permission of tmp is 700, src/module/commands.so has (as compiled) 775, options +zlib, -ssh
This is the strace output:

execve("src/ircd", ["src/ircd"], [/* 18 vars */]) = 0
uname({sys="Linux", node="hdcrash.homelinux.net", ...}) = 0
brk(0) = 0x8169ee4
open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=21632, ...}) = 0
old_mmap(NULL, 21632, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40013000
close(3) = 0
open("/lib/libcrypt.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@\t\0\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=22472, ...}) = 0
old_mmap(NULL, 180192, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40019000
old_mmap(0x4001d000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x3000) = 0x4001d000
old_mmap(0x4001e000, 159712, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4001e000
close(3) = 0
open("/lib/libnsl.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0008<\0\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=86852, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40045000
old_mmap(NULL, 76416, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40046000
old_mmap(0x40056000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x10000) = 0x40056000
old_mmap(0x40057000, 6784, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40057000
close(3) = 0
open("/usr/lib/libz.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340\30"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=59695, ...}) = 0
old_mmap(NULL, 54948, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40059000
old_mmap(0x40065000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xb000) = 0x40065000
close(3) = 0
open("/lib/libdl.so.2", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\270\25"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=14408, ...}) = 0
old_mmap(NULL, 12116, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40067000
old_mmap(0x40069000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x1000) = 0x40069000
close(3) = 0
open("/lib/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0008U\1\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1465640, ...}) = 0
old_mmap(NULL, 1198788, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4006a000
old_mmap(0x40189000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x11e000) = 0x40189000
old_mmap(0x4018d000, 6852, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4018d000
close(3) = 0
munmap(0x40013000, 21632) = 0
brk(0) = 0x8169ee4
getuid32() = 524
geteuid32() = 524
getgid32() = 524
getegid32() = 524
umask(077) = 02
rt_sigaction(SIGWINCH, {SIG_IGN}, NULL, 8) = 0
rt_sigaction(SIGPIPE, {SIG_IGN}, NULL, 8) = 0
rt_sigaction(SIGALRM, {0x805e4f0, [PIPE ALRM WINCH], SA_RESTORER, 0x40090c18}, NULL, 8) = 0
rt_sigaction(SIGHUP, {0x805e480, [HUP], SA_RESTORER, 0x40090c18}, NULL, 8) = 0
rt_sigaction(SIGINT, {0x805e4e0, [HUP INT], SA_RESTORER, 0x40090c18}, NULL, 8) = 0
rt_sigaction(SIGTERM, {0x805e450, [HUP INT TERM], SA_RESTORER, 0x40090c18}, NULL, 8) = 0
brk(0) = 0x8169ee4
brk(0x816aee4) = 0x816aee4
brk(0) = 0x816aee4
brk(0x816b000) = 0x816b000
gettimeofday({1154551470, 189293}, NULL) = 0
open("/dev/urandom", O_RDONLY) = 3
read(3, "\276\21\345\335\362{\316iU\310!\212J\324\260v\241\237J"..., 32) = 32
close(3) = 0
getrlimit(0x4, 0xbffffa70) = 0
setrlimit(RLIMIT_CORE, {rlim_cur=RLIM_INFINITY, rlim_max=RLIM_INFINITY}) = 0
chdir("/etc/ircd") = 0
mkdir("tmp", 0700) = -1 EEXIST (File exists)
write(2, " _ _ _ __"..., 336 _ _ _ ___________ _____ _
| | | | | |_ _| ___ \/ __ \ | |
| | | |_ __ _ __ ___ __ _| | | | | |_/ /| / \/ __| |
| | | | '_ \| '__/ _ \/ _` | | | | | / | | / _` |
| |_| | | | | | | __/ (_| | |_| |_| |\ \ | \__/\ (_| |
 \___/|_| |_|_| \___|\__,_|_|\___/\_| \_| \____/\__,_|
) = 336
write(2, " v3.2."..., 34 v3.2.5
) = 34
write(2, " using TRE 0"..., 43 using TRE 0.7.2 (GPL)
) = 43
write(2, " using zlib "..., 38 using zlib 1.1.4
) = 38
write(2, "\n", 1
) = 1
brk(0) = 0x816b000
brk(0x816c000) = 0x816c000
open("/dev/null", O_RDONLY|O_NONBLOCK|O_DIRECTORY) = -1 ENOTDIR (Not a directory)
open("tmp", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 3
fstat64(3, {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0
fcntl64(3, F_SETFD, FD_CLOEXEC) = 0
brk(0) = 0x816c000
brk(0x816d000) = 0x816d000
getdents64(3, /* 2 entries */, 4096) = 48
getdents64(3, /* 0 entries */, 4096) = 0
close(3) = 0
chmod("unrealircd.conf", 0600) = 0
write(2, "* Loading IRCd configuration ..\n", 32* Loading IRCd configuration ..
) = 32
open("unrealircd.conf", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0600, st_size=20787, ...}) = 0
brk(0) = 0x816d000
brk(0x8171000) = 0x8171000
read(3, "/*\n * example.conf von Daniel Ha"..., 20787) = 20787
close(3) = 0
brk(0) = 0x8171000
brk(0x8172000) = 0x8172000
brk(0) = 0x8172000
brk(0x8173000) = 0x8173000
brk(0) = 0x8173000
brk(0x8174000) = 0x8174000
open("tmp/16C5AE86.commands.so", O_RDONLY) = -1 ENOENT (No such file or directory)
link("src/modules/commands.so", "tmp/16C5AE86.commands.so") = -1 ENOENT (No such file or directory)
stat64("src/modules/commands.so", 0xbfffef70) = -1 ENOENT (No such file or directory)
open("src/modules/commands.so", O_RDONLY) = -1 ENOENT (No such file or directory)
open("tmp/16C5AE86.commands.so", O_RDONLY) = -1 ENOENT (No such file or directory)
write(2, "* unrealircd.conf:36: loadmodule"..., 158* unrealircd.conf:36: loadmodule src/modules/commands.so: failed to load: tmp/16C5AE86.commands.so: cannot open shared object file: No such file or directory
) = 158
write(2, "[error] IRCd configuration faile"..., 42[error] IRCd configuration failed to load
) = 42
exit_group(-1) = ?

TagsNo tags attached.
3rd party modules

Activities

stskeeps

2006-08-02 16:03

reporter   ~0012114

.. we should really improve our error handling with that

syzop

2006-08-02 17:59

administrator   ~0012120

Basically the error should have been:
error: loadmodule src/modules/commands.so: failed to load: src/modules/commands.so: cannot open shared object file: No such file or directory

That's all :P

syzop

2006-08-10 13:39

administrator   ~0012166

Last edited: 2006-08-10 13:39

Dont know if it was clear to the reporter, but, I don't see the bug.. It simply means it cannot load the src/modules/commands.so. It tries to open it from /etc/irc, so that's /etc/irc/src/modules/commands.so which apparently does not exist.

The only reason I'm keeping this bug open is so we can fix the error message to show 'src/modules/commands.so' instead of 'tmp/[randomstuff].command.so' :)

EDIT: typo

aquanight

2006-08-13 14:39

reporter   ~0012176

Fixed in .2240

syzop

2006-11-11 14:39

administrator   ~0012625

Fixed in 32* as well [.589]

Issue History

Date Modified Username Field Change
2006-08-02 15:57 derPENGUIN New Issue
2006-08-02 16:03 stskeeps Note Added: 0012114
2006-08-02 17:59 syzop Note Added: 0012120
2006-08-10 13:39 syzop Note Added: 0012166
2006-08-10 13:39 syzop Note Edited: 0012166
2006-08-13 14:39 aquanight Note Added: 0012176
2006-08-13 14:39 aquanight Assigned To => aquanight
2006-08-13 14:39 aquanight Status new => resolved
2006-08-13 14:39 aquanight Resolution open => fixed
2006-11-11 14:39 syzop Note Added: 0012625
2006-11-11 14:39 syzop Fixed in Version => 3.2.6