xref: /aosp_15_r20/external/kernel-headers/original/uapi/linux/atalk.h (revision f80ad8b4341604f5951dab671d41019a6d7087ce)
1*f80ad8b4SAndroid Build Coastguard Worker /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2*f80ad8b4SAndroid Build Coastguard Worker #ifndef _UAPI__LINUX_ATALK_H__
3*f80ad8b4SAndroid Build Coastguard Worker #define _UAPI__LINUX_ATALK_H__
4*f80ad8b4SAndroid Build Coastguard Worker 
5*f80ad8b4SAndroid Build Coastguard Worker #include <linux/types.h>
6*f80ad8b4SAndroid Build Coastguard Worker #include <asm/byteorder.h>
7*f80ad8b4SAndroid Build Coastguard Worker #include <linux/socket.h>
8*f80ad8b4SAndroid Build Coastguard Worker 
9*f80ad8b4SAndroid Build Coastguard Worker /*
10*f80ad8b4SAndroid Build Coastguard Worker  * AppleTalk networking structures
11*f80ad8b4SAndroid Build Coastguard Worker  *
12*f80ad8b4SAndroid Build Coastguard Worker  * The following are directly referenced from the University Of Michigan
13*f80ad8b4SAndroid Build Coastguard Worker  * netatalk for compatibility reasons.
14*f80ad8b4SAndroid Build Coastguard Worker  */
15*f80ad8b4SAndroid Build Coastguard Worker #define ATPORT_FIRST	1
16*f80ad8b4SAndroid Build Coastguard Worker #define ATPORT_RESERVED	128
17*f80ad8b4SAndroid Build Coastguard Worker #define ATPORT_LAST	254		/* 254 is only legal on localtalk */
18*f80ad8b4SAndroid Build Coastguard Worker #define ATADDR_ANYNET	(__u16)0
19*f80ad8b4SAndroid Build Coastguard Worker #define ATADDR_ANYNODE	(__u8)0
20*f80ad8b4SAndroid Build Coastguard Worker #define ATADDR_ANYPORT  (__u8)0
21*f80ad8b4SAndroid Build Coastguard Worker #define ATADDR_BCAST	(__u8)255
22*f80ad8b4SAndroid Build Coastguard Worker #define DDP_MAXSZ	587
23*f80ad8b4SAndroid Build Coastguard Worker #define DDP_MAXHOPS     15		/* 4 bits of hop counter */
24*f80ad8b4SAndroid Build Coastguard Worker 
25*f80ad8b4SAndroid Build Coastguard Worker #define SIOCATALKDIFADDR       (SIOCPROTOPRIVATE + 0)
26*f80ad8b4SAndroid Build Coastguard Worker 
27*f80ad8b4SAndroid Build Coastguard Worker struct atalk_addr {
28*f80ad8b4SAndroid Build Coastguard Worker 	__be16	s_net;
29*f80ad8b4SAndroid Build Coastguard Worker 	__u8	s_node;
30*f80ad8b4SAndroid Build Coastguard Worker };
31*f80ad8b4SAndroid Build Coastguard Worker 
32*f80ad8b4SAndroid Build Coastguard Worker struct sockaddr_at {
33*f80ad8b4SAndroid Build Coastguard Worker 	__kernel_sa_family_t sat_family;
34*f80ad8b4SAndroid Build Coastguard Worker 	__u8		  sat_port;
35*f80ad8b4SAndroid Build Coastguard Worker 	struct atalk_addr sat_addr;
36*f80ad8b4SAndroid Build Coastguard Worker 	char		  sat_zero[8];
37*f80ad8b4SAndroid Build Coastguard Worker };
38*f80ad8b4SAndroid Build Coastguard Worker 
39*f80ad8b4SAndroid Build Coastguard Worker struct atalk_netrange {
40*f80ad8b4SAndroid Build Coastguard Worker 	__u8	nr_phase;
41*f80ad8b4SAndroid Build Coastguard Worker 	__be16	nr_firstnet;
42*f80ad8b4SAndroid Build Coastguard Worker 	__be16	nr_lastnet;
43*f80ad8b4SAndroid Build Coastguard Worker };
44*f80ad8b4SAndroid Build Coastguard Worker 
45*f80ad8b4SAndroid Build Coastguard Worker #endif /* _UAPI__LINUX_ATALK_H__ */
46