home *** CD-ROM | disk | FTP | other *** search
/ Garbo / Garbo.cdr / mac / cap / cap60.pch < prev    next >
Encoding:
Text File  |  1991-11-29  |  3.9 KB  |  115 lines

  1. Patch #:    75
  2. Type:        OS bug workaround
  3. Priority:    high for affected sites
  4. Affects:    (phase 2) sites using unpatched ULTRIX 4.2 packet filter
  5. Submitted:    Jeffrey Mogul <mogul@pa.DEC.COM>
  6. Submitted:    David Hornsby <djh@munnari.OZ.AU>
  7. Archived:    munnari.OZ.AU    mac/cap.patches/cap60.patch075
  8. Application:    'cd cap60; patch -p < cap60.patches/cap60.patch075'
  9. Summary:    add ULT42PFBUG define to workaround missing 802.3 AARPs
  10. WARNING:    all 4.2 sites must also allow COPYALL using 'ifconfig +copyall'
  11. File:        cap60/Configure
  12. File:        cap60/support/ethertalk/spfiltp.c
  13.  
  14. *** Configure.orig    Mon Nov 25 02:20:58 1991
  15. --- Configure        Mon Nov 25 02:25:39 1991
  16. ***************
  17. *** 1,7 ****
  18.   #!/bin/sh
  19. ! # $Author: djh $ $Date: 1991/11/17 12:20:37 $
  20. ! # $Header: /mac/src/cap60/RCS/Configure,v 2.30 1991/11/17 12:20:37 djh Rel djh $
  21. ! # $Revision: 2.30 $
  22.   # CAP configuration shell script.  This ain't perfect, but it's a start.
  23.   # Execute with /bin/sh Configure if your system won't run it (ksh is okay too)
  24.   # 
  25. --- 1,7 ----
  26.   #!/bin/sh
  27. ! # $Author: djh $ $Date: 1991/11/24 15:25:20 $
  28. ! # $Header: /mac/src/cap60/RCS/Configure,v 2.31 1991/11/24 15:25:20 djh Rel djh $
  29. ! # $Revision: 2.31 $
  30.   # CAP configuration shell script.  This ain't perfect, but it's a start.
  31.   # Execute with /bin/sh Configure if your system won't run it (ksh is okay too)
  32.   # 
  33. ***************
  34. *** 560,565 ****
  35. --- 560,568 ----
  36.   #
  37.   # + AUFS_README links readme file into new user's top level
  38.   # define(`specialcflags',concat(specialcflags,` -DAUFS_README'))
  39. + #
  40. + # + ULT42PFBUG unpatched ULTRIX 4.2 packet filter workaround (also need COPYALL)
  41. + # define(`specialcflags',concat(specialcflags,` -DULT42PFBUG'))
  42.   #
  43.   #
  44.   #
  45. *** support/ethertalk/spfiltp.c.orig    Thu Sep 12 02:10:02 1991
  46. --- support/ethertalk/spfiltp.c        Mon Nov 25 02:27:33 1991
  47. ***************
  48. *** 1,6 ****
  49. ! static char rcsid[] = "$Author: djh $ $Date: 1991/09/11 16:09:29 $";
  50. ! static char rcsident[] = "$Header: /mac/src/cap60/support/ethertalk/RCS/spfiltp.c,v 2.4 1991/09/11 16:09:29 djh Rel djh $";
  51. ! static char revision[] = "$Revision: 2.4 $";
  52.   
  53.   /*
  54.    * spfiltp.c - Simple "protocol" level interface to Ultrix packetfilter
  55. --- 1,6 ----
  56. ! static char rcsid[] = "$Author: djh $ $Date: 1991/11/24 15:27:18 $";
  57. ! static char rcsident[] = "$Header: /mac/src/cap60/support/ethertalk/RCS/spfiltp.c,v 2.5 1991/11/24 15:27:18 djh Rel djh $";
  58. ! static char revision[] = "$Revision: 2.5 $";
  59.   
  60.   /*
  61.    * spfiltp.c - Simple "protocol" level interface to Ultrix packetfilter
  62. ***************
  63. *** 301,306 ****
  64. --- 301,309 ----
  65.   #define s_offset(structp, element) (&(((structp)0)->element))
  66.     offset = ((int)s_offset(struct ether_header *, ether_type))/sizeof(u_short);
  67.   #ifdef PHASE2
  68. + #ifdef ULT42PFBUG
  69. +   if (sock >= 0)
  70. + #endif ULT42PFBUG
  71.     offset += 4;    /* shorts: 2 bytes length + 6 bytes of 802.2 and SNAP */
  72.   #endif PHASE2
  73.     *fwp++ = ENF_PUSHWORD + offset;
  74. ***************
  75. *** 441,451 ****
  76. --- 444,462 ----
  77.     iov[0].iov_base = (caddr_t)&ea;
  78.     iov[0].iov_len = sizeof(ea);
  79.     iov[1].iov_base = (caddr_t)header;    /* consume 802.2 hdr & SNAP */
  80. + #ifdef ULT42PFBUG
  81. +   iov[1].iov_len = 0;
  82. + #else  ULT42PFBUG
  83.     iov[1].iov_len = sizeof(header);
  84. + #endif ULT42PFBUG
  85.     iov[2].iov_base = (caddr_t)buf;
  86.     iov[2].iov_len = bufsiz;
  87.     cc = pi_readv(edx, iov, 3);
  88. + #ifdef ULT42PFBUG
  89. +   return(cc - sizeof(ea));
  90. + #else  ULT42PFBUG
  91.     return(cc - sizeof(ea) - sizeof(header));
  92. + #endif ULT42PFBUG
  93.   #else  PHASE2
  94.     iov[0].iov_base = (caddr_t)&ea;
  95.     iov[0].iov_len = sizeof(ea);
  96. *** README.orig        Mon Nov 25 02:21:05 1991
  97. --- README        Mon Nov 25 02:25:56 1991
  98. ***************
  99. *** 3,9 ****
  100.              (For use with AppleTalk/Ethernet bridge)
  101.   
  102.       o RELEASE NOTES
  103. !     o CAP Distribution 6.0, Patch Level 74, November 1991
  104.   
  105.   Introduction
  106.   ------------
  107. --- 3,9 ----
  108.              (For use with AppleTalk/Ethernet bridge)
  109.   
  110.       o RELEASE NOTES
  111. !     o CAP Distribution 6.0, Patch Level 75, November 1991
  112.   
  113.   Introduction
  114.   ------------
  115.