Useful Tables

This chapter contains three useful tables:

  • Table 23-3 shows the possible compile-time definitions for confMAPDEF.

  • Table 23-4 lists the possible K configuration command types.

  • Table 23-5 lists the possible K configuration command switches.

Definitions for confMAPDEF

Possible compile-time switches are shown in Table 23-3.

Table 23-3. m4 definitions for confMAPDEF

Switch

sendmail text reference

Database support included

-DDNSMAP

23.7.6[3ed]

dns lookups (V8.12 and above)

-DHESIOD

23.7.8[3ed]

hesiod(3) aliases and userdb

-DLDAPMAP

23.7.11[3ed]

ldap(3) support

-DMAP_NSD

23.7.16[3ed]

Irix nsd

-DMAP_REGEX

23.7.20[3ed]

Regular expression support

-DNDBM

23.7.4[3ed]

ndbm(3) database files (dbm)

-DNAMED_BIND

23.7.3[3ed]

bestmx(3) DNS lookups

-DNETINFO

23.7.13[3ed]

NeXT netinfo(3) aliases only

-DNEWDB

23.7.2[3ed]

db(3) hash and btree databases and userdb

-DNIS

23.7.14[3ed]

Sun NIS network database-maps

-DNISPLUS

23.7.15[3ed]

Sun NIS+ network database-maps

-DPH_MAP

23.7.18[3ed]

PH database-maps

-DSOCKETMAP

Section 3.1.1 [V8.13]

Socket database-maps

For example, the default Build m4 file for Ultrix (in devtools/OS/ULTRIX) might include this line:

define(`confMAPDEF´, `-DNDBM -DNIS´)

which includes support for ndbm(3) and nis(3) database-maps. The m4 file for SunOS 5.5 might include the following:

define(`confMAPDEF´, `-DNDBM -DNIS -DNISPLUS -DMAP_REGEX´)

which also includes support for the nisplus database-map and regular expressions.

Possible K Command Types

Recall that the type [34] portion of the K configuration command follows the name:

Kname type args

Note that, in a joined indented line, the name and the type allows the addition of comments and improves readability:

        Kname
                        # Why this name
           type
                      # Why this type
           args
                      # and so on

The type declares which sort of database-map to use. It must be one of the types listed in Table 23-4.

Table 23-4. Possible K command types

Type

sendmail text reference

Version

Description

arith

23.7.1[3ed]

V8.10 and above

Perform arithmetic computations

btree

23.7.2[3ed]

V8.1 and above

A db(3) form of database

bestmx

23.7.3[3ed]

V8.7 and above

Look up the best MX record for a host

dbm

23.7.4[3ed]

V8.1 and above

Really ndbm supplied with most versions of Unix

dequote

23.7.5[3ed]

V8.6 and above

Remove quotation marks

dns

23.7.6[3ed]

V8.12 and above

Look up information using DNS

hash

23.7.7[3ed]

V8.1 and above

A db(3) form of database

hesiod

23.7.8[3ed]

V8.7 and above

MIT network user authentication services

host

23.7.9[3ed]

V8.1 and above

Internal table to store and look up hostnames

implicit

23.7.10[3ed]

V8.1 and above

Search for an aliases database entry

ldap

23.7.11[3ed]

V8.10 and above

The Lightweight Directory Access Protocol (LDAP)

ldapx

23.7.11[3ed]

V8.9 and earlier

Replaced by ldap

macro

23.7.12[3ed]

V8.10 and above

Store a value into a macro using a rule

netinfo

23.7.13[3ed]

V8.7 and above

NeXT, Darwin, and Mac OS X network information services

nis

23.7.14[3ed]

V8.1 and above

Sun’s Network Information Services (NIS)

nisplus

23.7.15[3ed]

V8.7 and above

Sun’s newer version of NIS (NIS+)

nsd

23.7.16[3ed]

V8.10 and above

Irix nsd database-maps

null

23.7.17[3ed]

V8.7 and above

Provide a never found service

ph

23.7.18[3ed]

V8.10 and above

CCSO Nameserver (ph) lookups

program

23.7.19[3ed]

V8.7 and above

Run an external program to look up the key

regex

23.7.20[3ed]

V8.9 and above

Use regular expressions

sequence

23.7.21[3ed]

V8.7 and above

Search a series of database-maps

socket

Section 23.1.5 [V8.13]

V8.13 and above

Search over a TCP/IP connection

stab

23.7.22[3ed]

V8.10 and above

Internally load aliases into the symbol table

switch

23.7.23[3ed]

V8.7 and above

Build sequences based on service switch

syslog

