*** ../sys.old/conf/files	Wed Jun 19 14:23:30 1991
--- ./conf/files	Fri Mar  6 18:06:45 1992
***************
*** 75,80 ****
--- 75,87 ----
  net/netinet/tcp_timer.c	optional inet Binary
  net/netinet/tcp_usrreq.c	optional inet Binary
  net/netinet/udp_usrreq.c	optional inet Binary
+ net/netatalk/aarp.c	optional atalk
+ net/netatalk/at_control.c	optional atalk
+ net/netatalk/at_proto.c	optional atalk
+ net/netatalk/at_ultrix.c	optional atalk
+ net/netatalk/ddp_input.c	optional atalk
+ net/netatalk/ddp_output.c	optional atalk
+ net/netatalk/ddp_usrreq.c	optional atalk
  net/netbsc/bsc_pcb.c	optional bsc Binary
  net/netbsc/bsc_proto.c	optional bsc 
  net/netbsc/bsc_states.c	optional bsc Binary
*** ../sys.old/data/af_data.c	Mon Apr 29 15:45:53 1991
--- ./data/af_data.c	Sun Mar  8 22:25:15 1992
***************
*** 69,74 ****
--- 69,82 ----
  #define AFNS	AFNULL
  #endif NS
  
+ #ifdef ATALK
+ extern int atalk_hash(), atalk_netmatch();
+ #define AFATALK \
+ 	{ atalk_hash,	atalk_netmatch }
+ #else
+ #define AFATALK	AFNULL
+ #endif
+ 
  #ifdef BINARY
  
  extern	struct afswitch afswitch[];
***************
*** 78,83 ****
  struct afswitch afswitch[AF_MAX] = {
  	AFNULL,	AFNULL,	AFINET,	AFINET,	AFPUP,
  	AFNULL,	AFNS,	AFNULL,	AFNULL,	AFNULL,
! 	AFNULL
  };
  #endif
--- 86,92 ----
  struct afswitch afswitch[AF_MAX] = {
  	AFNULL,	AFNULL,	AFINET,	AFINET,	AFPUP,
  	AFNULL,	AFNS,	AFNULL,	AFNULL,	AFNULL,
! 	AFNULL, AFNULL, AFNULL, AFNULL, AFNULL,
! 	AFNULL, AFATALK, AFNULL, AFNULL, AFNULL,
  };
  #endif
*** ../sys.old/data/if_to_proto_data.c	Mon Apr 29 15:46:34 1991
--- ./data/if_to_proto_data.c	Thu Jun  3 11:53:44 1993
***************
*** 125,130 ****
--- 125,143 ----
          { ETHERTYPE_RC,         AF_DLI,         0,              0 }
  #endif
  
+ /*
+  * Hook for netatalk.  We receive all packets.  If we're not interested
+  * in the packet, we do a normal search on if_family for someone else
+  * who might want the packet.
+  */
+ #ifdef ATALK
+ #include "atalk.h"
+ #undef s_net
+ #include "../net/netatalk/at.h"
+ #define ETHER_ATALK \
+ 	{ -1,			AF_APPLETALK,	ATPROTO_DDP,	0 }
+ #endif ATALK
+ 
  #ifdef	BINARY
  
  extern struct if_family if_family[];
***************
*** 134,139 ****
--- 148,156 ----
  /* INET specific stuff is kept in drivers for now */
  
  struct if_family if_family[] = {
+ #ifdef ETHER_ATALK
+ 	ETHER_ATALK,
+ #endif
  #ifdef ETHER_DECNET
  	ETHER_DECNET,
  #endif
*** ../sys.old/data/uipc_domain_data.c	Mon Apr 29 15:47:08 1991
--- ./data/uipc_domain_data.c	Mon Mar  2 15:24:28 1992
***************
*** 123,128 ****
--- 123,132 ----
  	ADDDOMAIN(x25);
  #endif XXXVNATV
  #endif X25_DONE
+ #ifdef ATALK
+ #include "atalk.h"
+ 	ADDDOMAIN(atalk);
+ #endif ATALK
  
  #endif
  
*** ../sys.old/net/net/conf_net.c	Mon Apr 29 16:16:23 1991
--- ./net/net/conf_net.c	Sun Mar  8 22:28:32 1992
***************
*** 233,238 ****
--- 233,242 ----
  extern int ddpintr();
  #endif
  
+ #ifdef ATALK
+ extern int atintr();
+ #endif
+ 
  #include "../net/net/netisr.h" 
  /*
   * table of interrupt vectors - scanned in locore when sofware 
***************
*** 272,277 ****
--- 276,284 ----
  #if NLAT == 1
  	{NETISR_LAT,latintr},
  #endif /* NLAT */
+ #ifdef ATALK
+ 	{NETISR_AT,atintr},
+ #endif ATALK
  #ifdef APPLETALK
  	{NETISR_DDP,ddpintr},
  #endif APPLETALK
*** ../sys.old/net/net/netisr.h	Mon Apr 29 16:16:21 1991
--- ./net/net/netisr.h	Sun Mar  8 22:29:04 1992
***************
*** 72,77 ****
--- 72,78 ----
  #define NETISR_DLI	13		/* same as AF_DLI */
  #define NETISR_LAT	14		/* same as AF_LAT */
  #define NETISR_BSC	15		/* same as AF_BSC */
+ #define NETISR_AT	16		/* same as AF_APPLETALK */
  #define NETISR_DLO      19              /* same as AF_OSI */
  
  #define	schednetisr(anisr)	{ set_bit_atomic(anisr,&netisr); setsoftnet(); }
