0
0
mirror of https://github.com/Doodle3D/doodle3d-firmware.git synced 2024-12-22 11:03:48 +01:00

Fix dhcp address serving in AP mode; small fix in printer API.

This commit is contained in:
Wouter R 2013-08-20 21:53:36 +02:00
parent 68f72565fe
commit 6f431942cc
3 changed files with 13 additions and 7 deletions

View File

@ -86,6 +86,9 @@ function reconf.network_reload(dirtyList) reloadBit(dirtyList, 'network') end
--[[ Issue '/etc/init.d/wireless reload' command ]] --[[ Issue '/etc/init.d/wireless reload' command ]]
function reconf.wireless_reload(dirtyList) reloadBit(dirtyList, 'wireless') end function reconf.wireless_reload(dirtyList) reloadBit(dirtyList, 'wireless') end
--[[ Issue '/etc/init.d/dnsmasq reload' command ]]
function reconf.dhcp_reload(dirtyList) reloadBit(dirtyList, 'dnsmasq') end
--[[ Add wlan interface declaration to /etc/config/network ]] --[[ Add wlan interface declaration to /etc/config/network ]]
function reconf.wifiiface_add(dirtyList) function reconf.wifiiface_add(dirtyList)
uci:set('network', wifi.NET, 'interface') uci:set('network', wifi.NET, 'interface')
@ -149,7 +152,8 @@ end
--[[ Add/remove DHCP pool for wireless net ]] --[[ Add/remove DHCP pool for wireless net ]]
function reconf.dhcppool_add(dirtyList) function reconf.dhcppool_add_noreload(dirtyList) reconf.dhcppool_add(dirtyList, true) end
function reconf.dhcppool_add(dirtyList, noReload)
uci:set('dhcp', wifi.NET, 'dhcp') --create section uci:set('dhcp', wifi.NET, 'dhcp') --create section
M.uciTableSet('dhcp', wifi.NET, { M.uciTableSet('dhcp', wifi.NET, {
interface = wifi.NET, interface = wifi.NET,
@ -157,7 +161,8 @@ function reconf.dhcppool_add(dirtyList)
limit = '150', limit = '150',
leasetime = '12h', leasetime = '12h',
}) })
commitBit(dirtyList, 'dhcp'); reloadBit(dirtyList, 'dnsmasq') commitBit(dirtyList, 'dhcp');
if noReload == nil or noReload == false then reloadBit(dirtyList, 'dnsmasq') end
end end
function reconf.dhcppool_rm(dirtyList) function reconf.dhcppool_rm(dirtyList)
uci:delete('dhcp', wifi.NET) uci:delete('dhcp', wifi.NET)

View File

@ -145,7 +145,9 @@ function M.openap_POST(request, response)
local ssid = wifi.getSubstitutedSsid(settings.get('network.ap.ssid')) local ssid = wifi.getSubstitutedSsid(settings.get('network.ap.ssid'))
netconf.switchConfiguration{apnet="add_noreload"} netconf.switchConfiguration{apnet="add_noreload"}
wifi.activateConfig(ssid) wifi.activateConfig(ssid)
netconf.switchConfiguration{ wifiiface="add", network="reload", staticaddr="add", dhcppool="add", wwwredir="add", dnsredir="add" } -- NOTE: dnsmasq must be reloaded after network or it will be unable to serve IP addresses
netconf.switchConfiguration{ wifiiface="add", network="reload", staticaddr="add", dhcppool="add_noreload", wwwredir="add", dnsredir="add" }
netconf.switchConfiguration{dhcp="reload"}
response:setSuccess("switched to Access Point mode") response:setSuccess("switched to Access Point mode")
response:addData("ssid", ssid) response:addData("ssid", ssid)
end end

View File

@ -244,7 +244,7 @@ function M.heatup_POST(request, response)
local argId,devpath,ultipath = getPrinterDataOrFail(request, response) local argId,devpath,ultipath = getPrinterDataOrFail(request, response)
if argId == nil then return end if argId == nil then return end
local gcode = settings.get('printer.autoWarmUpCommand').."\n"; local gcode = settings.get('printer.autoWarmUpCommand') .. "\n"
local rv,msg = sendGcode(ultipath, gcode) local rv,msg = sendGcode(ultipath, gcode)
if rv then if rv then
@ -257,7 +257,6 @@ function M.heatup_POST(request, response)
end end
end end
--UNTESTED
--requires id(int) --requires id(int)
function M.stop_POST(request, response) function M.stop_POST(request, response)
local argId,devpath,ultipath = getPrinterDataOrFail(request, response) local argId,devpath,ultipath = getPrinterDataOrFail(request, response)
@ -280,9 +279,9 @@ end
--accepts: last(bool) (chunks will be concatenated and only when this argument is true will printing be started) --accepts: last(bool) (chunks will be concatenated and only when this argument is true will printing be started)
function M.print_POST(request, response) function M.print_POST(request, response)
local argId,devpath,ultipath = getPrinterDataOrFail(request, response) local argId,devpath,ultipath = getPrinterDataOrFail(request, response)
local gtFile = ultipath .. '/' .. GCODE_TMP_FILE
if argId == nil then return end if argId == nil then return end
local gtFile = ultipath .. '/' .. GCODE_TMP_FILE
local argGcode = request:get("gcode") local argGcode = request:get("gcode")
local argIsFirst = utils.toboolean(request:get("first")) local argIsFirst = utils.toboolean(request:get("first"))