ypxfer, DNS, sendmail.cf and NIS

  (This is a repost, I don't think the original ever made it, but I don't

where it got lost?).

        When generating the aliases maps, a lot goes on behind the

scene. The first bug I had:

----- Begin Included Message -----

        Sunos 4.1.1, sun4/110,

just remade my /etc/aliases and went in /var/yp to type make and got:

sasun1[741]$ make

10 aliases, longest (sunflash) 48 bytes, 248 bytes total

/usr/etc/yp/mkalias /var/yp/`domainname`/mail.aliases /var/yp/`domainname`/mail.byaddr;

rm /var/yp/`domainname`/mail.aliases;

updated aliases

Status received from ypxfr on sasun1:

        Failed - no local order number in map - use -f flag to ypxfr.

Status received from ypxfr on sasun2:

        Failed - no local order number in map - use -f flag to ypxfr.

Status received from ypxfr on sicsun2:

        Failed - no local order number in map - use -f flag to ypxfr.

pushed aliases

----- End Included Message -----

   In this case the problem is NOT due to Sun:

   The problem is due to the fact that we started using

a sendmail for mx records which didn't come from Sun. When creating

the aliases data base, the sendmail from Sun adds a couple of line

related to NIS. When those lines are missing, yppush chokes. The

solution was to modify the /var/yp/Makefiles to refer to sendmail.sun

rather than /usr/lib/sendmail.

    BTW, we have now succeeded in using sendmail.mx from Sun with

our sendmail.cf.

    Of course this brought to light problem #2 which is a real bug

from Sun.

----- Begin Included Message -----

To:pho@swiss.sun.com

Subject: /usr/etc/yp/mkalias

make

13 aliases, longest 391 bytes, 879 bytes total

/usr/etc/yp/mkalias /var/yp/`domainname`/mail.aliases /var/yp/`domainname`/mail.byaddr;

rm /var/yp/`domainname`/mail.aliases;

updated aliases

Can't translate master name Z to an address.

Can't bind master to send ypclear message to ypserv for map mail.aliases.

^C

>> od -a mail.aliases.pag | head -10

0000140 nul nul nul @ nul @ nul soh Z Y P _ M A S T

0000160 E R _ N A M E 0 6 6 7 5 8 9 5 9

     We see the Z where the master name should be, here is a correct version:

>> od -a mail.aliases.pag | head -10

0000140 nul @ nul s a s u n 1 Y P _ M A S T

0000160 E R _ N A M E 0 6 6 7 5 9 0 4 7

        After lots of hours, I discovered that mkalias was trying

to parse sendmail.cf and was confused by the following line:

Dw$Z

        This line defines the machine name and mkalias is unable

to realize that the variable $Z is defined prior to this point:

DZsasun1

        But if I redefine the variable w this way:

        

Dwsasun1

        Everything now works.

----- End Included Message -----

Alain Brossard, Ecole Polytechnique Federale de Lausanne,

        SIC/SII, EL-Ecublens, CH-1015 Lausanne, Suisse

brossard@sasun1.epfl.ch

----- End Included Message -----

[3985 byte] By [CodeProf.com] at [2007-12-25 7:19:00]