[exim-dev] exim 4.50 hp-ux 11.23 (ipf) startup problems

Góra strony
Delete this message
Reply to this message
Autor: V. T. Mueller
Data:  
Dla: exim-dev
Temat: [exim-dev] exim 4.50 hp-ux 11.23 (ipf) startup problems
Hello,


I searched the archive, but it appears we're the first to compile a
recent exim under hp-ux on the itanium with ANSI C version C.06.00.

In short: it runs but is not capable of running as a _background_
daemon. This might be linked to the changes in the daemon startup
code that has been discussed on this list lately.

Tracing an attempt with "-bd" ends in:
(note the "funny" addressing of filedescriptors starting at
close(-1)...)

open("/usr/lib/hpux32/libnss_files.so.1", O_RDONLY, 0) ... = 3
fstat(3, 0x7fffe5f0) ..................................... = 0
read(3, "7fE L F 0102010101\0\0\0\0\0\0\0".., 52) ........ = 52
lseek(3, 52, SEEK_SET) ................................... = 52
read(3, "\0\0\006\0\0\04 04\0\04 \0\0\0\0".., 256) ....... = 256
mmap(NULL, 92784, PROT_READ|PROT_EXEC, MAP_SHARED|MAP_SHLIB, 3, 0) =
0xc0670000
mmap(NULL, 2228, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_SHLIB, 3,
94208) = 0x7ef8
d000
close(3) ................................................. = 0
getuid() ................................................. = 0 (0)
getuid() ................................................. = 0 (0)
getgid() ................................................. = 3000 (3000)
getgid() ................................................. = 3000 (3000)
getuid() ................................................. = 0 (0)
getuid() ................................................. = 0 (0)
getgid() ................................................. = 3000 (3000)
getgid() ................................................. = 3000 (3000)
open("/usr/lib/libdl.so.1", O_RDONLY, 0) ................. ERR#2 ENOENT
open("/usr/lib/nds-modules/libdl.so.1", O_RDONLY, 0) ..... ERR#2 ENOENT
open("/usr/lib/libdl.so.1", O_RDONLY, 0) ................. ERR#2 ENOENT
open("/usr/lib/nds-modules/libdl.so.1", O_RDONLY, 0) ..... ERR#2 ENOENT
open("/usr/lib/hpux32/libdl.so.1", O_RDONLY, 0) .......... = 3
fstat(3, 0x7fffe530) ..................................... = 0
read(3, "7fE L F 0102010101\0\0\0\0\0\0\0".., 52) ........ = 52
close(3) ................................................. = 0
open("/etc/services", O_RDONLY, 0666) .................... = 3
brk(0x40051000) .......................................... = 0
ioctl(3, TCGETA, 0x7fffeb90) ............................. ERR#25 ENOTTY
read(3, "# @ ( # ) B 1 1 . 2 3 _ L R s ".., 8192) ...... = 8192
lseek(3, 4294960431, SEEK_CUR) ........................... = 1327
close(3) ................................................. = 0
close(-1) ................................................ ERR#9 EBADF
close(0) ................................................. = 0
close(1) ................................................. = 0
close(2) ................................................. = 0
fstat(0, 0x7fffec00) ..................................... ERR#9 EBADF
open("/dev/null", O_RDWR, 011) ........................... = 0
fstat(1, 0x7fffec00) ..................................... ERR#9 EBADF
dup2(0, 1) ............................................... = 1
fstat(2, 0x7fffec00) ..................................... ERR#9 EBADF
dup2(0, 2) ............................................... = 2
getpid() ................................................. = 2642 (2641)
fork() ................................................... , 2643
fork() ................ (returning as child ...) ......... , 2642
getpid() ................................................. = 2643 (2642)
getpid() ................................................. = 2642 (2641)
exit(0) .................................................. WIFEXITED(0)
unlink("/var/spool/sockets/pwgr/client2642") ............. = 0
exit(0) .................................................. WIFEXITED(0)



The compile run produced some warnings like:

         cc -c -DNOPOSIX -Ae +O3 +Onolimit  -I. pcretest.c
"printint.c", line 205: warning #2111-D: statement is unreachable
       break;
       ^
         cc -c -Ae +O3 +Onolimit  -DCOMPILE_UTILITY -o 
util-spool_in.o spool_in.c
"/usr/include/net/if6.h", line 67: warning #2047-D: incompatible 
redefinition of macro "IFF_PRIORITY" (declared at line 140 of 
"/usr/include/net/if.h")
   #define IFF_PRIORITY  0x4000000000000000      /* VLAN IP 
precendence enablement */


[/usr/include/net/if.h defines it this way:
define IFF_PRIORITY         0x80000000      /* VLAN IP precendence 
enablement */ ]



"daemon.c", line 192: warning #2167-D: argument of type "socklen_t 
*" is incompatible with parameter of type "int *"
        &ifsize) < 0)
        ^


"receive.c", line 188: warning #2068-D: integer conversion resulted 
in a change of sign
   *inodeptr = (statbuf.F_FILES > 0)? statbuf.F_FAVAIL : -1;
                                                         ^
"rfc2047.c", line 262: warning #2167-D: argument of type "const char 
**" is incompatible with parameter of type "char **"
         (void)iconv(icd, (ICONV_ARG2_TYPE)(&dptr), &dlen, CSS 
&outptr, &outleft);
                          ^


I have no idea if this behaviour is platform-specific or not. Full
logs or ssh access to a build environment can be provided if needed,
though.

Kind regards,
vt