Skip to content

Commit 3446f53

Browse files
committed
ffac-web-private-wan-dhcp: add package
This package adds configuration options to the config mode to configure ffac-private-wan-dhcp. It can be used to activate a DHCP server on devices which terminate an uplink connection.
1 parent f2d3a21 commit 3446f53

7 files changed

Lines changed: 113 additions & 0 deletions

File tree

ffac-web-private-wan-dhcp/Makefile

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
include $(TOPDIR)/rules.mk
2+
3+
PKG_NAME:=ffac-web-private-wan-dhcp
4+
PKG_VERSION:=1
5+
PKG_RELEASE:=1
6+
7+
include $(TOPDIR)/../package/gluon.mk
8+
9+
define Package/$(PKG_NAME)
10+
TITLE:=gluon-web module to enable and disable ffac-private-wan-dhcp
11+
DEPENDS:=+gluon-web-admin +ffac-private-wan-dhcp
12+
endef
13+
14+
$(eval $(call BuildPackageGluon,$(PKG_NAME)))
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# ffac-web-private-wan-dhcp
2+
3+
This package adds configuration options to the config mode to configure ffac-private-wan-dhcp.
4+
It can be used to activate a DHCP server on devices which terminate an uplink connection.
5+
6+
It allows to set the following:
7+
8+
* enabled
9+
* ipaddr of the advertised WAN network
10+
* netmask of the advertised WAN network
11+
* dns server for IPv4 (advertised with dnsmasq)
12+
* dns server for IPv6 (advertised with uradvd)
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
msgid ""
2+
msgstr ""
3+
"Project-Id-Version: PACKAGE VERSION\n"
4+
"PO-Revision-Date: 2024-07-22 12:00+0100\n"
5+
"Last-Translator: <fmaurer@disroot.org>\n"
6+
"Language-Team: German\n"
7+
"Language: de\n"
8+
"MIME-Version: 1.0\n"
9+
"Content-Type: text/plain; charset=UTF-8\n"
10+
"Content-Transfer-Encoding: 8bit\n"
11+
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
12+
13+
msgid "Enabled"
14+
msgstr "Aktiviert"
15+
16+
msgid "Private WAN DHCP"
17+
msgstr "Private WAN DHCP"
18+
19+
msgid "ffac-web-private-wan-dhcp:description"
20+
msgstr ""
21+
"Aktiviert eine private WAN-Zone with DHCP und NAT. Das ist für Anschlüsse, die das nicht nativ mitbringen interessant (Mobilfunk oder DSL)"
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
msgid ""
2+
msgstr ""
3+
"Project-Id-Version: PACKAGE VERSION\n"
4+
"PO-Revision-Date: 2024-07-22 12:00+0100\n"
5+
"Last-Translator: <fmaurer@disroot.org>\n"
6+
"Language-Team: English\n"
7+
"Language: de\n"
8+
"MIME-Version: 1.0\n"
9+
"Content-Type: text/plain; charset=UTF-8\n"
10+
"Content-Transfer-Encoding: 8bit\n"
11+
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
12+
13+
msgid "Enabled"
14+
msgstr "Enabled"
15+
16+
msgid "Private WAN DHCP"
17+
msgstr "Private WAN DHCP"
18+
19+
msgid "ffac-web-private-wan-dhcp:description"
20+
msgstr ""
21+
"Activates the private WAN with DHCP and NAT. This is relevant for cellular or dsl uplinks"
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
msgid ""
2+
msgstr "Content-Type: text/plain; charset=UTF-8"
3+
4+
msgid "Enabled"
5+
msgstr ""
6+
7+
msgid "Private WAN DHCP"
8+
msgstr ""
9+
10+
msgid "ffac-web-private-wan-dhcp:description"
11+
msgstr ""
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
package 'ffac-web-private-wan-dhcp'
2+
3+
entry({"admin", "ffac_private_wan_dhcp"}, model("admin/ffac_private_wan_dhcp"), _("Private WAN DHCP"), 50)
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
local uci = require("simple-uci").cursor()
2+
3+
local f = Form(translate("Private WAN DHCP"))
4+
5+
local s = f:section(Section, nil, translate('ffac-web-private-wan-dhcp:description'))
6+
7+
local enabled = s:option(Flag, "enabled", translate("Enabled"))
8+
enabled.default = uci:get_bool('private-wan-dhcp', 'settings', 'enabled', false)
9+
10+
local ipaddr = s:option(Value, "ipaddr", translate("IP address"))
11+
ipaddr.default = uci:get('private-wan-dhcp', 'settings', 'ipaddr', '192.168.222.1')
12+
13+
local netmask = s:option(Value, "netmask", translate("Netmask"))
14+
netmask.default = uci:get('private-wan-dhcp', 'settings', 'netmask', '255.255.255.0')
15+
16+
local dns_server = s:option(Value, "dns_server", translate("Static DNS servers") .. ' ' ..translate("IPv4"))
17+
dns_server.default = uci:get('private-wan-dhcp', 'settings', 'dns_server', '9.9.9.9')
18+
19+
local uradvd_dns_server = s:option(Value, "dns_server", translate("Static DNS servers") .. ' ' .. translate("IPv6"))
20+
uradvd_dns_server.default = uci:get('private-wan-dhcp', 'settings', 'uradvd_dns_server', '9.9.9.9')
21+
22+
function f:write()
23+
uci:set('private-wan-dhcp', 'settings', 'enabled', enabled.data)
24+
uci:set('private-wan-dhcp', 'settings', 'ipaddr', ipaddr.data)
25+
uci:set('private-wan-dhcp', 'settings', 'netmask', netmask.data)
26+
uci:set('private-wan-dhcp', 'settings', 'dns_server', dns_server.data)
27+
uci:set_list('private-wan-dhcp', 'settings', 'uradvd_dns_server', { uradvd_dns_server.data })
28+
uci:commit('private-wan-dhcp')
29+
end
30+
31+
return f

0 commit comments

Comments
 (0)