some checks on server side
This commit is contained in:
@@ -1,16 +1,34 @@
|
||||
<?php
|
||||
require_once("messagetable.php");
|
||||
try {
|
||||
require_once("usertable.php");
|
||||
$user = $db->real_escape_string($_REQUEST['user']);
|
||||
$msg = $db->real_escape_string($_REQUEST['msg']);
|
||||
$q = $db->query("insert into message (user, msg) values ('$user', '$msg');");
|
||||
if ($q) {
|
||||
echo json_encode(true);
|
||||
$pgp = gnupg_init();
|
||||
if (!$pgp) {
|
||||
echo json_encode(array('success' => false, 'txt' => "pgp on server failed"));
|
||||
} else {
|
||||
error_log("Error storing message: ".$db->error);
|
||||
echo json_encode(false);
|
||||
$q = $db->query("select pubkey from user where name='$user';");
|
||||
if (!$q || $q->num_rows!=1) {
|
||||
echo json_encode(array('success' => false, 'txt' => "user not found on server"));
|
||||
} else {
|
||||
$pubkey = gnupg_import($pgp, $q->fetch_row()[0]);
|
||||
if (!$pubkey) {
|
||||
echo json_encode(array('success' => false, 'txt' => "wrong identity"));
|
||||
} else {
|
||||
require_once("messagetable.php");
|
||||
$q = $db->query("insert into message (user, msg) values ('$user', '$msg');");
|
||||
if ($q) {
|
||||
echo json_encode(array('success' => true, 'txt' => "message stored"));
|
||||
} else {
|
||||
error_log("Error storing message: ".$db->error);
|
||||
echo json_encode(array('success' => false, 'txt' => "storing message failed"));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
echo json_encode(false);
|
||||
error_log("Error storing message: ".$e->message);
|
||||
echo json_encode(array('success' => false, 'txt' => "storing message failed"));
|
||||
}
|
||||
|
||||
?>
|
Reference in New Issue
Block a user