Files
safechat/html/login.php

50 lines
1.6 KiB
PHP
Raw Normal View History

2015-06-28 20:58:51 +00:00
<?php
2015-07-15 21:33:06 +00:00
/*! @file
@id $Id$
*/
// 1 2 3 4 5 6 7 8
// 45678901234567890123456789012345678901234567890123456789012345678901234567890
2015-07-15 21:33:06 +00:00
/// Verify a user
/** Check if a user is consistent to the data in the server's database
or create a user, if he does not yet exist in the usertable
2015-07-15 21:33:06 +00:00
(and the user name is available).
@param $user user's name
@param $pubkey user's public key
2015-07-15 21:33:06 +00:00
@return json encoded status with text:
- success() in case of success (user exists or has been created)
- error() in case of mismatch
@api Verify a User
2015-07-15 21:33:06 +00:00
*/
function login($user, $pubkey) {
try {
require_once("opendb.php");
2016-01-08 11:40:36 +00:00
if (!$db) error("database access failed");
if ($user=="safechat") error("username safechat is reserved for server");
2016-01-08 11:40:36 +00:00
//$verify = gnupg_import($pgp, $pubkey);
//if (!$verify) error("wrong identity");
$user = $db->real_escape_string($user);
$pubkey = $db->real_escape_string($pubkey);
$q = $db->query("select * from user where name='$user' and pubkey='$pubkey';");
2016-01-08 11:40:36 +00:00
if (!$q) error("database query failed");
if ($q->num_rows==1) {
success("user $user found on server");
} elseif ($q->num_rows==0) {
$q = $db->query("insert into user (name, pubkey) values ('$user', '$pubkey');");
if (!$q) error("creation of user failed");
success("user $user created on server");
} else {
error("server database defect");
}
} catch (Exception $e) {
error("login failed");
2015-06-28 20:58:51 +00:00
}
}
login($_REQUEST['user'], $_REQUEST['pubkey']);
2015-06-28 20:58:51 +00:00
?>