aboutsummaryrefslogtreecommitdiff
path: root/sys/netgraph/atm/atmpif/ng_atmpif_var.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/netgraph/atm/atmpif/ng_atmpif_var.h')
-rw-r--r--sys/netgraph/atm/atmpif/ng_atmpif_var.h147
1 files changed, 0 insertions, 147 deletions
diff --git a/sys/netgraph/atm/atmpif/ng_atmpif_var.h b/sys/netgraph/atm/atmpif/ng_atmpif_var.h
deleted file mode 100644
index 515eb4e3a4d0..000000000000
--- a/sys/netgraph/atm/atmpif/ng_atmpif_var.h
+++ /dev/null
@@ -1,147 +0,0 @@
-/*-
- * Copyright (c) 2003 Harti Brandt.
- * Copyright (c) 2003 Vincent Jardin.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * $FreeBSD$
- */
-
-/*
- * Supported AALs
- */
-enum vatmpif_aal {
- VATMPIF_AAL_0 = 0, /* Cell Service */
- VATMPIF_AAL_4 = 4, /* AAL 3/4 */
- VATMPIF_AAL_5 = 5, /* AAL 5 */
-};
-typedef enum vatmpif_aal Vatmpif_aal;
-
-/*
- * Supported traffic type
- */
-enum vatmpif_traffic_type {
- VATMPIF_TRAF_CBR = 0x01, /* Constant bit rate */
- VATMPIF_TRAF_VBR = 0x02, /* Variable bit rate */
- VATMPIF_TRAF_ABR = 0x03, /* Available Bit Rate */
- VATMPIF_TRAF_UBR = 0x04, /* Unspecified bit rate */
-};
-typedef enum vatmpif_traffic_type Vatmpif_traffic_type;
-
-typedef struct t_atm_traffic Vatmpif_traffic;
-
-/*
- * Host protocol control blocks
- *
- */
-/*
- * Device VCC Entry
- *
- * Contains the common (vv_cmn) and specific information for each VCC
- * which is opened through a ATM PIF node.
- * It is a virtual VCC. From the Netgraph poit of view it is a
- * per-node's hook private data.
- *
- * It is a polymorph object with the instances of Cmn_vcc.
- */
-struct vatmpif_vcc {
- Cmn_vcc vv_cmn; /* Common VCC stuff */
- Vatmpif_aal vv_aal; /* AAL */
- Vatmpif_traffic vv_traffic; /* forward and backward ATM traffic */
- Vatmpif_traffic_type vv_traffic_type;/* CBR, VBR, UBR, ... */
-};
-typedef struct vatmpif_vcc Vatmpif_vcc;
-
-#define vv_next vv_cmn.cv_next
-#define vv_toku vv_cmn.cv_toku
-#define vv_upper vv_cmn.cv_upper
-#define vv_connvc vv_cmn.cv_connvc
-#define vv_state vv_cmn.cv_state
-
-/*
- * The hook structure describes a virtual link
- */
-struct ng_vatmpif_hook {
- hook_p hook; /* netgraph hook */
- Vatmpif_stats stats; /* link stats */
- uint32_t InSeq; /* last received sequence number + 1 */
- uint32_t OutSeq; /* last sent sequence number */
- uint32_t cur_pcr; /* slot's reserved PCR */
-};
-
-/*
- * Device Virtual Unit Structure
- *
- * Contains all the information for a single device (adapter).
- * It is a virtual device. From the Netgraph point of view it is
- * a per-node private data.
- *
- * It is a polymorph object with the instances of Cmn_unit.
- */
-struct vatmpif_unit {
- Cmn_unit vu_cmn; /* Common unit stuff */
- node_p node; /* netgraph node */
- struct ng_vatmpif_hook* link; /* virtual link hoook */
- struct ng_vatmpif_config conf; /* node configuration */
-};
-typedef struct vatmpif_unit Vatmpif_unit;
-
-#define ng_vatmpif_private vatmpif_unit
-typedef struct ng_vatmpif_private *priv_p;
-
-#define vu_pif vu_cmn.cu_pif
-#define vu_unit vu_cmn.cu_unit
-#define vu_flags vu_cmn.cu_flags
-#define vu_mtu vu_cmn.cu_mtu
-#define vu_open_vcc vu_cmn.cu_open_vcc
-#define vu_vcc vu_cmn.cu_vcc
-#define vu_vcc_zone vu_cmn.cu_vcc_zone
-#define vu_nif_zone vu_cmn.cu_nif_zone
-#define vu_ioctl vu_cmn.cu_ioctl
-#define vu_instvcc vu_cmn.cu_instvcc
-#define vu_openvcc vu_cmn.cu_openvcc
-#define vu_closevcc vu_cmn.cu_closevcc
-#define vu_output vu_cmn.cu_output
-#define vu_config vu_cmn.cu_config
-#define vu_softc vu_cmn.cu_softc
-
-#define vu_stats link->stats
-#define vu_cur_pcr link->cur_pcr
-
-/*
- * Netgraph to HARP API
- */
-int vatmpif_harp_attach(node_p node);
-int vatmpif_harp_detach(node_p node);
-
-int vatmpif_harp_recv_drain(Vatmpif_unit *vup, KBuffer *m,
- uint8_t vpi, uint16_t vci, uint8_t pt, uint8_t clp, Vatmpif_aal aal);
-
-/*
- * HARP to Netgraph API
- */
-int ng_atmpif_transmit(const priv_p priv, struct mbuf *m,
- uint8_t vpi, uint16_t vci, uint8_t pt, uint8_t clp, Vatmpif_aal aal);
-
-extern uma_zone_t vatmpif_nif_zone;
-extern uma_zone_t vatmpif_vcc_zone;