diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2008-08-17 23:40:51 +0000 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2008-08-17 23:40:51 +0000 |
commit | d0cbcfa45826b96d36522b8055ce0ba994a0879d (patch) | |
tree | ae12196c90b2d946fababadf9c9b7dfa454bc15c | |
parent | 6d5efc7925f8abf7ab64ad76b0a70ddfb8d21a93 (diff) |
* luci/libs: further fixes in uvl cli and library
-rw-r--r-- | libs/uvl/luasrc/uvl.lua | 14 | ||||
-rwxr-xr-x | libs/uvl/root/usr/bin/uvl | 6 |
2 files changed, 17 insertions, 3 deletions
diff --git a/libs/uvl/luasrc/uvl.lua b/libs/uvl/luasrc/uvl.lua index b3701b17ec..85962b402b 100644 --- a/libs/uvl/luasrc/uvl.lua +++ b/libs/uvl/luasrc/uvl.lua @@ -110,6 +110,10 @@ function UVL.validate_config( self, config ) local co = self.uci.get_all( config ) local sc = { } + if not co then + return false, 'Unable to load configuration "' .. config .. '"' + end + local function _uci_foreach( type, func ) local ok, err for k, v in pairs(co) do @@ -179,6 +183,11 @@ function UVL.validate_section( self, config, section ) self.beenthere = { } local co = self.uci.get_all( config ) + + if not co then + return false, 'Unable to load configuration "' .. config .. '"' + end + if co[section] then return self:_validate_section( luci.uvl.section( self, co, co[section]['.type'], config, section @@ -208,6 +217,11 @@ function UVL.validate_option( self, config, section, option ) self.beenthere = { } local co = self.uci.get_all( config ) + + if not co then + return false, 'Unable to load configuration "' .. config .. '"' + end + if co[section] and co[section][option] then return self:_validate_option( luci.uvl.option( self, co, co[section]['.type'], config, section, option diff --git a/libs/uvl/root/usr/bin/uvl b/libs/uvl/root/usr/bin/uvl index 9fe34127f4..3f179ee6a7 100755 --- a/libs/uvl/root/usr/bin/uvl +++ b/libs/uvl/root/usr/bin/uvl @@ -103,17 +103,17 @@ else local uvl = luci.uvl.UVL( type(options.schemedir) == "string" and options.schemedir or nil ) - + local cso = luci.util.split( arguments[1], "." ) local ok, err = uvl:validate( unpack(cso) ) if ok then if not options.silent then print( string.format( - '%s "%s.%s.%s" validates fine!', + '%s "%s" validates fine!', ( #cso == 1 and "Config" or ( #cso == 2 and "Section" or "Option" ) ), - cso[1], cso[2], cso[3] + table.concat(cso, ".") ) ) end os.exit( 0 ) |