X-Git-Url: http://git.pjr.cc/?a=blobdiff_plain;f=authserver%2Flib%2Flib.php;h=bbdc1868a95be7ed22c98b82c53627501182ea9d;hb=8288d3ccabef50ae2d75fe48cdd60c57d264cbe1;hp=83d7ced8ddc527a53d942e9c67540f98419597e4;hpb=2d6b0d3ff36c0e388ea51163cb2ebee072a03dab;p=ga4php.git diff --git a/authserver/lib/lib.php b/authserver/lib/lib.php index 83d7ced..bbdc186 100644 --- a/authserver/lib/lib.php +++ b/authserver/lib/lib.php @@ -4,6 +4,9 @@ if(!isset($MSG_QUEUE_KEY_ID_SERVER)) $MSG_QUEUE_KEY_ID_SERVER = "189751072"; // if(!isset($MSG_QUEUE_KEY_ID_CLIENT)) $MSG_QUEUE_KEY_ID_CLIENT = "189751073"; // ftok is not ok! global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT; +if(!isset($TCP_PORT_NUMBER)) $TCP_PORT_NUMBER = 21416; +global $TCP_PORT_NUMBER; + define("MSG_AUTH_USER_TOKEN", 1); define("MSG_ADD_USER_TOKEN", 2); define("MSG_DELETE_USER", 3); @@ -18,8 +21,12 @@ define("MSG_GET_OTK_ID", 11); define("MSG_DELETE_USER_TOKEN", 12); define("MSG_SYNC_TOKEN", 13); define("MSG_GET_TOKEN_TYPE", 14); +define("MSG_GET_RADIUS_CLIENTS", 15); +define("MSG_REMOVE_RADIUS_CLIENT", 16); +define("MSG_ADD_RADIUS_CLIENT", 17); // BASE_DIR = +// messy $BASE_DIR = realpath(dirname(__FILE__)."/../../"); global $BASE_DIR; @@ -38,8 +45,34 @@ function generateRandomString() return $str; } +function updateRadius() +{ + // this is hardcoded for now. + //$clientfile = "/etc/freeradius/clients.conf"; + $clientfile = "/tmp/clients.conf"; + $reloadinit = "/etc/init.d/freeradius restart"; + + $db = getDatabase(); + + echo "in updateradius\n"; + $hand = fopen($clientfile, "w"); + $sql = "select * from radclients"; + $res = $db->query($sql); + foreach($res as $row) { + $cname = $row["rad_name"]; + $cip = $row["rad_ip"]; + $csec = $row["rad_secret"]; + $lines = "client $cname {\nipaddr = $cip\nsecret = $csec\nrequire_message_authenticator = no\n}\n\n"; + fwrite($hand, $lines); + } + fclose($hand); + // not yet + //system($reloadinit); +} + -function getDatabase() { +function getDatabase() +{ $dbobject = false; global $BASE_DIR; if(file_exists("$BASE_DIR/authserver/authd/gaasdata.sqlite")) { @@ -56,6 +89,8 @@ function getDatabase() { } $sql = 'CREATE TABLE "users" ("users_id" INTEGER PRIMARY KEY AUTOINCREMENT,"users_username" TEXT, "users_realname" TEXT, "users_password" TEXT, "users_tokendata" TEXT, "users_otk" TEXT);'; $dbobject->query($sql); + $sql = 'CREATE TABLE "radclients" ("rad_id" INTEGER PRIMARY KEY AUTOINCREMENT,"rad_name" TEXT, "rad_ip" TEXT, "rad_secret" TEXT, "rad_desc" TEXT);'; + $dbobject->query($sql); } return $dbobject;