X-Git-Url: http://git.pjr.cc/?a=blobdiff_plain;f=authserver%2Fauthd%2Fauthd.php;h=520a39f8e0e14a52e4e9da484c4c5c6f1df0d810;hb=c3c37cd9f486175adf0351de80c19efd02892ca6;hp=576a507a3751743137e1ec44ee50b17812f42497;hpb=2d6b0d3ff36c0e388ea51163cb2ebee072a03dab;p=ga4php.git diff --git a/authserver/authd/authd.php b/authserver/authd/authd.php index 576a507..520a39f 100644 --- a/authserver/authd/authd.php +++ b/authserver/authd/authd.php @@ -30,7 +30,44 @@ if($pid == -1) { while(true) { msg_receive($sr_queue, 0, $msg_type, 16384, $msg); + echo "got message of type $msg_type\n"; switch($msg_type) { + case MSG_GET_RADIUS_CLIENTS: + $sql = "select * from radclients"; + $dbo = getDatabase(); + $res = $dbo->query($sql); + $clients = ""; + $i=0; + foreach($res as $row) { + // $sql = 'CREATE TABLE "radclients" ("rad_id" INTEGER PRIMARY KEY AUTOINCREMENT,"rad_name" TEXT, "rad_ip" TEXT, "rad_secret" TEXT, "rad_desc" TEXT);'; + $clients[$i]["name"] = $row["rad_name"]; + $clients[$i]["ip"] = $row["rad_ip"]; + $clients[$i]["secret"] = $row["rad_secret"]; + $clients[$i]["desc"] = $row["rad_desc"]; + } + msg_send($cl_queue, MSG_GET_RADIUS_CLIENTS, $clients); + break; + case MSG_REMOVE_RADIUS_CLIENT: + // it should send us a client by rad_name - doesnt work yet + $client = $msg["clientname"]; + $sql = "delete from radclients where rad_name='$client'"; + $dbo = getDatabase(); + $res = $dbo->query($sql); + updateRadius(); + msg_send($cl_queue, MSG_REMOVE_RADIUS_CLIENT, true); + break; + case MSG_ADD_RADIUS_CLIENT: + echo "in addradclient\n"; + $client = $msg["clientname"]; + $clientsecret = $msg["clientsecret"]; + $clientip = $msg["clientip"]; + $clientdesc = $msg["clientdescription"]; + $sql = "insert into radclients values (NULL, '$client', '$clientip', '$clientsecret', '$clientdesc')"; + $dbo = getDatabase(); + $res = $dbo->query($sql); + updateRadius(); + msg_send($cl_queue, MSG_ADD_RADIUS_CLIENT, true); + break; case MSG_DELETE_USER_TOKEN: $username = $msg["username"];