Re: Problems w/ 1.3.3b2 & Linux 1.2.11


Subject: Re: Problems w/ 1.3.3b2 & Linux 1.2.11
From: wesley.craig@umich.edu
Date: Fri Aug 04 1995 - 10:27:50 EDT


> From: bueker@bidnix.bid.fh-hannover.de (Toens Bueker)
> To: kgieselm@wopr.gsm.uci.edu (Ken Gieselman)

> I don't know exactly when, but after some time the Linux-Server
> isn't available any longer in the chooser menus. On the
> Server there is no difference. 'nbplkup' and all the other
> utils seem to work quite perfect.

> Jul 21 12:28:00 bidnix atalkd[58]: as_timer last gateway down

A fairly easy fix. The distributed version of sys/linux/ddp.c
doesn't pay attention to what's passed to it from atalkd. The
attached patch fixes this problem.

:wes

*** sys/linux/ddp.c- 1995/06/30 18:00:45
--- sys/linux/ddp.c 1995/07/18 19:53:52
***************
*** 313,318 ****
--- 313,319 ----
          int ct;
          int netrange=ntohs(atif->nets.nr_lastnet)-ntohs(atif->nets.nr_firstnet)+1;
          int probe_net=ntohs(atif->address.s_net);
+ int probe_node=atif->address.s_node;
          int netct;
          int nodect;
          
***************
*** 328,335 ****
                  else
                          probe_net=ntohs(atif->nets.nr_firstnet) + (jiffies%netrange);
          }
!
!
          /*
           * Scan the networks.
           */
--- 329,339 ----
                  else
                          probe_net=ntohs(atif->nets.nr_firstnet) + (jiffies%netrange);
          }
!
! if ( probe_node == ATADDR_ANYNODE ) {
! probe_node = jiffies&255;
! }
!
          /*
           * Scan the networks.
           */
***************
*** 337,350 ****
          for(netct=0;netct<=netrange;netct++)
          {
                  /*
! * Sweep the available nodes from a random start.
                   */
- int nodeoff=jiffies&255;
-
                  atif->address.s_net=htons(probe_net);
                  for(nodect=0;nodect<256;nodect++)
                  {
! atif->address.s_node=((nodect+nodeoff)&0xFF);
                          if(atif->address.s_node>0&&atif->address.s_node<254)
                          {
                                  /*
--- 341,352 ----
          for(netct=0;netct<=netrange;netct++)
          {
                  /*
! * Sweep the available nodes from a given start.
                   */
                  atif->address.s_net=htons(probe_net);
                  for(nodect=0;nodect<256;nodect++)
                  {
! atif->address.s_node=((nodect+probe_node)&0xFF);
                          if(atif->address.s_node>0&&atif->address.s_node<254)
                          {
                                  /*



This archive was generated by hypermail 2b28 : Sat Dec 18 1999 - 16:23:09 EST