25 lines
880 B
PHP
25 lines
880 B
PHP
<?php
|
|
try {
|
|
require_once("usertable.php");
|
|
$user = $db->real_escape_string($_REQUEST['user']);
|
|
$msg = $db->real_escape_string($_REQUEST['msg']);
|
|
$pgp = gnupg_init();
|
|
if (strlen($_REQUEST['msg'])>100000) error("message is too long");
|
|
if (!$pgp) error("pgp on server failed");
|
|
$q = $db->query("select pubkey from user where name='$user';");
|
|
if (!$q || $q->num_rows!=1) error("user not found on server");
|
|
$pubkey = gnupg_import($pgp, $q->fetch_row()[0]);
|
|
if (!$pubkey) error("wrong identity");
|
|
require_once("messagetable.php");
|
|
$q = $db->query("insert into message (user, msg) values ('$user', '$msg');");
|
|
if (!$q) {
|
|
error_log("Error storing message: ".$db->error);
|
|
error("storing message failed");
|
|
}
|
|
success("message stored");
|
|
} catch (Exception $e) {
|
|
error_log("Error storing message: ".$e->message);
|
|
error("storing message failed");
|
|
}
|
|
|
|
?>
|