summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTed Trask <ttrask01@yahoo.com>2008-10-07 17:31:24 +0000
committerTed Trask <ttrask01@yahoo.com>2008-10-07 17:31:24 +0000
commiteb7cf586fd93454a27ac7337a189981611c9378b (patch)
treedd514d74525a609ce18aa9ebfb990a1b9f7a0cd2
parentaba173b48fbcb3c9079d85fd88e9639fb6d349b5 (diff)
downloadacf-dnscache-eb7cf586fd93454a27ac7337a189981611c9378b.tar.bz2
acf-dnscache-eb7cf586fd93454a27ac7337a189981611c9378b.tar.xz
Modified modelfunctions library to include validation in get/setfiledetails. Modified all uses to validate the file name - this was a major security hole.
git-svn-id: svn://svn.alpinelinux.org/acf/dnscache/trunk@1542 ab2d0c66-481e-0410-8bed-d214d4d58bed
-rw-r--r--dnscache-model.lua24
1 files changed, 5 insertions, 19 deletions
diff --git a/dnscache-model.lua b/dnscache-model.lua
index f098caf..46684cf 100644
--- a/dnscache-model.lua
+++ b/dnscache-model.lua
@@ -101,27 +101,13 @@ function setconfig(config)
end
function getconfigfile()
- local config = modelfunctions.getfiledetails(configfile)
-
- -- Validate
-
- return config
+ -- FIXME Validate
+ return modelfunctions.getfiledetails(configfile)
end
-function setconfigfile(config)
- local configcontent = string.gsub(format.dostounix(config.value.filecontent.value), "\n*$", "")
-
- -- Validate
-
- if fs.is_file(configfile) then
- fs.write_file(configfile, configcontent)
- config = modelfunctions.getfiledetails(configfile)
- else
- config.value.filecontent.value = configcontent
- config.errtxt = "Failed to set config"
- end
-
- return config
+function setconfigfile(filedetails)
+ -- FIXME Validate
+ return modelfunctions.setfiledetails(filedetails, {configfile})
end
function getIPs()