Hi, I have been trying to get courier working on OpenBSD since yesterday,
and have run into some of the same problems as Petro was having, and came up
with some of the same solutions that were suggested here. I've now gotten it
to compile and pass make check, but when I do "courier start", nothing
happens. I check ps, and there are no extra programs running, and I look in
the /var/log/messages, and there are no messages from courier, and I even
set *.* to go to /root/test.log in syslog.conf, and there isn't anything
from courier in there either. The file var/tmp/courierd.lock is created when
I run it, but otherwise nothing happens. Anyone have any ideas of how to go
about figuring out whats wrong?
I changed the soxwrap/soxwrap.c to include "#define RTLD_NOW 0", but
according to the man pages on dlopen, the mode isn't used and should be set
to RTLD_LAZY for future compatibility.
I included param.h and mount.h in courier/libs/comstatfs.c, and I also went
through courier/module.local/deliver.c and added whatever=0; after each
free(whatever); in the file, since "make check" would have an Error 1 there
and "./testsuite | cmp - ./testsuite.txt" would return return:
stdin ./testsuite.txt differ: char 392, line 23
Broken pipe
which contained the lines:
courierdeliver in free(): warning: chunk is already free.
courierdeliver in free(): warning: chunk is already free.
Could the setting of the variables to 0 after they were free()'d have broken
it? Or could this be because of permissions? I had to add the groups mail
and root to /etc/group since they aren't there by default with OpenBSD and
"make install" wanted them. Also, I have it installed in /usr/local/courier,
if that could possibly make any difference. So, is there any way which I am
missing to get some errors out of the "courier start" command to see what
I've done wrong, or have I probably broken it with the changes I made to
make it compile?