Subject: [netatalk-admins] Mac OS 8 Fix...

From: Ben Payne <[email-masked]>
Date: Mon, 25 Aug 1997 14:26:06 -0700

Hi,

first of all I just subscribed to this list so I'm sorry if the answer was
recently discussed.  

My question is, is there a fix to the problem of "dancing icon" with OS 8
clients.  I'm currently running 1.3.3, does 1.4b2 not have this problem?
Is there a patch to fix it, or is there a configuration you can change. 

Also, I've noticed latly, maybe since I upgraded to OS 8 that there is alot
of traffic between my mac and the server when they are just idel.  tcpdump
show lines like these over and over again, about 250 lines (packets) every
5 seconds.  Any ideas?

14:23:55.024122 21 > 0 at-lap#72 18
14:23:55.024122 0 > 21 at-lap#0 35
14:23:55.024122 0 > 41 at-lap#0 38
14:23:55.034122 87 > 2 at-lap#32 596
14:23:55.034122 23 > 2 at-lap#80 532
14:23:55.034122 0 > 21 at-lap#0 35
14:23:55.044122 0 > 91 at-lap#0 88

Thanks

-> Ben Payne

---

From: Alistair Riddell <[email-masked]>
Date: Mon, 25 Aug 1997 23:01:16 +0100 (BST)

The latest version of Adrian Sun's patch to Netatalk which adds AFP over
TCP capability fixes this problem:

ftp://ftp.u.washington.edu/pub/user-supported/asun

As for the heavy traffic, that is probably caused by the dancing icons and
will go away when that is fixed.

--
Alistair Riddell - BOFH
IT Support Department, George Watson's College, Edinburgh
Tel: +44 131 447 7931 Ext 176       Fax: +44 131 452 8594

---

From: [email-masked]
Date: Mon, 25 Aug 1997 20:03:52 -0400

> From:    Ben Payne <[email-masked]>
> To:      [email-masked]

> Is there a patch to fix it, or is there a configuration you can change. 

The attached patch to netatalk-1.4b2 fixes the "dancing icon" problem.

:wes
*** etc/afpd/fork.c-	1997/08/17 00:01:46
--- etc/afpd/fork.c	1997/08/23 16:37:46
***************
*** 710,724 ****
  	    break;
  
  	case FILPBIT_FINFO :
! 	    if ( !isad || bcmp( ad_entry( &ofork->of_ad, ADEID_FINDERI ),
! 		    ufinderi, 8 ) == 0 ) {
  		bcopy( ufinderi, data, 32 );
- 		if (( em = getextmap( ofork->of_name )) != NULL ) {
- 		    bcopy( em->em_type, data, sizeof( em->em_type ));
- 		    bcopy( em->em_creator, data + 4, sizeof( em->em_creator ));
- 		}
  	    } else {
  		bcopy( ad_entry( &ofork->of_ad, ADEID_FINDERI ), data, 32 );
  	    }
  	    data += 32;
  	    break;
--- 718,732 ----
  	    break;
  
  	case FILPBIT_FINFO :
! 	    if ( !isad ) {
  		bcopy( ufinderi, data, 32 );
  	    } else {
  		bcopy( ad_entry( &ofork->of_ad, ADEID_FINDERI ), data, 32 );
+ 	    }
+ 	    if ( bcmp( data, ufinderi, 8 ) == 0 &&
+ 		    ( em = getextmap( ofork->of_name )) != NULL ) {
+ 		bcopy( em->em_type, data, sizeof( em->em_type ));
+ 		bcopy( em->em_creator, data + 4, sizeof( em->em_creator ));
  	    }
  	    data += 32;
  	    break;
*** etc/afpd/file.c-	1997/08/17 00:01:46
--- etc/afpd/file.c	1997/08/20 22:39:08
***************
*** 125,139 ****
  	    break;
  
  	case FILPBIT_FINFO :
! 	    if ( !isad ||
! 		    bcmp( ad_entry( &ad, ADEID_FINDERI ), ufinderi, 8 ) == 0 ) {
  		bcopy( ufinderi, data, 32 );
- 		if (( em = getextmap( path )) != NULL ) {
- 		    bcopy( em->em_type, data, sizeof( em->em_type ));
- 		    bcopy( em->em_creator, data + 4, sizeof( em->em_creator ));
- 		}
  	    } else {
  		bcopy( ad_entry( &ad, ADEID_FINDERI ), data, 32 );
  	    }
  	    data += 32;
  	    break;
--- 125,139 ----
  	    break;
  
  	case FILPBIT_FINFO :
! 	    if ( !isad ) {
  		bcopy( ufinderi, data, 32 );
  	    } else {
  		bcopy( ad_entry( &ad, ADEID_FINDERI ), data, 32 );
+ 	    }
+ 	    if ( bcmp( data, ufinderi, 8 ) == 0 &&
+ 		    ( em = getextmap( path )) != NULL ) {
+ 		bcopy( em->em_type, data, sizeof( em->em_type ));
+ 		bcopy( em->em_creator, data + 4, sizeof( em->em_creator ));
  	    }
  	    data += 32;
  	    break;