linux/include/uapi/linux/atmbr2684.h

/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
#ifndef _LINUX_ATMBR2684_H
#define _LINUX_ATMBR2684_H

#include <linux/types.h>
#include <linux/atm.h>
#include <linux/if.h>		/* For IFNAMSIZ */

/*
 * Type of media we're bridging (ethernet, token ring, etc)  Currently only
 * ethernet is supported
 */
#define BR2684_MEDIA_ETHERNET
#define BR2684_MEDIA_802_4
#define BR2684_MEDIA_TR
#define BR2684_MEDIA_FDDI
#define BR2684_MEDIA_802_6

					/* used only at device creation:  */
#define BR2684_FLAG_ROUTED

/*
 * Is there FCS inbound on this VC?  This currently isn't supported.
 */
#define BR2684_FCSIN_NO
#define BR2684_FCSIN_IGNORE
#define BR2684_FCSIN_VERIFY

/*
 * Is there FCS outbound on this VC?  This currently isn't supported.
 */
#define BR2684_FCSOUT_NO
#define BR2684_FCSOUT_SENDZERO
#define BR2684_FCSOUT_GENERATE

/*
 * Does this VC include LLC encapsulation?
 */
#define BR2684_ENCAPS_VC
#define BR2684_ENCAPS_LLC
#define BR2684_ENCAPS_AUTODETECT

/*
 * Is this VC bridged or routed?
 */

#define BR2684_PAYLOAD_ROUTED
#define BR2684_PAYLOAD_BRIDGED

/*
 * This is for the ATM_NEWBACKENDIF call - these are like socket families:
 * the first element of the structure is the backend number and the rest
 * is per-backend specific
 */
struct atm_newif_br2684 {};

/*
 * This structure is used to specify a br2684 interface - either by a
 * positive integer (returned by ATM_NEWBACKENDIF) or the interfaces name
 */
#define BR2684_FIND_BYNOTHING
#define BR2684_FIND_BYNUM
#define BR2684_FIND_BYIFNAME
struct br2684_if_spec {};

/*
 * This is for the ATM_SETBACKEND call - these are like socket families:
 * the first element of the structure is the backend number and the rest
 * is per-backend specific
 */
struct atm_backend_br2684 {};

/*
 * The BR2684_SETFILT ioctl is an experimental mechanism for folks
 * terminating a large number of IP-only vcc's.  When netfilter allows
 * efficient per-if in/out filters, this support will be removed
 */
struct br2684_filter {};

struct br2684_filter_set {};

enum br2684_payload {};

#define BR2684_SETFILT

#endif /* _LINUX_ATMBR2684_H */