diff options
author | harti <harti@FreeBSD.org> | 2003-07-29 16:27:23 +0000 |
---|---|---|
committer | harti <harti@FreeBSD.org> | 2003-07-29 16:27:23 +0000 |
commit | da6b08ac8edfa21f9cd86f61f4e5e4a734fa4b6e (patch) | |
tree | 267e48b48123c18ed1818b2113a153461eb003b3 /sys/netgraph/atm/ng_atm.h | |
parent | 74be324290a932455ed6c75eb6f8aa88c1b8eac5 (diff) | |
download | FreeBSD-src-da6b08ac8edfa21f9cd86f61f4e5e4a734fa4b6e.zip FreeBSD-src-da6b08ac8edfa21f9cd86f61f4e5e4a734fa4b6e.tar.gz |
Process events from the ATM drivers. Carrier change and PVC change
messages are forwarded as netgraph control messages to the node
that is connected to the manage hook. If that hook is not connected,
the event is lost. Flow control events are converted to netgraph
flow control messages and send along the hook that is connected to
the flow controlled VC. ACR change events are converted to control
messages and sent along the hook for the given VC.
Diffstat (limited to 'sys/netgraph/atm/ng_atm.h')
-rw-r--r-- | sys/netgraph/atm/ng_atm.h | 29 |
1 files changed, 24 insertions, 5 deletions
diff --git a/sys/netgraph/atm/ng_atm.h b/sys/netgraph/atm/ng_atm.h index 0878272..f8cd1c7 100644 --- a/sys/netgraph/atm/ng_atm.h +++ b/sys/netgraph/atm/ng_atm.h @@ -48,8 +48,10 @@ enum { NGM_ATM_GET_STATS, /* get global statistics */ /* messages from the node */ - NGM_ATM_CARRIER_CHANGE = 1000, /* carrier changed */ + NGM_ATM_CARRIER_CHANGE = 1000, /* UNUSED: carrier changed */ NGM_ATM_VCC_CHANGE, /* permanent VCC changed */ + NGM_ATM_ACR_CHANGE, /* ABR ACR has changed */ + NGM_ATM_IF_CHANGE, /* interface state change */ }; /* @@ -198,14 +200,16 @@ struct ngm_atm_stats { { NULL } \ } -struct ngm_atm_carrier_change { +struct ngm_atm_if_change { uint32_t node; - uint32_t state; + uint8_t carrier; + uint8_t running; }; -#define NGM_ATM_CARRIER_CHANGE_INFO \ +#define NGM_ATM_IF_CHANGE_INFO \ { \ { "node", &ng_parse_hint32_type }, \ - { "state", &ng_parse_uint32_type }, \ + { "carrier", &ng_parse_uint8_type }, \ + { "running", &ng_parse_uint8_type }, \ { NULL } \ } @@ -224,4 +228,19 @@ struct ngm_atm_vcc_change { { NULL } \ } +struct ngm_atm_acr_change { + uint32_t node; + uint16_t vci; + uint8_t vpi; + uint32_t acr; +}; +#define NGM_ATM_ACR_CHANGE_INFO \ + { \ + { "node", &ng_parse_hint32_type }, \ + { "vci", &ng_parse_uint16_type }, \ + { "vpi", &ng_parse_uint8_type }, \ + { "acr", &ng_parse_uint32_type }, \ + { NULL } \ + } + #endif /* _NETGRAPH_ATM_NG_ATM_H */ |