https://bz.apache.org/SpamAssassin/show_bug.cgi?id=7986

            Bug ID: 7986
           Summary: spamd fails when in directory with absolute pathname
                    length greater than 50
           Product: Spamassassin
           Version: 4.0.0
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: spamc/spamd
          Assignee: dev@spamassassin.apache.org
          Reporter: sid...@sidney.com
  Target Milestone: Undefined

If you are running the installation tests in a directory whose absolute path
name is longer than about 50 characters, then spamd fails because the path it
uses to create a UNIX socket is prefixed by the absolute pathname of the
current directory, then goes to be another long string of characters that
exceeds the Linux maximum for sockets of 108 characters. I was in a directory
/home/sidney/ms004pre1 and ran make disttest which started by creating a
subdirectory named Mail-SpamAssassin-4.0.0 and running tests from a
subdirectory of that. The resulting error message and test failure in the spamd
tests was

May  4 23:43:28.831 [161340] dbg: spamd: creating UNIX socket:
May  4 23:43:28.831 [161340] dbg: spamd: [...]  Listen: 4096
May  4 23:43:28.831 [161340] dbg: spamd: [...]  Local:
/home/sidney/ms400pre1/Mail-SpamAssassin-4.0.0/t/log/spamc_cf.TIX2Zx/satest.161330.62861.8430800295/spamd.sock
May  4 23:43:28.831 [161340] dbg: spamd: [...]  Type: 1
Path length (110) is longer than maximum supported length (108) and will be
truncated at /usr/lib/x86_64-linux-gnu/perl/5.30/Socket.pm line 872.
spamd: socket path was truncated at position 108
spamd: leaving stale socket at
/home/sidney/ms400pre1/Mail-SpamAssassin-4.0.0/t/log/spamc_cf.TIX2Zx/satest.161330.62861.8430800295/spamd.so
server socket setup failed, retry 1: spamd: path length for UNIX socket on
/home/sidney/ms400pre1/Mail-SpamAssassin-4.0.0/t/log/spamc_cf.TIX2Zx/satest.161330.62861.8430800295/spamd.sock
exceeds system limit, exiting

spamd should create the socket in some temporary directory whose location is in
a shorter path instead of taking a chance on the current directory.

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to