---[[ LuCI Linux and POSIX system utilities. ]] module "luci.sys" ---[[ Execute a given shell command and return the error code @class function @name call @param ... Command to call @return Error code of the command ]] ---[[ Execute a given shell command and capture its standard output @class function @name exec @param command Command to call @return String containg the return the output of the command ]] ---[[ Retrieve information about currently mounted file systems. @class function @name mounts @return Table containing mount information ]] ---[[ Retrieve environment variables. If no variable is given then a table containing the whole environment is returned otherwise this function returns the corresponding string value for the given name or nil if no such variable exists. @class function @name getenv @param var Name of the environment variable to retrieve (optional) @return String containg the value of the specified variable @return Table containing all variables if no variable name is given ]] ---[[ Get or set the current hostname. @class function @name hostname @param String containing a new hostname to set (optional) @return String containing the system hostname ]] ---[[ Returns the contents of a documented referred by an URL. @class function @name httpget @param url The URL to retrieve @param stream Return a stream instead of a buffer @param target Directly write to target file name @return String containing the contents of given the URL ]] ---[[ Initiate a system reboot. @class function @name reboot @return Return value of os.execute() ]] ---[[ Retrieves the output of the "logread" command. @class function @name syslog @return String containing the current log buffer ]] ---[[ Retrieves the output of the "dmesg" command. @class function @name dmesg @return String containing the current log buffer ]] ---[[ Generates a random id with specified length. @class function @name uniqueid @param bytes Number of bytes for the unique id @return String containing hex encoded id ]] ---[[ Returns the current system uptime stats. @class function @name uptime @return String containing total uptime in seconds ]] ---[[ LuCI system utilities / network related functions. @class module @name luci.sys.net ]] ---[[ Returns the current arp-table entries as two-dimensional table. @class function @name net.arptable @return Table of table containing the current arp entries. -- The following fields are defined for arp entry objects: -- { "IP address", "HW address", "HW type", "Flags", "Mask", "Device" } ]] ---[[ Returns a two-dimensional table of mac address hints. @class function @name net.mac_hints @return Table of table containing known hosts from various sources. Each entry contains the values in the following order: [ "mac", "name" ] ]] ---[[ Returns a two-dimensional table of IPv4 address hints. @class function @name net.ipv4_hints @return Table of table containing known hosts from various sources. Each entry contains the values in the following order: [ "ip", "name" ] ]] ---[[ Returns a two-dimensional table of IPv6 address hints. @class function @name net.ipv6_hints @return Table of table containing known hosts from various sources. Each entry contains the values in the following order: [ "ip", "name" ] ]] ---[[ Returns a two-dimensional table of host hints. @class function @name net.host_hints @return Table of table containing known hosts from various sources, indexed by mac address. Each subtable contains at least one of the fields "name", "ipv4" or "ipv6". ]] ---[[ Returns conntrack information @class function @name net.conntrack @return Table with the currently tracked IP connections ]] ---[[ Determine the names of available network interfaces. @class function @name net.devices @return Table containing all current interface names ]] ---[[ Return information about available network interfaces. @class function @name net.deviceinfo @return Table containing all current interface names and their information ]] ---[[ Returns the current kernel routing table entries. @class function @name net.routes @return Table of tables with properties of the corresponding routes. -- The following fields are defined for route entry tables: -- { "dest", "gateway", "metric", "refcount", "usecount", "irtt", -- "flags", "device" } ]] ---[[ Returns the current ipv6 kernel routing table entries. @class function @name net.routes6 @return Table of tables with properties of the corresponding routes. -- The following fields are defined for route entry tables: -- { "source", "dest", "nexthop", "metric", "refcount", "usecount", -- "flags", "device" } ]] ---[[ Tests whether the given host responds to ping probes. @class function @name net.pingtest @param host String containing a hostname or IPv4 address @return Number containing 0 on success and >= 1 on error ]] ---[[ LuCI system utilities / process related functions. @class module @name luci.sys.process ]] ---[[ Get the current process id. @class function @name process.info @return Number containing the current pid ]] ---[[ Retrieve information about currently running processes. @class function @name process.list @return Table containing process information ]] ---[[ Set the gid of a process identified by given pid. @class function @name process.setgroup @param gid Number containing the Unix group id @return Boolean indicating successful operation @return String containing the error message if failed @return Number containing the error code if failed ]] ---[[ Set the uid of a process identified by given pid. @class function @name process.setuser @param uid Number containing the Unix user id @return Boolean indicating successful operation @return String containing the error message if failed @return Number containing the error code if failed ]] ---[[ Send a signal to a process identified by given pid. @class function @name process.signal @param pid Number containing the process id @param sig Signal to send (default: 15 [SIGTERM]) @return Boolean indicating successful operation @return Number containing the error code if failed ]] ---[[ LuCI system utilities / user related functions. @class module @name luci.sys.user ]] ---[[ Retrieve user informations for given uid. @class function @name getuser @param uid Number containing the Unix user id @return Table containing the following fields: -- { "uid", "gid", "name", "passwd", "dir", "shell", "gecos" } ]] ---[[ Retrieve the current user password hash. @class function @name user.getpasswd @param username String containing the username to retrieve the password for @return String containing the hash or nil if no password is set. @return Password database entry ]] ---[[ Test whether given string matches the password of a given system user. @class function @name user.checkpasswd @param username String containing the Unix user name @param pass String containing the password to compare @return Boolean indicating wheather the passwords are equal ]] ---[[ Change the password of given user. @class function @name user.setpasswd @param username String containing the Unix user name @param password String containing the password to compare @return Number containing 0 on success and >= 1 on error ]] ---[[ LuCI system utilities / wifi related functions. @class module @name luci.sys.wifi ]] ---[[ Get wireless information for given interface. @class function @name wifi.getiwinfo @param ifname String containing the interface name @return A wrapped iwinfo object instance ]] ---[[ LuCI system utilities / init related functions. @class module @name luci.sys.init ]] ---[[ Get the names of all installed init scripts @class function @name init.names @return Table containing the names of all inistalled init scripts ]] ---[[ Get the index of he given init script @class function @name init.index @param name Name of the init script @return Numeric index value ]] ---[[ Test whether the given init script is enabled @class function @name init.enabled @param name Name of the init script @return Boolean indicating whether init is enabled ]] ---[[ Enable the given init script @class function @name init.enable @param name Name of the init script @return Boolean indicating success ]] ---[[ Disable the given init script @class function @name init.disable @param name Name of the init script @return Boolean indicating success ]] ---[[ Start the given init script @class function @name init.start @param name Name of the init script @return Boolean indicating success ]] ---[[ Stop the given init script @class function @name init.stop @param name Name of the init script @return Boolean indicating success ]]