]> arthur.barton.de Git - netatalk.git/blobdiff - sys/netatalk/at.h
Fix ressource leak, from Riccardo Magliocchetti
[netatalk.git] / sys / netatalk / at.h
index 541dcb18d492c2d0f0c6d5192f9be4abf80e09ad..f544c40f833fc8e63fa86052b56124628e607197 100644 (file)
@@ -1,6 +1,4 @@
 /*
- * $Id: at.h,v 1.2 2001-06-29 14:14:47 rufustfirefly Exp $
- *
  * Copyright (c) 1990,1991 Regents of The University of Michigan.
  *
  * All Rights Reserved.  See COPYRIGHT.
@@ -9,15 +7,31 @@
 #ifndef __AT_HEADER__
 #define __AT_HEADER__
 
-#ifdef linux /* pull in the linux header */
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif /* HAVE_CONFIG_H */
+
+#ifndef NO_DDP
+
+#if defined(linux) /* pull in the linux header */
 #include <sys/socket.h>
 #include <asm/types.h>
 #include <linux/atalk.h>
+
+#ifdef HAVE_ATALK_ADDR
+#define at_addr atalk_addr
+#define netrange atalk_netrange
+#endif /* HAVE_ATALK_ADDR */
+
 #else /* linux */
 
 #include <sys/types.h>
 #include <netinet/in.h> /* so that we can deal with sun's s_net #define */
 
+#ifdef MACOSX_SERVER
+#include <netat/appletalk.h>
+#endif /* MACOSX_SERVER */
+
 /*
  * Supported protocols
  */
  * These should really be in some global header file, but we can't
  * count on them being there, and it's annoying to patch system files.
  */
+#ifndef ETHERTYPE_AT
 #define ETHERTYPE_AT   0x809B          /* AppleTalk protocol */
+#endif
+#ifndef ETHERTYPE_AARP
 #define ETHERTYPE_AARP 0x80F3          /* AppleTalk ARP */
+#endif
 
 #define DDP_MAXSZ      587
 
@@ -51,6 +69,7 @@
 /*
  * AppleTalk address.
  */
+#ifndef MACOSX_SERVER
 struct at_addr {
 #ifdef s_net
 #undef s_net
@@ -58,6 +77,7 @@ struct at_addr {
     u_short    s_net;
     u_char     s_node;
 };
+#endif /* MACOSX_SERVER */
 
 #define ATADDR_ANYNET  (u_short)0x0000
 #define ATADDR_ANYNODE (u_char)0x00
@@ -71,6 +91,7 @@ struct at_addr {
  * interface.  IFACE may be filled in by the client, and is filled in
  * by the kernel.
  */
+#ifndef MACOSX_SERVER
 struct sockaddr_at {
 #ifdef BSD4_4
     u_char             sat_len;
@@ -99,6 +120,7 @@ struct sockaddr_at {
     char               sat_zero[ 8 ];
 #endif /* notdef */
 };
+#endif /* MACOSX_SERVER */
 
 struct netrange {
     u_char             nr_phase;
@@ -112,4 +134,6 @@ extern struct protosw       atalksw[];
 #endif /* KERNEL */
 
 #endif /* linux */
+#endif /* NO_DDP */
 #endif /* __AT_HEADER__ */
+