[comp.mail.sendmail] Sendmail and MB

jf@ap.co.umist.ac.uk (John Forrest) (11/05/90)

We are thinking of upgrading to sendmail 5.65+IDA from 5.61. What I would like to
known, though, is does anyone use a version of sendmail that uses MB records from
BIND? It seems strange that they are there, in the specification but yet are
ignored by sendmail!

John Forrest
Dept of Computation
UMIST.

mbl900@manuel.anu.edu.au (Mathew BM LIM) (11/07/90)

Try  sendmail 5.61-bind 1.5+ida from Dan@DNA.LTH.Se ( Dan Oscarsson ), It is
available via anon ftp from archive.anu.edu.au (130.56.4.25) in the file

	~ftp:pub/src/networking/send5.61+IDA+BIND1.5.tar.Z 

Here is the README from it :


     sendmail 5.61-bind 1.5+ida

 New for version 1.5 compared to version 1.4 is:

    By defining IGNORE_ISOC_ERRORS in conf.h, responses for the isoc
    smtp query is not logged in letters that fails in error and is returned
    to the sender.
    Some small patches from the net.
    i-flag on smtp mailer is ignored. Only the result of the isoc question
    is used.
    The SCANF define is removed from conf.h. Now if no format is specified
    it works like SCANF was not defined before. If a format is specified
    it works like when SCANF was defined before. This provides a more
    homogeneous behaviour. This means that %s is not default when you
    define a class from a file as it were before when SCANF was defined.

    If NSALIAS is defined $@ is no longer needed in the $#local lines in
    ruleset 0. If is is not defined $j is used as the domain to query the
    name server for aliases.

    It is now possible to define character translations of letters
    transmitted to or received from different hosts.
    This is done by extending the OJ option in sendmail.cf.
    Syntax: OJL<translation-table>
         or OJH<translation-table>
         or OJH[<translation-table>] <mask> <host-number>...

    The first version defines translation from iso 8859-1 to 7-bit characters
    after local conventions just like in version 1.4.
    <translation-table> is a sequence of character pairs of which each may
    be written as a sigle character or as a "\" followed by octal digits.
    The first is always iso 8859-1 and the second what it translates to.
    Several OJL lines may be used to define the loca translation rable.
    For compatability a line starting without a letter "L" or "H" after the OJ
    is also treated as a OJL line.

    The other two defines a translation table for some hosts.
    If there is no <mask> after the translation table the following
    OJH line will continue the same translation table.
    If the <translation-table> is empty (at least one space) the hosts 
    defined by that line is appended to the last previously defined
    translation table. 
    <mask> is a mask to be applied to all host numbers when searching
    for a host among those that follows. This makes it possible to give
    several host by giving one number.
    Both <mask> and <host-number> must be given as an internet number
    in the normal decimal format "num.num.num.num".
    The <translation-table> is defined as told above. The pair defines
    iso 8859-1 to special character set. Undefined translations are
    not translated. When a letter is received from one of the hosts given
    by a translation table, the reverse translation is used.

    Examples: OJH\304A 255.255.255.255 123.34.56.7 124.34.67.23
                 translate \304 to an A for letters from the two hosts above.
              OJH\304A 255.255.255.0   123.34.56.0
                 translate for all hosts with numbers beginning with 123.34.56
              OJH      255.255.255.255 123.34.57.9
                 let hosts 123.34.57.9 use the same translation as those
                 on the line above.

              Below lines with local translation and for some Macs.

       OJL\304[\305]\326\134\344{\345}\366|
       # Translate from Macintosh to ISO 8859-1 (re is POP-server for the Macs)
       OJH\304\200\305\201\307\202\311\203\321\204\326\205\334\206\341\207
       OJH\340\210\342\211\344\212\343\213\345\214\347\215\351\216\350\217
       OJH\352\220\353\221\355\222\354\223\356\224\357\225\361\226\363\227
       OJH\362\230\364\231\366\232\365\233\372\234\371\235\373\236\374\237
       OJH\200\240\260\241\247\244\267\245\266\246\337\247\256\250\201\252
       OJH\264\253\250\254\202\255\306\256\330\257\203\260\245\264\204\266
       OJH\205\267\206\272\252\273\272\274\346\276\370\277\277\300\241\301
       OJH\254\302\207\303\210\304\211\305\212\306\253\307\273\310\213\311
       OJH\240\312\300\313\303\314\325\315\255\321\214\325\367\326\377\330
       OJH\215\334\216\337\217\340\220\341\221\342\222\343\223\344\224\345
       OJH\225\346\226\347\227\350\230\351\231\352\232\353\233\354\234\355
       OJH\235\356\236\357\237\361\244\362\246\363\257\364\274\365\276\366
       OJH\301\367\302\370\310\371\312\372\313\373\314\374\315\377
