e1b941f0fb2e4bb056036795c0291818efc83003
[ga4php.git] / authserver / lib / authClient.php
1 <?php
2
3 require_once("lib.php");
4
5 class GAAuthClient {
6         
7         function setUserToken($username, $token) {
8                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
9                 
10                 
11                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
12                         return false;
13                 }
14
15                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
16                         return false;
17                 }
18                 // TODO we need to setup a client queue sem lock here
19                 
20                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
21                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
22                 
23                 $message["username"] = $username;
24                 $message["tokenstring"] = $token;
25                 
26                 msg_send($sr_queue, MSG_SET_USER_TOKEN, $message, true, true, $msg_err);
27                 
28                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
29                 return $msg;            
30         }
31         
32         function setUserPass($username, $password) {
33                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
34                 
35                 
36                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
37                         return false;
38                 }
39
40                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
41                         return false;
42                 }
43                 // TODO we need to setup a client queue sem lock here
44                 
45                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
46                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
47
48                 $message["username"] = $username;
49                 $message["password"] = $password;
50                 
51                 msg_send($sr_queue, MSG_SET_USER_PASSWORD, $message, true, true, $msg_err);
52                 
53                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
54
55                 return $msg;
56         }
57         
58         function getOtkPng($otk) {
59                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
60                 
61                 
62                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
63                         return false;
64                 }
65
66                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
67                         return false;
68                 }
69                 // TODO we need to setup a client queue sem lock here
70                 
71                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
72                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
73
74                 $message["otk"] = $otk;
75                 error_log("sending message, $otk");
76                 msg_send($sr_queue, MSG_GET_OTK_PNG, $message, true, true, $msg_err);
77                 
78                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
79                 
80                 return $msg;
81                 
82         }
83         
84         function authUserPass($username, $password) {
85                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
86                 
87                 
88                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
89                         return false;
90                 }
91
92                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
93                         return false;
94                 }
95                 // TODO we need to setup a client queue sem lock here
96                 
97                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
98                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
99
100                 $message["username"] = $username;
101                 $message["password"] = $password;
102                 
103                 msg_send($sr_queue, MSG_AUTH_USER_PASSWORD, $message, true, true, $msg_err);
104                 
105                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
106                 return $msg;            
107         }
108         
109         function deleteUser($username) {
110                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
111                 
112                 
113                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
114                         return false;
115                 }
116
117                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
118                         return false;
119                 }
120                 // TODO we need to setup a client queue sem lock here
121                 
122                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
123                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
124
125                 $message["username"] = $username;
126                 
127                 msg_send($sr_queue, MSG_DELETE_USER, $message, true, true, $msg_err);
128                 
129                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
130                 
131                 return $msg;
132                 
133         }
134         
135         function setUserRealName($username, $realname) {
136                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
137                 
138                 
139                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
140                         return false;
141                 }
142
143                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
144                         return false;
145                 }
146                 // TODO we need to setup a client queue sem lock here
147                 
148                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
149                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
150
151                 $message["username"] = $username;
152                 $message["realname"] = $realname;
153                 
154                 msg_send($sr_queue, MSG_SET_USER_REALNAME, $message, true, true, $msg_err);
155                 
156                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
157                 return $msg;            
158         }
159         
160         function getUsers() {
161                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
162                 
163                 
164                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
165                         return false;
166                 }
167
168                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
169                         return false;
170                 }
171                 // TODO we need to setup a client queue sem lock here
172                 
173                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
174                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
175                 
176                 msg_send($sr_queue, MSG_GET_USERS, "", true, true, $msg_err);
177                 
178                 msg_receive($cl_queue, 0, $msg_type, 524288, $msg);
179                 
180                 return $msg;
181         }
182         
183         function authUserToken($username, $passcode) {
184                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
185                 
186                 
187                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
188                         return false;
189                 }
190
191                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
192                         return false;
193                 }
194                 // TODO we need to setup a client queue sem lock here
195                 
196                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
197                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
198                 
199                 
200                 $message["username"] = $username;
201                 $message["passcode"] = $passcode;
202                 
203                 msg_send($sr_queue, MSG_AUTH_USER_TOKEN, $message, true, true, $msg_err);
204                 echo "message sent\n";
205                 
206                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
207                 
208                 return $msg;
209         }
210         
211         function addUser($username, $tokentype="", $hexkey="") {
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                 
223                 // TODO we need to setup a client queue sem lock here
224                 
225                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
226                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
227                 
228                 
229                 $message["username"] = $username;
230                 if($tokentype!="") $message["tokentype"] = $tokentype;
231                 if($hexkey!="") $message["hexkey"] = $hexkey;
232                 
233                 msg_send($sr_queue, MSG_ADD_USER_TOKEN, $message, true, true, $msg_err);
234                 
235                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
236                 
237                 return $msg;
238         }
239
240         function setUserTokenType($username, $tokentype) {
241                 global $MSG_QUEUE_KEY_ID_SERVER, $MSG_QUEUE_KEY_ID_CLIENT;
242                 
243                 
244                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_SERVER)) {
245                         return false;
246                 }
247
248                 if(!msg_queue_exists($MSG_QUEUE_KEY_ID_CLIENT)) {
249                         return false;
250                 }
251                 
252                 // TODO we need to setup a client queue sem lock here
253                 
254                 $cl_queue = msg_get_queue($MSG_QUEUE_KEY_ID_CLIENT);
255                 $sr_queue = msg_get_queue($MSG_QUEUE_KEY_ID_SERVER);
256                 
257                 
258                 
259                 $message["username"] = $username;
260                 $message["tokentype"] = $tokentype;
261                 
262                 msg_send($sr_queue, MSG_SET_USER_TOKEN_TYPE, $message, true, true, $msg_err);
263                 
264                 msg_receive($cl_queue, 0, $msg_type, 16384, $msg);
265                 
266                 return $msg;
267                 
268         }
269 }
270
271 ?>