23.7.24[3ed]

V8.10 and above

Log information using syslog(3) using rule sets

text

23.7.25[3ed]

V8.7 and above

Look up in flat text files

userdb

23.7.26[3ed]

V8.7 and above

Look up in the User Database

user

23.7.27[3ed]

V8.7 and above

Look up local passwd information

The K Command Switches

The switches must follow the type and precede the file_or_map:

Kname type switches file_or_map

If any switches follow file_or_map, they will be silently ignored.[35] All switches begin with a - character and are listed in Table 23-5. Note that some database-map types utilize only a small subset of all switches (e.g., dequote uses only -a, -D, -s, and -S, and sequence doesn’t use any).

Table 23-5. K command switches

Switch

sendmail text reference

Description

-1

23.7.11.1[3ed]

Consider successful only if exactly one key is matched (ldap only)

-A

23.3.1[3ed]

Append values for duplicate keys

-a

23.3.2[3ed]

Append tag on successful match

-b

23.7.11.2[3ed]

Base from which to begin the search (ldap only)

-b

23.7.20.1[3ed]

Use basic, not extended, regular expression matching (regex only)

-D

23.3.3[3ed]

Don’t use this database map if DeliveryMode=defer

-d

23.7.11.3[3ed]

DN to bind to server as (ldap only)

-d

23.7.20.2[3ed]

The delimiting string (regex only)

-d

24.9.109.22[3ed]

The res_search( ) _res.retry interval (dns and host only)

-f

23.3.4[3ed]

Preserve case

-H

Section 23.1.1.2 [V8.13]

Specify an LDAP URI in place of a host and port (ldap only)

-h

23.7.11.4[3ed]

Hosts that serve this network database (ldap only)

-h

23.7.18.1[3ed]

Hosts that serve this network database (ph only)

-k

23.3.5[3ed]

Specify column for key

-k

23.7.11.5[3ed]

The search query (ldap only)

-k

23.7.13[3ed]

The property that is searched (netinfo only)

-k

23.7.18.2[3ed]

Specify a list of fields to query (ph only)

-L

23.7.24[3ed]

The logging level at which to log (syslog only)

-l

23.3.6[3ed]

Time limit to timeout connection (ldap and ph only)

-M

23.7.11.6[3ed]

The method to use for binding (ldap only)

-m

23.3.7[3ed]

Suppress replacement on match

-N

23.3.8[3ed]

Append a null byte to all keys

-n

23.7.11.7[3ed]

Retrieve attribute names only, not values (ldap only)

-n

23.7.20.3[3ed]

NOT, that is, invert the test (regex only)

-O

23.3.9[3ed]

Never add a null byte

-o

23.3.10[3ed]

The database-map is optional

-P

23.7.11.8[3ed]

The secret password to use for binding (ldap only)

-p

23.7.11.9[3ed]

Port to use when connecting to host (ldap only)

-q

23.3.11[3ed]

Don’t strip quotes from key

-R

23.7.11.10[3ed]

Don’t auto-chase referrals (ldap only)

-R

23.7.6[3ed]

Record type to look up (dns only)

-r

23.7.11.11[3ed]

Allow dereferencing of aliases (ldap only)

-r

24.9.109.22[3ed]

The res_search( ) _res.retries limit (dns and host only)

-S

23.3.12[3ed]

Space replacement character for database-map

-s

23.7.11.12[3ed]

Search scope of “base,” “one,” or “sub” (ldap only)

-s

23.7.20.4[3ed]

Substring to match and return (regex only)

-T

23.3.13[3ed]

Suffix to append on temporary failure

-t

23.3.14[3ed]

Ignore temporary errors

-V

23.7.11.13[3ed]

Specify return attribute list separator (ldap only)

-v

23.3.15[3ed]

Specify the value’s column

-v

23.7.13[3ed]

The property to return (netinfo only)

-v

23.7.18[3ed]

Specify a list of fields to return (ph only, V8.10-V8.12)

-v

23.7.11.14[3ed]

Specify the list of attributes to return (ldap only)

-w

Section 23.1.1.1 [V8.13]

Specify the LDAP API version to use (ldap only)

-Z

23.7.11.16[3ed]

Limit the number of matches to return (ldap only)

-z

23.3.16[3ed]

Specify the column delimiter

If a switch other than those listed is specified, either an error is reported or the switch is silently ignored, depending on the version of sendmail and the particular map type.



[34] The sendmail source calls this class, but we chose type to make it clear that this is different from class macros.

[35] This is true as of V8.13. Future versions might change the semantics of the K line such that switches can follow.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.237.5.1