+1 on opening a bug, the sooner that happens the sooner we can get the fix into the next release ;)
Thanks Henrik, that looks promising (if a little crazy). On Wed, Dec 30, 2009 at 15:20, Henrik K <h...@hege.li> wrote: > On Wed, Dec 30, 2009 at 09:52:50AM -0500, Rosenbaum, Larry M. wrote: >> I have just recently installed SA v3.3.0-rc1 on Solaris 10. I have >> discovered that in order for syslog logging to work, I have to start spamd >> with the switch "--syslog-socket=native". It won't work if I set it to >> "unix" or "inet" or if I omit the switch entirely. As this is my first time >> running SpamAssassin on Solaris 10, I don't know if this discovery also >> applies to older SpamAssassin versions, but I suspect it does. I suggest >> the documentation be changed to reflect this, since currently it does not >> even mention "native" as a legitimate option. >> >> In the long term, perhaps "native" can be made the default, or have the code >> just not call setlogsock() if the --syslog-socket switch is absent. (I >> don't know if this is feasible with older versions of Sys::Syslog.) >> >> This is what the current docs say: >> >> --syslog-socket=*type* >> Specify how spamd should send messages to syslogd. The options are >> "unix", "inet" or "none". The default is to try "unix" first, >> falling back to "inet" if perl detects errors in its "unix" support. >> >> Some platforms, or versions of perl, are shipped with dysfunctional >> versions of the Sys::Syslog package which do not support some socket >> types, so you may need to set this. If you get error messages >> regarding __PATH_LOG or similar from spamd, try changing this >> setting. > > FYI the code from postgrey, which works pretty well (sorry no time to check > what's in current SA): > > if(defined $Sys::Syslog::VERSION and $Sys::Syslog::VERSION ge '0.15' > and defined $Net::Server::VERSION and $Net::Server::VERSION ge '0.97') { > # use 'native' when Sys::Syslog >= 0.15 > $syslog_logsock = 'native'; > } > elsif($^O eq 'solaris') { > # 'stream' is broken and 'unix' doesn't work on Solaris: only 'inet' > # seems to be useable with Sys::Syslog < 0.15 > $syslog_logsock = 'inet'; > } > else { > $syslog_logsock = 'unix'; > } > > Larry, you should open up a bug.. > > -- --j.