Macro Xtext Translations

Some macros are assigned values from text that is supplied by outside connecting hosts. Such text cannot necessarily be trusted in rule sets, or as keys in database-map lookups.

To protect itself, sendmail modifies such text by translating whitespace characters (spaces and tabs), nonprinting characters (such as newlines and control characters), and the following list of special characters:

< > ( ) " +

Translation is the replacement of each special character with its corresponding hexadecimal value (based on U.S. ASCII), where each new hexadecimal value is prefixed with a plus character.[310] For example:

(some text)        becomes  →   +28some+20text+29

Only six macros are subject to this encoding at this time. They are listed in Table 21-4.

Table 21-4. Macros subject to xtext encoding

Macro

§

Description

${auth_authen}

${auth_authen} on page 804

RFC2554 AUTH credentials (xtext encoded with V8.13 and later)

${auth_author}

${auth_author} on page 805

RFC2554 AUTH= parameter (xtext encoded with V8.13 and later)

${cert_issuer}

${cert_issuer} on page 809

Distinguished name of certificate signer

${cert_subject}

${cert_subject} on page 809

Distinguished name of certificate (owner)

${cn_issuer}

${cn_issuer} on page 815

Common name of certificate signer

${cn_subject}

${cn_subject} on page 816

Common name of certificate

[310] * This is also called xtext translation and is documented in RFC1891.

Get sendmail, 4th Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.