1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
module (..., package.seeall)
-- Definitions of interface cfe's / options
required = {
comment = {type="longtext", label="Comments", seq=2},
auto = {type="boolean", value=false, label="Auto bring-up", seq=3},
name = {label="Interface Name", seq=1},
family = {type="select", label="Address Family", option={"inet", "ipx", "inet6"}, seq=4},
method = {type="select", label="Method", option={"loopback", "static", "manual", "dhcp", "bootp", "ppp", "wvdial", "dynamic", "v4tunnel"}, seq=5},
['pre-up'] = {type="longtext", label="'pre-up' actions", seq=100},
up = {type="longtext", label="'up' actions", seq=101},
down = {type="longtext", label="'down' actions", seq=102},
['post-down'] = {type="longtext", label="'post-down' actions", seq=103},
}
family_methods = {
inet = {"loopback", "static", "manual", "dhcp", "bootp", "ppp", "wvdial"},
ipx = {"static", "dynamic"},
inet6 = {"loopback", "static", "manual", "v4tunnel"},
}
method_options = {
inet = {
static = {"address", "netmask", "broadcast", "network", "metric", "gateway", "pointopoint", "media", "hwaddress", "mtu"},
dhcp = {"hostname", "leasehours", "leasetime", "vendor", "client", "hwaddress"},
bootp = {"bootfile", "server", "hwaddr"},
ppp = {"provider"},
wvdial = {"provider"},
},
ipx = {
static = {"frame", "netnum"},
dynamic = {"frame"},
},
inet6 ={
static = {"address", "netmask", "gateway", "media", "hwaddress", "mtu"},
v4tunnel = {"address", "netmask", "endpoint", "local", "gateway", "ttl"},
},
}
optional = {
address = {label="Address", seq=6},
netmask = {label="Netmask", seq=7},
endpoint = {label="Endpoint address", seq=8},
['local'] = {label="Local address", seq=9},
broadcast = {label="Broadcast address", seq=10},
network = {label="Network address", seq=11},
metric = {label="Routing metric", seq=12},
gateway = {label="Default gateway", seq=13},
pointopoint = {label="Point-to-point address", seq=14},
media = {label="Medium type", seq=15},
hostname = {label="Hostname", seq=16},
leasehours = {label="Preferred lease time (hours)", seq=17},
leasetime = {label="Preferred lease time (seconds)", seq=18},
vendor = {label="Vendor class identifier", seq=19},
client = {label="Client identifier", seq=20},
hwaddress = {label="Hardware address", seq=21},
mtu = {label="MTU size", seq=22},
bootfile = {label="Boot file", seq=23},
server = {label="Server address", seq=24},
hwaddr = {label="Hardware address", seq=25},
provider = {label="Provider name", seq=26},
frame = {label="Ethernet frame type", seq=27},
netnum = {label="Network number", seq=28},
ttl = {label="TTL setting", seq=29},
}
|