function reco_prep($param, $func) { $val = (string) @$_POST[$param]; switch ($func) { // ------------------------------------------------------------------ case "none": return $val; // ------------------------------------------------------------------ // ------------------------------------------------------------------ case "url": $opts = array("options" => array("default" => null)); return filter_var($val, FILTER_VALIDATE_URL); // ------------------------------------------------------------------ // ------------------------------------------------------------------ case "secret": if (strlen($param) != 32 || !preg_match("#[a-f0-9]{32}#", $param)) { return null; } return reco_server_checksecret($param) ? true : null; // ------------------------------------------------------------------ // ------------------------------------------------------------------ case "chk": return md5($param); // ------------------------------------------------------------------ // ------------------------------------------------------------------ default: return reco_panic(sprintf("Unknown func(%s)", $func)); // ------------------------------------------------------------------ } }
function reco_server_api_awake($siteurl, $name, $secret) { // TODO // 1. Check secret // 2. Create/Update client if (!reco_server_checksecret()) { return reco_err("Bad secret"); } if (reco_server_db()->CreateUpdateClient($siteurl, $name, $secret)) { return array("ok" => "ok", "errstr" => ""); } return array(); }