The name is a pointer to a string that contains the name of the
header (the part to the left of the colon), and value is the value of the header (the part to
the right of the colon):
name: value
The name may be an empty string, but will never be NULL. Th evalue may be an empty
string, but will never be NULL. When a header occupies more than one line, the header is
unfolded by sendmail and supplied to your Milter in unfolded form. For example, consider
this value from a Received: header:
from example.com (mx.example.com [12.34.56.78])\r\n\tby your.domain with ESMTP id
i08KjvWt014695\r\n\tfor
; Fri, 14 Dec 2007 13:46:10 -0700
Here, the indentation character (a tab) is represented as \t, and a carriage-return/linefeed
pair is represented as \r\n.
Before your Milter receives a header, sendmail has already reviewed that header for any
values that are out of bounds or are illegal. If, for example, sendmail finds an absurdly long
header, it will truncate that header??™s value before passing it to your Milter.
Prior to V8.14, sendmail did not strip the high bit from header-value characters that had the
high bit set. Beginning with V8.14, sendmail strips the high bit from header values before
passing them to your Milter.
Prior to V8.14, the value of each header had its leading spaces removed before they were
passed to your Milter:
To:
Pages:
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194