shellsymmetry

What is the difference ` and ' in the sendmail configuration file?


I am reading an article :
http://linuxconfig.org/configuring-gmail-as-sendmail-email-relay.

In the middle of the article;

Put bellow lines into your sendmail.mc configuration file right above first "MAILER" definition line:

define(`SMART_HOST',`[smtp.gmail.com]')dnl
define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl
define(`ESMTP_MAILER_ARGS', `TCP $h 587')dnl
define(`confAUTH_OPTIONS', `A p')dnl
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
FEATURE(`authinfo',`hash -o /etc/mail/authinfo/gmail-auth.db')dnl

I am wondering that is there difference ` and ' here?
Why don't write it as

define('SMART_HOST','[smtp.gmail.com]')dnl
define('RELAY_MAILER_ARGS', 'TCP $h 587')dnl
define('ESMTP_MAILER_ARGS', 'TCP $h 587')dnl
define('confAUTH_OPTIONS', 'A p')dnl
TRUST_AUTH_MECH('EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define('confAUTH_MECHANISMS', 'EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
FEATURE('authinfo','hash -o /etc/mail/authinfo/gmail-auth.db')dnl

In my opinion that the changed file is more elegant , it contain symmetry in it,two ' enclose a string ,who can express that?

And it is a truth that the changed lines can run ,i tested it.


Solution

  • Sendmail configuration is generally processed by m4.

    Read GNU m4 documentation, in particular the section on quoting input