brintos

brintos / linux-shallow public Read only

0
0
Text · 2.2 KiB · 19aa469 Raw
92 lines · c
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */2/*3 * These are the public elements of the Linux kernel Rose implementation.4 * For kernel AX.25 see the file ax25.h. This file requires ax25.h for the5 * definition of the ax25_address structure.6 */7 8#ifndef	ROSE_KERNEL_H9#define	ROSE_KERNEL_H10 11#include <linux/socket.h>12#include <linux/ax25.h>13 14#define ROSE_MTU	25115 16#define ROSE_MAX_DIGIS 617 18#define	ROSE_DEFER	119#define ROSE_T1		220#define	ROSE_T2		321#define	ROSE_T3		422#define	ROSE_IDLE	523#define	ROSE_QBITINCL	624#define	ROSE_HOLDBACK	725 26#define	SIOCRSGCAUSE		(SIOCPROTOPRIVATE+0)27#define	SIOCRSSCAUSE		(SIOCPROTOPRIVATE+1)28#define	SIOCRSL2CALL		(SIOCPROTOPRIVATE+2)29#define	SIOCRSSL2CALL		(SIOCPROTOPRIVATE+2)30#define	SIOCRSACCEPT		(SIOCPROTOPRIVATE+3)31#define	SIOCRSCLRRT		(SIOCPROTOPRIVATE+4)32#define	SIOCRSGL2CALL		(SIOCPROTOPRIVATE+5)33#define	SIOCRSGFACILITIES	(SIOCPROTOPRIVATE+6)34 35#define	ROSE_DTE_ORIGINATED	0x0036#define	ROSE_NUMBER_BUSY	0x0137#define	ROSE_INVALID_FACILITY	0x0338#define	ROSE_NETWORK_CONGESTION	0x0539#define	ROSE_OUT_OF_ORDER	0x0940#define	ROSE_ACCESS_BARRED	0x0B41#define	ROSE_NOT_OBTAINABLE	0x0D42#define	ROSE_REMOTE_PROCEDURE	0x1143#define	ROSE_LOCAL_PROCEDURE	0x1344#define	ROSE_SHIP_ABSENT	0x3945 46typedef struct {47	char		rose_addr[5];48} rose_address;49 50struct sockaddr_rose {51	__kernel_sa_family_t srose_family;52	rose_address	srose_addr;53	ax25_address	srose_call;54	int		srose_ndigis;55	ax25_address	srose_digi;56};57 58struct full_sockaddr_rose {59	__kernel_sa_family_t srose_family;60	rose_address	srose_addr;61	ax25_address	srose_call;62	unsigned int	srose_ndigis;63	ax25_address	srose_digis[ROSE_MAX_DIGIS];64};65 66struct rose_route_struct {67	rose_address	address;68	unsigned short	mask;69	ax25_address	neighbour;70	char		device[16];71	unsigned char	ndigis;72	ax25_address	digipeaters[AX25_MAX_DIGIS];73};74 75struct rose_cause_struct {76	unsigned char	cause;77	unsigned char	diagnostic;78};79 80struct rose_facilities_struct {81	rose_address	source_addr,   dest_addr;82	ax25_address	source_call,   dest_call;83	unsigned char	source_ndigis, dest_ndigis;84	ax25_address	source_digis[ROSE_MAX_DIGIS];85	ax25_address	dest_digis[ROSE_MAX_DIGIS];86	unsigned int	rand;87	rose_address	fail_addr;88	ax25_address	fail_call;89};90 91#endif92