home | O'Reilly's CD bookshelfs | FreeBSD | Linux | Cisco | Cisco Exam  


Previous Section Next Section

25.2 Header Names

The name portion of the H configuration command must be one of the names shown in Table 25-1. Other names do not produce an error but might confuse other programs that need to process them. Names marked with an asterisk are defined by RFC2822.

Table 25-1. Header names

apparently-to

bcc*

cc*

comments*

content-length

content-transfer-encoding

content-type

date*

disposition

encrypted

errors-to

from*

full-name

in-reply-to*

keywords*

mail-from

message

message-id*

notification-to

posted-date

precedence

received*

references*

reply-to*

resent-bcc*

resent-cc*

resent-date*

resent-from*

resent-message-id*

resent-reply-to

resent-sender*

resent-to*

return-path*

return-receipt-to

sender*

subject*

text

to*

via

x400-received

These are discussed individually in Section 25.12 at the end of this chapter.

The RFC2822 standard allows a special form to be used for creating custom header names. All mail programs, including sendmail, are required to accept and pass through as is any header name that begins with the special characters x-. The following header definition, for example, can be used to introduce information that your site is running an experimental version of sendmail:

HX-Beware: This message used an experimental version of sendmail

The name part of header definitions is case-insensitive. That is, X-Beware, x-beware, and X-BEWARE are all the same. For example, when sendmail checks for the To: header internally, it will recognize it regardless of how it is capitalized.

Beginning with V8 sendmail, header names are left alone. They are passed through without case conversion of any kind. Previous assumptions[1] about capitalization are no longer valid in light of new headers generated and expected by programs.

[1] Prior to V8 sendmail, all headers were converted to lowercase and stored. Later, when mail was sent, they were then capitalized in a way similar to that of proper names, in which the first letter of each word was capitalized.

Header names can contain only printable characters. Names cannot contain control characters, space characters (such as space and tab), or the colon character. An illegal character will result in this error message:

header syntax error, line "HFull Name: $x"

Here, the error is a space in the name portion of the header declaration.

    Previous Section Next Section