[MacPorts] #46623: procmail on OS X Yosemite hits "Abort trap: 6" if variable assignment uses backticks
MacPorts
noreply at macports.org
Mon Jan 19 13:22:34 PST 2015
#46623: procmail on OS X Yosemite hits "Abort trap: 6" if variable assignment uses
backticks
------------------------+--------------------------------
Reporter: macports@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.3.3
Keywords: procmail | Port: mail/procmail
------------------------+--------------------------------
If my `.procmailrc` file contains a variable assignment like this
{{{
FROM=`sed 1d | formail -I reply-to: -I resent-from: -I return-path: | \
formail -rzxTo:`
}}}
then procmail hits an "Abort trap: 6" as follows:
{{{
mini1:~ collin$ cat Mail/backup/92862 | formail -imessage-id: |
/opt/local/bin/procmail .procmailrc.1.18
Abort trap: 6
mini1:~ collin$
}}}
/usr/bin/procmail displays the same symptom. Both binaries are version
3.22 (they display the same
version string as in `procmail -v` string), though they have some
different attributes:
{{{
mini1:~ collin$ ls -l /usr/bin/procmail /opt/local/bin/procmail
-rwsr-sr-x 1 root mail 97612 Dec 7 01:23 /opt/local/bin/procmail
-rwxr-sr-x 1 root mail 84576 Sep 9 15:57 /usr/bin/procmail
mini1:~ collin$ file /usr/bin/procmail /opt/local/bin/procmail
/usr/bin/procmail: setgid Mach-O 64-bit executable x86_64
/opt/local/bin/procmail: setuid setgid Mach-O 64-bit executable x86_64
mini1:~ collin$
}}}
Removing the `FROM=...` line makes the problem go away--i.e., procmail
does what I expect (and indeed what it does do on Linux, and what
/usr/bin/procmail formerly did on Mac OS X 10.6.8).
The same .procmailrc script has worked OK for a few years on a mac mini.
Until 2 days back,
this mac mini had been running 10.6.8 (not sure when the last OS upgrade
was, but it has been
months).
I was hoping for a coredump so I naively tried "`ulimit -c unlimited`" but
no coredump appeared after the abort.
The backtick sequence inside a recipe doesn't provoke an abort; the
following works just fine:
{{{
:0 ic
| cd backup && rm -f dummy `ls -t | sed -e 1,128d`
}}}
It seems to be only a line of the form
{{{
VAR=`cmd`
}}}
that the current procmail (both /usr/bin/procmail and the port) hates.
Also: I tried replacing the long "FROM=" line above by
{{{
FROM=`cat`
}}}
which also proved disappointing
--
Ticket URL: <https://trac.macports.org/ticket/46623>
MacPorts <https://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list