Deleted Added
full compact
ng_one2many.h (126012) ng_one2many.h (126035)
1
2/*
3 * ng_one2many.h
4 *
5 * Copyright (c) 2000 Whistle Communications, Inc.
6 * All rights reserved.
7 *
8 * Subject to the following obligations and disclaimer of warranty, use and

--- 22 unchanged lines hidden (view full) ---

31 * SERVICES, LOSS OF USE, DATA OR PROFITS, HOWEVER CAUSED AND UNDER ANY
32 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
33 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
34 * THIS SOFTWARE, EVEN IF WHISTLE COMMUNICATIONS IS ADVISED OF THE POSSIBILITY
35 * OF SUCH DAMAGE.
36 *
37 * Author: Archie Cobbs <archie@freebsd.org>
38 *
1
2/*
3 * ng_one2many.h
4 *
5 * Copyright (c) 2000 Whistle Communications, Inc.
6 * All rights reserved.
7 *
8 * Subject to the following obligations and disclaimer of warranty, use and

--- 22 unchanged lines hidden (view full) ---

31 * SERVICES, LOSS OF USE, DATA OR PROFITS, HOWEVER CAUSED AND UNDER ANY
32 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
33 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
34 * THIS SOFTWARE, EVEN IF WHISTLE COMMUNICATIONS IS ADVISED OF THE POSSIBILITY
35 * OF SUCH DAMAGE.
36 *
37 * Author: Archie Cobbs <archie@freebsd.org>
38 *
39 * $FreeBSD: head/sys/netgraph/ng_one2many.h 126012 2004-02-19 17:04:23Z pjd $
39 * $FreeBSD: head/sys/netgraph/ng_one2many.h 126035 2004-02-20 08:26:27Z pjd $
40 */
41
42#ifndef _NETGRAPH_NG_ONE2MANY_H_
43#define _NETGRAPH_NG_ONE2MANY_H_
44
45/* Node type name and magic cookie */
46#define NG_ONE2MANY_NODE_TYPE "one2many"
47#define NGM_ONE2MANY_COOKIE 971111383

--- 8 unchanged lines hidden (view full) ---

56
57/* Link number used to indicate the "one" hook */
58#define NG_ONE2MANY_ONE_LINKNUM (-1)
59
60/* Algorithms for outgoing packet distribution (XXX only one so far) */
61#define NG_ONE2MANY_XMIT_ROUNDROBIN 1 /* round-robin delivery */
62#define NG_ONE2MANY_XMIT_ALL 2 /* send packets to all many hooks */
63
40 */
41
42#ifndef _NETGRAPH_NG_ONE2MANY_H_
43#define _NETGRAPH_NG_ONE2MANY_H_
44
45/* Node type name and magic cookie */
46#define NG_ONE2MANY_NODE_TYPE "one2many"
47#define NGM_ONE2MANY_COOKIE 971111383

--- 8 unchanged lines hidden (view full) ---

56
57/* Link number used to indicate the "one" hook */
58#define NG_ONE2MANY_ONE_LINKNUM (-1)
59
60/* Algorithms for outgoing packet distribution (XXX only one so far) */
61#define NG_ONE2MANY_XMIT_ROUNDROBIN 1 /* round-robin delivery */
62#define NG_ONE2MANY_XMIT_ALL 2 /* send packets to all many hooks */
63
64/* Algorithms for detecting link failure */
64/* Algorithms for detecting link failure (XXX only one so far) */
65#define NG_ONE2MANY_FAIL_MANUAL 1 /* use enabledLinks[] array */
65#define NG_ONE2MANY_FAIL_MANUAL 1 /* use enabledLinks[] array */
66#define NG_ONE2MANY_FAIL_IFACE_LINK 2 /* use interface state */
67
68/* Node configuration structure */
69struct ng_one2many_config {
70 u_int32_t xmitAlg; /* how to distribute packets */
71 u_int32_t failAlg; /* how to detect link failure */
66
67/* Node configuration structure */
68struct ng_one2many_config {
69 u_int32_t xmitAlg; /* how to distribute packets */
70 u_int32_t failAlg; /* how to detect link failure */
72 u_int32_t interval; /* interval for IFACE_LINK
73 failure algorithm */
74 u_char enabledLinks[NG_ONE2MANY_MAX_LINKS];
75};
76
77/* Keep this in sync with the above structure definition */
78#define NG_ONE2MANY_CONFIG_TYPE_INFO(atype) { \
79 { "xmitAlg", &ng_parse_uint32_type }, \
80 { "failAlg", &ng_parse_uint32_type }, \
71 u_char enabledLinks[NG_ONE2MANY_MAX_LINKS];
72};
73
74/* Keep this in sync with the above structure definition */
75#define NG_ONE2MANY_CONFIG_TYPE_INFO(atype) { \
76 { "xmitAlg", &ng_parse_uint32_type }, \
77 { "failAlg", &ng_parse_uint32_type }, \
81 { "interval", &ng_parse_uint32_type }, \
82 { "enabledLinks", (atype) }, \
83 { NULL } \
84}
85
86/* Statistics structure (one for each link) */
87struct ng_one2many_link_stats {
88 u_int64_t recvOctets; /* total octets rec'd on link */
89 u_int64_t recvPackets; /* total pkts rec'd on link */

--- 26 unchanged lines hidden ---
78 { "enabledLinks", (atype) }, \
79 { NULL } \
80}
81
82/* Statistics structure (one for each link) */
83struct ng_one2many_link_stats {
84 u_int64_t recvOctets; /* total octets rec'd on link */
85 u_int64_t recvPackets; /* total pkts rec'd on link */

--- 26 unchanged lines hidden ---