]> git.ipfire.org Git - people/stevee/network.git/blob - src/functions/functions.constants
7f51bba0e48aed48f5bf3bd1ef60cf5949cc762a
[people/stevee/network.git] / src / functions / functions.constants
1 #!/bin/bash
2 ###############################################################################
3 # #
4 # IPFire.org - A linux based firewall #
5 # Copyright (C) 2010 Michael Tremer & Christian Schmidt #
6 # #
7 # This program is free software: you can redistribute it and/or modify #
8 # it under the terms of the GNU General Public License as published by #
9 # the Free Software Foundation, either version 3 of the License, or #
10 # (at your option) any later version. #
11 # #
12 # This program is distributed in the hope that it will be useful, #
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of #
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
15 # GNU General Public License for more details. #
16 # #
17 # You should have received a copy of the GNU General Public License #
18 # along with this program. If not, see <http://www.gnu.org/licenses/>. #
19 # #
20 ###############################################################################
21
22 # Set gettext text domain.
23 TEXTDOMAIN="network"
24
25 LOG_DIR=/var/log/network
26 RUN_DIR=/run/network
27 LOCK_DIR=/var/lock
28
29 RED_RUN=${RUN_DIR}/red
30 PPP_SECRETS=/etc/ppp/secrets
31
32 # Network directory configuration.
33 NETWORK_CONFIG_DIR="/etc/network"
34 NETWORK_DB_DIR="${RUN_DIR}/db"
35 NETWORK_ZONE_DIR="${NETWORK_CONFIG_DIR}"
36 NETWORK_HOOKS_DIR=/usr/lib/network/hooks
37 NETWORK_HELPERS_DIR=/usr/lib/network/helpers
38 NETWORK_TRIGGERS_DIR=/usr/lib/network/triggers
39 NETWORK_SHARE_DIR=/usr/share/network
40 NETWORK_CACHE_DIR=/var/cache/network
41
42 NETWORK_IPSEC_CONNS_DIR="${NETWORK_CONFIG_DIR}/vpn/ipsec/connections"
43 NETWORK_IPSEC_POOLS_DIR="${NETWORK_CONFIG_DIR}/vpn/ipsec/pools"
44 NETWORK_IPSEC_SWANCTL_CONNECTIONS_DIR="/etc/swanctl/connections"
45
46 # Network file configuration.
47 NETWORK_SETTINGS_FILE=${NETWORK_CONFIG_DIR}/config
48 NETWORK_SETTINGS_FILE_PARAMS="DEBUG"
49 CONFIG_HOSTNAME="/etc/hostname"
50
51 RED_DB_DIR=${RUN_DIR}/red
52 ROUTING_DB_DIR=${RUN_DIR}/routing
53
54 DB_CONNECTION_FILE="${LOG_DIR}/connections.db"
55
56 # (Static) route settings.
57 NETWORK_CONFIG_ROUTES="${NETWORK_CONFIG_DIR}/routes"
58 NETWORK_CONFIG_ROUTES_PARAMS="network gateway unreachable prohibit blackhole mtu"
59
60 # Proper error codes
61 EXIT_OK=0
62 EXIT_ERROR=1
63 EXIT_CONF_ERROR=2
64 EXIT_NOT_SUPPORTED=3
65 EXIT_NOT_HANDLED=4
66 EXIT_COMMAND_NOT_FOUND=127
67 EXIT_ERROR_ASSERT=128
68
69 EXIT_TRUE=0
70 EXIT_FALSE=1
71 EXIT_UNKNOWN=2
72
73 # Exit codes for IPv6 duplicate address detection (DAD)
74 EXIT_DAD_OK=0
75 EXIT_DAD_FAILED=8
76 EXIT_DAD_TENTATIVE=8
77
78 # Spanning Tree Protocol
79 EXIT_STP_KERNEL=1
80 EXIT_STP_ERROR=2
81
82 STATUS_UP=0
83 STATUS_DOWN=1
84 STATUS_NOCARRIER=2
85
86 DISCOVER_OK=0
87 DISCOVER_ERROR=1
88 DISCOVER_NOT_SUPPORTED=2
89
90 # The user is able to create zones that begin
91 # with these names followed by a number.
92 ZONE_LOCAL="net"
93 ZONE_NONLOCAL="upl"
94 VALID_ZONES="${ZONE_LOCAL} ${ZONE_NONLOCAL}"
95
96 SYS_CLASS_NET="/sys/class/net"
97
98 # Timeout values
99 TIMEOUT_RESTART=2
100
101 DEVICE_PRINT_LINE1=" %-24s %s\n"
102
103 PORT_PATTERN="pN"
104 PORT_PATTERN_ACCESSPOINT="apN"
105 PORT_PATTERN_BATMAN_ADV="batN"
106 PORT_PATTERN_WIRELESS="wN"
107 PORT_PATTERN_WIRELESS_ADHOC="adhocN"
108 PORT_PATTERN_WIRELESS_MONITOR="wmonN"