FreeBSD kernel netgraph code
ng_eiface.h
Go to the documentation of this file.
1/*
2 * ng_eiface.h
3 */
4
5/*-
6 * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
7 *
8 * Copyright (c) 1999-2001, Vitaly V Belekhov
9 * All rights reserved.
10 *
11 * Redistribution and use in source and binary forms, with or without
12 * modification, are permitted provided that the following conditions
13 * are met:
14 * 1. Redistributions of source code must retain the above copyright
15 * notice unmodified, this list of conditions, and the following
16 * disclaimer.
17 * 2. Redistributions in binary form must reproduce the above copyright
18 * notice, this list of conditions and the following disclaimer in the
19 * documentation and/or other materials provided with the distribution.
20 *
21 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
22 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
25 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
33 * $FreeBSD$
34 */
35
36#ifndef _NETGRAPH_NG_EIFACE_H_
37#define _NETGRAPH_NG_EIFACE_H_
38
39/* Node type name and magic cookie */
40#define NG_EIFACE_NODE_TYPE "eiface"
41#define NGM_EIFACE_COOKIE 948105892
42
43/* Interface base name */
44#define NG_EIFACE_EIFACE_NAME "ngeth"
45
46/* My hook names */
47#define NG_EIFACE_HOOK_ETHER "ether"
48
49/* MTU bounds */
50#define NG_EIFACE_MTU_MIN 72
51#define NG_EIFACE_MTU_MAX ETHER_MAX_LEN_JUMBO
52#define NG_EIFACE_MTU_DEFAULT 1500
53
54/* Netgraph commands */
55enum {
56 NGM_EIFACE_GET_IFNAME = 1, /* get the interface name */
57 NGM_EIFACE_GET_IFADDRS, /* returns list of addresses */
58 NGM_EIFACE_SET, /* set ethernet address */
59};
60
61#endif /* _NETGRAPH_NG_EIFACE_H_ */
@ NGM_EIFACE_GET_IFNAME
Definition: ng_eiface.h:56
@ NGM_EIFACE_GET_IFADDRS
Definition: ng_eiface.h:57
@ NGM_EIFACE_SET
Definition: ng_eiface.h:58