[Postfixbuch-users] postfix/qmgr: fatal: unix-domain name too long

clemens fischer ino-news at spotteswoode.dnsalias.org
Mo Mai 1 16:41:21 CEST 2006


hallo zusammen!

  'uname -rms'
  FreeBSD 6.1-RC i386

es ist die freebsd ports version ports/mail/postfix-current installiert,
also ist "mail_version = 2.3-20060418".

ich moechte ankommende emails durch bogofilter jagen und spam in
${mailbox}+spam einsortieren.  dazu bin ich nach dem einfachen verfahren
in FILTER_README vorgegangen:  "Simple content filter example".  es gibt
einen "spamuser", ein directory fuer seine tempfiles usw.  die
permissions stimmen.

das entsprechende script wird aber nicht aufgerufen, statt dessen kriege
ich vom qmgr eine fehlermeldung, die ich nicht einordnen kann:  der
unix-domain name sei zu lang.  in der source ".../util/unix_connect.c"
wird diese fehlermeldung nur ausgegeben, wenn wirklich der name des unix
domain sockets zu lang ist.  der socket wird aber korrekt angelegt:

  0  # ll /var/spool/postfix/private/filter
  srw-rw-rw-  1 postfix  wheel     0B May  1 13:26
  /var/spool/postfix/private/filter

ich habe ein programm "unixclient" aus bruce guenthers
"ucspi-unix-0.36", mit dem ich auf den socket connecten kann, um
nachzusehen, was da raus kommt.  das log/maillog ist ellenlang wegen der
"post -vv" option, aber man kann immerhin den verbindungsaufbau und die
reaktion sehen, obwohl natuerlich mein protokoll nicht stimmt.  die
macke passiert also, bevor "post" und das "filter.sh" script aufgerufen
werden koennen.

dies ist eine test message, mittels "netcat 0 25" abgesetzt:

  May  1 15:01:16 <mail.info> spotteswoode postfix/qmgr[4135]:
    EC2801143F: from=<me at spotteswoode.dnsalias.org>, size=363, nrcpt=1 (queue active)

zum spam-filtern habe ich einen eintrag in etc/postfix/master.cf:

  filter    unix  -       n       n       -       1       pipe -vv
    flags=DRq user=mailfilter argv=/l/etc/postfix/filter.sh ${sender} ${recipient}

das script ist fast genau wie das im README angegebene.  aber das spielt
noch keine rolle, denn vorher schon meckert der qmgr:

  May  1 15:01:16 <mail.crit> spotteswoode postfix/qmgr[4135]:
    fatal: unix-domain name too long:
    private/unix - n n - 3 pipe flags=Rq  user=mailfilter
    argv= /usr/local/etc/postfix/filter.sh  -f  --

dies ist nicht der richtige aufruf wie im master.cf vorgegeben!  und
dann kommt:

  May  1 15:01:17 <mail.warn> spotteswoode postfix/master[471]:
    warning: process /usr/local/libexec/postfix/qmgr pid 4135 exit status 1

das hier ist mein privatvergnuegen, also kann ich herumexperimentieren.
hier weis ich nicht weiter.  was stimmt in meiner konfiguration oder an
postfix-devel nicht?

gruss,

  clemens fischer

zum allgemeinen amusemeng zeige ich auch das log mit "qmgr -vv" in
master.cf (zeilen gekuerzt):

qmgr[9900]: record C             363 476               1               0
qmgr[9900]: record T 1146421455 480634
qmgr[9900]: record A create_time=11464214 64
qmgr[9900]: record L unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/fi lter.sh  -f  --
qmgr[9900]: record A rewrite_context=local
qmgr[9900]: record S me at spotteswoode.dnsalias.org
qmgr[9900]: EC2801143F: from=<me at spotteswoode.dnsalias.org>, size=363, nrcpt=1 (queue active) May  1 16:25:54 <mail.info> spotteswoode postfix/qmgr[9900]: record A client_name=localhost
qmgr[9900]: record A client_address=127.0.0.1
qmgr[9900]: record A message_origin=localhost[127.0.0.1]
qmgr[9900]: record A helo_name=u May  1 16:25:54 <mail.info> spotteswoode postfix/qmgr[9900]: record A protocol_name=ESMTP
qmgr[9900]: record A dsn_orig_rcpt=rfc822;root
qmgr[9900]: record O root
qmgr[9900]: record R root at spotteswoode.dnsalias.org
qmgr[9900]: record M May  1 16:25:54 <mail.info> spotteswoode postfix/qmgr[9900]: record X
qmgr[9900]: record E
qmgr[9900]: dir_forest: EC2801143F -> E/
qmgr[9900]: start sorted recipient list
qmgr[9900]: qmgr_message_sort: root at spotteswoode.dnsalias.org
qmgr[9900]: end sorted recipient list
qmgr[9900]: dict_lookup: unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  -- _destination_concurrency_limit = (notfound)
qmgr[9900]: dict_update: unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  -- _destination_concurrency_limit = 2
qmgr[9900]: dict_lookup: unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  -- _destination_recipient_limit = (notfound)
qmgr[9900]: dict_update: unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  -- _destination_recipient_limit = 2
qmgr[9900]: dict_lookup: unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  -- _delivery_slot_cost = (notfound)
qmgr[9900]: dict_update: unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  -- _delivery_slot_cost = 5
qmgr[9900]: dict_lookup: unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  -- _delivery_slot_loan = (notfound)
qmgr[9900]: dict_update: unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  -- _delivery_slot_loan = 3
qmgr[9900]: dict_lookup: unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  -- _delivery_slot_discount = (notfound)
qmgr[9900]: dict_update: unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  -- _delivery_slot_discount = 50
qmgr[9900]: dict_lookup: unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  -- _minimum_delivery_slots = (notfound)
qmgr[9900]: dict_update: unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  -- _minimum_delivery_slots = 3
qmgr[9900]: dict_lookup: unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  -- _recipient_limit = (notfound)
qmgr[9900]: dict_update: unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  -- _recipient_limit = 100
qmgr[9900]: dict_lookup: unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  -- _extra_recipient_limit = (notfound)
qmgr[9900]: dict_update: unix  -       n n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  -- _extra_recipient_limit = 10
qmgr[9900]: qmgr_transport_create: unix -       n       n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  --  concurrency 2 recipients 2
qmgr[9900]: start sorted recipient list
qmgr[9900]: qmgr_message_sort: root at spotteswoode.dnsalias.org
qmgr[9900]: end sorted recipient list
qmgr[9900]: scan_dir_next: skip .
qmgr[9900]: scan_dir_next: skip ..
qmgr[9900]: scan_dir_pop: close deferred
qmgr[9900]: done deferred queue scan
qmgr[9900]: trigger_server_accept_fifo: trigger arrived
qmgr[9900]: master_notify: status 0
qmgr[9900]: request: 87 (W)
qmgr[9900]: master_notify: status 1
qmgr[9900]: watchdog_start: 0x807d208
qmgr[9900]: qmgr_transport_select: unix -       n       n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  --
qmgr[9900]: qmgr_active_drain: allocate unix  -       n       n       -       3       pipe  flags=Rq  user=mailfilter  argv= /usr/local/etc/postfix/filter.sh  -f  --
qmgr[9900]: fatal: unix-domain name too long: private/unix  -       n       n       -       3       pipe  flags=Rq  user=mailfilter argv= /usr/local/etc/postfix/filter.sh  -f  --
master[471]: warning: process /usr/local/libexec/postfix/qmgr pid 9900 exit status 1




Mehr Informationen über die Mailingliste Postfixbuch-users