some checks on server side
This commit is contained in:
@@ -1,18 +1,28 @@
|
||||
<?php
|
||||
require_once("usertable.php");
|
||||
try {
|
||||
require_once("usertable.php");
|
||||
$user = $db->real_escape_string($_REQUEST['user']);
|
||||
$pubkey = $db->real_escape_string($_REQUEST['pubkey']);
|
||||
$q = $db->query("select * from user where name='$user' and pubkey='$pubkey';");
|
||||
if ($q->num_rows==1) {
|
||||
echo json_encode(true);
|
||||
} elseif ($q->num_rows==0) {
|
||||
$q = $db->query("insert into user (name, pubkey) values ('$user', '$pubkey');");
|
||||
echo json_encode(true);
|
||||
$pgp = gnupg_init();
|
||||
if (!$pgp) {
|
||||
echo json_encode(array('success' => false, 'txt' => "pgp on server failed"));
|
||||
} else {
|
||||
echo json_encode(false);
|
||||
$verify = gnupg_import($pgp, $_REQUEST['pubkey']);
|
||||
if (!$verify) {
|
||||
echo json_encode(array('success' => false, 'txt' => "wrong identity"));
|
||||
} else {
|
||||
$q = $db->query("select * from user where name='$user' and pubkey='$pubkey';");
|
||||
if ($q->num_rows==1) {
|
||||
echo json_encode(array('success' => true, 'txt' => "user verified"));
|
||||
} elseif ($q->num_rows==0) {
|
||||
$q = $db->query("insert into user (name, pubkey) values ('$user', '$pubkey');");
|
||||
echo json_encode(array('success' => true, 'txt' => "user created"));
|
||||
} else {
|
||||
echo json_encode(array('success' => false, 'txt' => "server database defect"));
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
echo json_encode(false);
|
||||
echo json_encode(array('success' => false, 'txt' => "login failed"));
|
||||
}
|
||||
?>
|
||||
|
Reference in New Issue
Block a user