X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/43866e378188c25dd1e2208016ab3cbeb086ae6c..4452a7af2eac33dbad800bcc91f2399d62c18f53:/bsd/netat/ddp.h diff --git a/bsd/netat/ddp.h b/bsd/netat/ddp.h index d02c3e34f..0554ddf0e 100644 --- a/bsd/netat/ddp.h +++ b/bsd/netat/ddp.h @@ -1,16 +1,19 @@ /* * Copyright (c) 2000 Apple Computer, Inc. All rights reserved. * - * @APPLE_LICENSE_HEADER_START@ - * - * Copyright (c) 1999-2003 Apple Computer, Inc. All Rights Reserved. + * @APPLE_OSREFERENCE_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. + * compliance with the License. The rights granted to you under the License + * may not be used to create, or enable the creation or redistribution of, + * unlawful or unlicensed copies of an Apple operating system, or to + * circumvent, violate, or enable the circumvention or violation of, any + * terms of an Apple operating system software license agreement. + * + * Please obtain a copy of the License at + * http://www.opensource.apple.com/apsl/ 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 @@ -20,7 +23,7 @@ * Please see the License for the specific language governing rights and * limitations under the License. * - * @APPLE_LICENSE_HEADER_END@ + * @APPLE_OSREFERENCE_LICENSE_HEADER_END@ */ /* * @@ -35,6 +38,8 @@ #define _NETAT_DDP_H_ #include +#ifdef __APPLE_API_OBSOLETE + /* Header and data sizes */ #define DDP_HDR_SIZE 5 /* DDP (short) header size */ @@ -63,9 +68,17 @@ /* DDP extended header packet format */ typedef struct { - unsigned unused:2, - hopcount:4, - length:10; /* Datagram length */ +#if BYTE_ORDER == BIG_ENDIAN + unsigned unused:2, + hopcount:4, /* hop count/len high order */ + length_H:2; +#endif +#if BYTE_ORDER == LITTLE_ENDIAN + unsigned length_H:2, + hopcount:4, + unused:2; +#endif + u_char length_L; /* len low order */ ua_short checksum; /* Checksum */ at_net dst_net; /* Destination network number */ at_net src_net; /* Source network number */ @@ -73,14 +86,17 @@ typedef struct { at_node src_node; /* Source node ID */ at_socket dst_socket; /* Destination socket number */ at_socket src_socket; /* Source socket number */ - u_char type; /* Protocol type */ + u_char type; /* Protocol type */ char data[DDP_DATA_SIZE]; } at_ddp_t; -#define DDPLEN_ASSIGN(ddp, len) ddp->length = len -#define DDPLEN_VALUE(ddp) ddp->length - +#define DDPLEN_ASSIGN(ddp, len) \ + ddp->length_H = 0x03 & (len >> 8); \ + ddp->length_L = len & 0xff; + +#define DDPLEN_VALUE(ddp) \ + (((u_short)ddp->length_H) << 8) + ddp->length_L /* DDP module statistics and configuration */ @@ -105,6 +121,7 @@ typedef struct at_ddp_stats { u_int xmit_dropped_nobuf; } at_ddp_stats_t; + /* DDP streams module ioctls */ #define AT_MID_DDP 203 @@ -127,8 +144,7 @@ typedef struct at_ddp_stats { #define DDP_IOC_SET_PROTO ((AT_MID_DDP<<8) | 13) #endif -#ifdef KERNEL -#ifdef __APPLE_API_PRIVATE +#ifdef KERNEL_PRIVATE #define DDP_MIN_NETWORK 0x0001 #define DDP_MAX_NETWORK 0xfffe @@ -187,6 +203,6 @@ void ddp_bit_reverse(unsigned char *); /* in ddp_lap.c */ int ddp_shutdown(int); -#endif /* __APPLE_API_PRIVATE */ -#endif /* KERNEL */ +#endif /* KERNEL_PRIVATE */ +#endif /* __APPLE_API_OBSOLETE */ #endif /* _NETAT_DDP_H_ */