Very interesting issue !

Actually, the changecom is deliberate, as we want the # lines to be
passed through the m4 processing and into the resultant sendmail.cf;
who treats the # lines as comments.

The next odd thing is that the problem disappeared when you deleted
lines 18 and 19...  but that leaves line 20 - which also has `...`
in it;  why did it work with that line still there ?

Next up, is that I am running the same level of m4, and my sendmail.mc
starts the same (has the same three lines).   What version of sendmail
are you running?

Can you send me your sendmail.mc and any include() files it
references (sans anything in /usr/share/sendmail/cf - unless you've
changed them) ?

I should peruse the distributed mc/m4 files for `...` in comments,
but first I want to understand why this is failing for you, but not
for everyone....  I'm expecting an edit elsewhere went amiss.

Thanks,
--
Rick
I sat laughing snidely into my notebook until they showed me a PC running
Linux. And oh! It was as though the heavens opened and God handed down a
client-side OS so beautiful, so graceful, and so elegant that a million
Microsoft developers couldn't have invented it even if they had a hundred
years and a thousand crates of Jolt cola.
        -- LAN Times

On Mon, 19 Nov 2007, Santiago Vila wrote:

reassign 451346 sendmail
thanks

Hello.

This bug was submitted against m4, but it's a sendmail bug.
See complete history here:

http://bugs.debian.org/451346

This is how Eric Blake, m4 author, explains why it is a bug in sendmail:

On Mon, 19 Nov 2007, Eric Blake wrote:

[...]
Here's the whole directory /usr/share/sendmail hoping it will help ;)

Yep.  cf.m4 includes cfhead.m4, which does changecom(^A), which means that
# no longer starts m4 comments.  That means that text that follows # is
live to m4, and thus the line:

#       * `sendmailconfig`

in sendmail.mc is starting an unterminated doubly-nested quoted string,
rather than being a comment.

This is a sendmail bug, not an m4 bug.  cfhead.m4 should probably be
changed to call changecom(`#') after it has done all its work, once again
making # start comments in the user file, so that text in the user
comments is no longer live to m4.

Thanks a lot.



--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to