255.255.255.255 192.16.123.119 192.16.123.200
       OJH 255.255.255.192 192.16.123.128
       OJH 255.255.255.248 192.16.123.192

    A host is located by searching through the tables in the same order as
    the OJ lines.

    If not special translation table is defined for a host the local 
    convention or standard table is used if the receiver cannot use
    iso 8859-1.

 New for version 1.4 compared to version 1.3 is:

    ISO character set support. Defined by option ISO in conf.c.
    Does no harm if you do not use ISO on your machine, but can then allow
    ISO letters to pass through your machine.

    The smtp protocol has been extended. See file README.SMTP.

    The extensions are intended to work with current old mailers and 
    smtp servers that does not support iso characters.

    For smtp links sendmail will query if receiver can handle iso character
    sets. For other mailers, the "i"-flag must be defined for the mailers
    that can handle the iso 8859-1 character set. Currently only iso 8859-1
    is supported but in the future other iso character sets may also work.
    If the mailer a letter is going through does not support iso characters,
    the letter is converted to 7-bit using two conversion schemes:
        If the sender of the letter is a local sender or the sender is
        identified to come from a local domain, it is converted to 7-bit
        using the local conventions defined by the "J"-option in sendmail.cf.

        Otherwise the letter is converted by replacing character with code
        greater than 127 with the nearest look alike letter in ascii.

    To receive letters locally with iso 8859-1 you must have the "i"-flag
    on the local mailer.
    To define the local convertion define the "J"-option in sendmail.cf
    After the J is a sequence of character pairs of which the first may be
    of the format \octal digits. The first character identifies an iso
character
    and the second the ascii character it is to be converted to incase
    7-bit conversion is needed.
    In Sweden "OJ\304[\305]\326\\344{\345}\366|" would be fine.
    To locate if the letter is from a local domain the final part of
    the sender is matched to the string defined by the "j"-option.
    In Sweden you would normally define it as: "Oj.se"

    With ISO letters, only the body is ISO. Headers are always converted into
    7-bit.

    The reason that iso 8859-1 is used is that X/Open recommends the
    iso 8859-1:1987 character set to be used for transmission and internal use.
   
 New for version 1.3 compared to version 1.0 is:

    New name server rules for canonisation of names through MX or A records.

    Beginning of iso character set handling. See version 1.4

 New for version 1.1 compared to version 1.0 is:

    Syntax for rule with MX-lookup by using bind search rules.

    If the sender cannot be verified through name server the letter is
    delivered anyway. This may make it impossible to replay to the
    from adress. Also the name server rules should be contained in
    ruleset 0. If name server rules are used in ruleset 3,1 or 4
    and the name server fails during sender check, the letter will not be
    delivered immediately.

 Version 1.0

    This source code contains the sendmail 5.61 source code modified
    with the "new" ida-patches and patches to use named derived from patches
    done by matti@kth.se.

    The Makefile is for a Sun running SunOS 4.0. You must have bind 4.8 to
    make sendmail work. If you have the resolv library in the ordinary place
    you can remove the -L../../Bind in the Makefile.

    The named patches enables you to query the name server from the rewriting
    rules in sendmail.cf. See README.NS.

    The ida definitions of the $k and $w macros are changed to work with
    a name server. $k is the host name returned by the gethostname call
    (normally the uucp host name) and $w is the name returned by the
    gethostbyname (i.e. the name full name from the name server).

    If NSALIAS is defined in conf.h, alias lookup is done from the name
    server instead of /etc/aliases (or /usr/lib/aliases). MINFO records
    are supported for owner of mailing list lookup.

    NAMED_BIND should always be defined in this version of sendmail.

    If NAMED_BIND_NO_SEARCH is defined in conf.h, no domain search is used
    when communication with named 4.8 is done during the delivery phase.

    You need to have the strcasecmp routine in the resolv library or libc.
    There is also a home made unsetenv routine in util.c as this routine
    does not exist on a Sun.

    Bugs and comments should be sent to  Dan@DNA.LTH.Se

     Dan Oscarsson

---
Mathew Lim, Unix Systems Programmer, Computer Services Centre, ANU, Australia.
Telephone : +61 6 249 2750	| ACSnet   : Mathew.BM.Lim@anu.oz
Fax       : +61 6 247 3425	| Internet : Mathew.BM.Lim@anu.edu.au