#!/usr/bin/lua
local socket = require "socket"
+local lfs = require "lfs"
+local uci = require "uci"
+local posix = require "posix"
function startswith(String,Start)
if String then
end
function list_dir(name)
- local lfs = require "lfs"
local result = {}
for name in lfs.dir(name) do
if not startswith(name,".") then
function get_devid(config)
- local uci = require "uci"
-
local web_devid = uci.get(config,"web","devid")
if web_devid then
local web_devid = io.read("*line")
return web_devid:gsub(":",""):upper()
-end
\ No newline at end of file
+end
+
+function get_children()
+
+ local pid = posix.getpid()
+ local pidlist = list_dir('/proc')
+ local pids = {}
+
+ for k,v in pairs(pidlist) do
+
+ pcall( function ()
+ local stats = get_file_content('/proc/'..v..'/stat')
+ local ppid = tonumber(split(stats,' ')[4])
+ if pid == ppid then
+ pids[#pids+1] = tonumber(v)
+ end
+ end)
+
+ end
+
+ return pids
+
+end