9b8480f38c1a6991a88c9d643332398864b724e6
[ga4php.git] / authserver / lib / authClient.php
1 <?php
2
3 require_once("lib.php");
4
5 class GAAuthClient {
6         function addRadiusClient($clientname, $clientip, $clientsecret, $clientdesc) {
7                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
8                 
9                 
10                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
11                         return false;
12                 }
13
14                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
15                         return false;
16                 }
17                 // TODO we need to setup a client queue sem lock here
18                 
19                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
20                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
21                 
22         
23                 $message["clientname"] = $clientname;
24                 $message["clientsecret"] = $clientsecret;
25                 $message["clientip"] = $clientip;
26                 $message["clientdescription"] = $clientdesc;
27                 
28                 msg_send($sr_queue, MSG_ADD_RADIUS_CLIENT, $message, true, true, $msg_err);
29                 
30                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
31                 return $msg;
32         }
33         
34         function syncUserToken($username, $tokenone, $tokentwo) {
35                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
36                 
37                 
38                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
39                         return false;
40                 }
41
42                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
43                         return false;
44                 }
45                 // TODO we need to setup a client queue sem lock here
46                 
47                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
48                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
49                 
50                 $message["username"] = $username;
51                 $message["tokenone"] = $tokenone;
52                 $message["tokentwo"] = $tokentwo;
53
54                 msg_send($sr_queue, MSG_SYNC_TOKEN, $message, true, true, $msg_err);
55                 
56                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
57                 return $msg;
58         }
59         
60         function getUserTokenType($username) {
61                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
62                 
63                 
64                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
65                         return false;
66                 }
67
68                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
69                         return false;
70                 }
71                 // TODO we need to setup a client queue sem lock here
72                 
73                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
74                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
75                 
76                 $message["username"] = $username;
77                 msg_send($sr_queue, MSG_GET_TOKEN_TYPE, $message, true, true, $msg_err);
78                 
79                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
80                 return $msg;            
81         }
82         
83         function setUserToken($username, $token) {
84                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
85                 
86                 
87                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
88                         return false;
89                 }
90
91                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
92                         return false;
93                 }
94                 // TODO we need to setup a client queue sem lock here
95                 
96                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
97                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
98                 
99                 $message["username"] = $username;
100                 $message["tokenstring"] = $token;
101                 
102                 msg_send($sr_queue, MSG_SET_USER_TOKEN, $message, true, true, $msg_err);
103                 
104                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
105                 return $msg;            
106         }
107         
108         function setUserPass($username, $password) {
109                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
110                 
111                 
112                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
113                         return false;
114                 }
115
116                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
117                         return false;
118                 }
119                 // TODO we need to setup a client queue sem lock here
120                 
121                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
122                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
123
124                 $message["username"] = $username;
125                 $message["password"] = $password;
126                 
127                 msg_send($sr_queue, MSG_SET_USER_PASSWORD, $message, true, true, $msg_err);
128                 
129                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
130
131                 return $msg;
132         }
133         
134         function getOtkID($username) {
135                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
136                 
137                 
138                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
139                         return false;
140                 }
141
142                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
143                         return false;
144                 }
145                 // TODO we need to setup a client queue sem lock here
146                 
147                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
148                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
149
150                 $message["username"] = $username;
151                 msg_send($sr_queue, MSG_GET_OTK_ID, $message, true, true, $msg_err);
152                 
153                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
154                 
155                 return $msg;
156                 
157         }
158         
159         function getOtkPng($username, $otk) {
160                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
161                 
162                 
163                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
164                         return false;
165                 }
166
167                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
168                         return false;
169                 }
170                 // TODO we need to setup a client queue sem lock here
171                 
172                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
173                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
174
175                 $message["otk"] = $otk;
176                 $message["username"] = $username;
177                 error_log("sending message, $otk");
178                 msg_send($sr_queue, MSG_GET_OTK_PNG, $message, true, true, $msg_err);
179                 
180                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
181                 
182                 return $msg;
183                 
184         }
185         
186         function authUserPass($username, $password) {
187                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
188                 
189                 
190                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
191                         return false;
192                 }
193
194                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
195                         return false;
196                 }
197                 // TODO we need to setup a client queue sem lock here
198                 
199                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
200                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
201
202                 $message["username"] = $username;
203                 $message["password"] = $password;
204                 
205                 msg_send($sr_queue, MSG_AUTH_USER_PASSWORD, $message, true, true, $msg_err);
206                 
207                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
208                 return $msg;            
209         }
210         
211         function deleteUser($username) {
212                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
213                 
214                 
215                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
216                         return false;
217                 }
218
219                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
220                         return false;
221                 }
222                 // TODO we need to setup a client queue sem lock here
223                 
224                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
225                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
226
227                 $message["username"] = $username;
228                 
229                 msg_send($sr_queue, MSG_DELETE_USER, $message, true, true, $msg_err);
230                 
231                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
232                 
233                 return $msg;
234                 
235         }
236         
237         function setUserRealName($username, $realname) {
238                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
239                 
240                 
241                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
242                         return false;
243                 }
244
245                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
246                         return false;
247                 }
248                 // TODO we need to setup a client queue sem lock here
249                 
250                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
251                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
252
253                 $message["username"] = $username;
254                 $message["realname"] = $realname;
255                 
256                 msg_send($sr_queue, MSG_SET_USER_REALNAME, $message, true, true, $msg_err);
257                 
258                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
259                 return $msg;            
260         }
261         
262         function getUsers() {
263                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
264                 
265                 
266                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
267                         return false;
268                 }
269
270                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
271                         return false;
272                 }
273                 // TODO we need to setup a client queue sem lock here
274                 
275                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
276                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
277                 
278                 msg_send($sr_queue, MSG_GET_USERS, "", true, true, $msg_err);
279                 
280                 msg_receive($cl_queue, 0, $msg_type, 524288, $msg);
281                 
282                 return $msg;
283         }
284         
285         function authUserToken($username, $passcode) {
286                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
287                 
288                 
289                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
290                         return false;
291                 }
292
293                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
294                         return false;
295                 }
296                 // TODO we need to setup a client queue sem lock here
297                 
298                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
299                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
300                 
301                 
302                 $message["username"] = $username;
303                 $message["passcode"] = $passcode;
304                 
305                 msg_send($sr_queue, MSG_AUTH_USER_TOKEN, $message, true, true, $msg_err);
306                 
307                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
308                 
309                 return $msg;
310         }
311         
312         function deleteUserToken($username) {
313                 
314                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
315                 
316                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
317                         return false;
318                 }
319
320                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
321                         return false;
322                 }
323                 
324                 // TODO we need to setup a client queue sem lock here
325                 
326                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
327                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
328                 
329                 
330                 $message["username"] = $username;
331                 
332                 msg_send($sr_queue, MSG_DELETE_USER_TOKEN, $message, true, true, $msg_err);
333                 
334                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
335                 
336                 return $msg;
337         }
338         
339         function addUser($username, $tokentype="", $hexkey="") {
340                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
341                 
342                 
343                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
344                         return false;
345                 }
346
347                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
348                         return false;
349                 }
350                 
351                 // TODO we need to setup a client queue sem lock here
352                 
353                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
354                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
355                 
356                 
357                 $message["username"] = $username;
358                 if($tokentype!="") $message["tokentype"] = $tokentype;
359                 if($hexkey!="") $message["hexkey"] = $hexkey;
360                 
361                 msg_send($sr_queue, MSG_ADD_USER_TOKEN, $message, true, true, $msg_err);
362                 
363                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
364                 
365                 return $msg;
366         }
367
368         function setUserTokenType($username, $tokentype) {
369                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
370                 
371                 
372                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
373                         return false;
374                 }
375
376                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
377                         return false;
378                 }
379                 
380                 // TODO we need to setup a client queue sem lock here
381                 
382                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
383                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
384                 
385                 
386                 
387                 $message["username"] = $username;
388                 $message["tokentype"] = $tokentype;
389                 
390                 msg_send($sr_queue, MSG_SET_USER_TOKEN_TYPE, $message, true, true, $msg_err);
391                 
392                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
393                 
394                 return $msg;
395                 
396         }
397 }
398
399 ?>