Hi everyone, and thank you Cami for this great piece of software! First of all, let me report that I managed to run policyd v1.78 just fine on our company's mail server, which is running OSX 10.4.8 I had to google to download it (no cvs or old version on SF?), but then the only thing to fix on OSX was the "inc = and lib +=" at the beginning of the Makefile (as previously reported on the list), then all went fine.
However I had first tried to install version 1.80, and I couldn't get it to work. In addition to the same change in the Makefile as for 1.78, it was needed to modify policyd.h to make sure that the #define MSG_NOSIGNAL SO_NOSIGPIPE was active. I changed line 54 as follows, which seems to work: #if defined (__FreeBSD__) || defined (__OpenBSD__) || defined (__NetBSD__) || defined(NeXTBSD) Now after a successful build (without a single warning, as opposed to the warnings during 1.78 build) and install, I proceeded to test it. The service seems to start ok, but whenever postfix connects to it nothing happens during a few seconds and then it segfaults. Here is the gdb and backtrace of it happening: ------ 8< --- 8< ---- 8< --- 8< ---- 8< --- 8< ---- # gdb /usr/local/policyd/policyd (gdb) run -c /usr/local/policyd/policyd.conf Starting program: /usr/local/policyd/policyd -c /usr/local/policyd/ policyd.conf Reading symbols for shared libraries . done ---- DAEMON CONFIG ---- config: version> v1.80 config: debug> 3 config: daemon mode> 0 config: bindhost> 127.0.0.1 ... the rest of the config ... config: quota_exceeded_temp_reject> 1 starting policyd v1.80 DEBUG: fd: 0: rlimit: max: 0 cur: 12288 connecting to mysql database: 127.0.0.1 connected.. DEBUG: saved fd: numi = 0, connfd = 11 connection from: 127.0.0.1 port: 64972 slots: 0 of 4096 used DEBUG: fd: 11 select(): fd 11 is ready for read Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_INVALID_ADDRESS at address: 0x7251a79b 0x900048e0 in strncmp () (gdb) bt #0 0x900048e0 in strncmp () #1 0x00009858 in w_read (fd=11, ptr=0x11e365 'r' <repeats 200 times>...) at sockets.c:166 #2 0x00003294 in main (argc=11, argv=0xbfffb798) at policyd.c:219 ------ 8< --- 8< ---- 8< --- 8< ---- 8< --- 8< ---- It seems that w_read() has changed quite a bit between 1.78 and 1.80, but I suck too much at C to start looking further ;-) Any idea as to what is wrong and how to fix it, to be able to run the latest & greatest? Thanks a lot! Olivier PS: I haven't tested v.1.79 as the Changelog seems to imply that it contains no change in the source code itself. ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ policyd-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/policyd-users
