]> git.saurik.com Git - apple/xnu.git/blobdiff - bsd/netat/at_aarp.h
xnu-792.10.96.tar.gz
[apple/xnu.git] / bsd / netat / at_aarp.h
index b12fa413299cd1480c24b7f6c1911db34674d845..7abb258155454669a81d50f655ac97546850840d 100644 (file)
@@ -3,20 +3,19 @@
  *
  * @APPLE_LICENSE_HEADER_START@
  * 
- * This file contains Original Code and/or Modifications of Original Code
- * as defined in and that are subject to the Apple Public Source License
- * Version 2.0 (the 'License'). You may not use this file except in
- * compliance with the License. Please obtain a copy of the License at
- * http://www.opensource.apple.com/apsl/ and read it before using this
- * file.
+ * The contents of this file constitute Original Code as defined in and
+ * are subject to the Apple Public Source License Version 1.1 (the
+ * "License").  You may not use this file except in compliance with the
+ * License.  Please obtain a copy of the License at
+ * http://www.apple.com/publicsource and read it before using this file.
  * 
- * The Original Code and all software distributed under the License are
- * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
+ * This Original Code and all software distributed under the License are
+ * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
- * Please see the License for the specific language governing rights and
- * limitations under the License.
+ * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT.  Please see the
+ * License for the specific language governing rights and limitations
+ * under the License.
  * 
  * @APPLE_LICENSE_HEADER_END@
  */
@@ -104,7 +103,7 @@ typedef struct {
 /*************************************************/
 
 typedef struct {
-       struct atalk_addr       dest_at_addr;
+       struct atalk_addr       dest_at_addr;           /* net# in network byte order */
        struct etalk_addr       dest_addr;
        char                    dummy[2];       /* pad out to struct size of 32 */
        time_t                  last_time;      /* the last time that this addr
@@ -129,19 +128,22 @@ typedef struct {
 #define        AMT_HASH(a)                                                             \
        ((NET_VALUE(((struct atalk_addr *)&a)->atalk_net) + ((struct atalk_addr *)&a)->atalk_node) % AMT_NB)
 
+/* at_addr - net # in network byte order */
 #define        AMT_LOOK(at, at_addr, elapp) {                                                  \
        register n;                                                             \
        at = &aarp_table[elapp->ifPort]->et_aarp_amt[AMT_HASH(at_addr) * AMT_BSIZ];                     \
        for (n = 0 ; ; at++) {                                                  \
-           if (ATALK_EQUAL(at->dest_at_addr, at_addr))                         \
+           if (at->dest_at_addr.atalk_node == (at_addr).atalk_node &&                                                                  \
+               NET_EQUAL(at->dest_at_addr.atalk_net, (at_addr).atalk_net))                             \
                break;                                                          \
            if (++n >= AMT_BSIZ) {                                              \
                at = NULL;                                                      \
                break;                                                          \
             }                                                                  \
        }                                                                       \
-        }
+}
 
+/* at_addr - net # in network byte order */
 #define        NEW_AMT(at, at_addr, elapp) {                                                   \
        register n;                                                             \
        register aarp_amt_t *myat;                                              \
@@ -154,7 +156,7 @@ typedef struct {
                break;                                                          \
             }                                                                   \
        }                                                                       \
-       }
+}
 
 #define        AARP_NET_MCAST(p, elapp)                                                \
        (NET_VALUE((p)->dst_net) == elapp->ifThisNode.s_net)            \