summaryrefslogtreecommitdiff
path: root/program/steps/settings/responses.inc
diff options
context:
space:
mode:
authorAleksander Machniak <alec@alec.pl>2014-07-05 12:33:03 +0200
committerAleksander Machniak <alec@alec.pl>2014-07-05 12:48:55 +0200
commit7152d0fdefc0cb60b26c928342436604479dc610 (patch)
treebf01d0c838505dc284b984d8fdbe8fddaca67203 /program/steps/settings/responses.inc
parentc627d3bb02a41716af17dff5eca8d7df30297414 (diff)
Fix security issue in delete-response action - allow only ajax request.
Unify code for identities and responses deletion. Conflicts: program/steps/settings/func.inc
Diffstat (limited to 'program/steps/settings/responses.inc')
-rw-r--r--program/steps/settings/responses.inc8
1 files changed, 3 insertions, 5 deletions
diff --git a/program/steps/settings/responses.inc b/program/steps/settings/responses.inc
index 06093b3b8..4374595a7 100644
--- a/program/steps/settings/responses.inc
+++ b/program/steps/settings/responses.inc
@@ -51,8 +51,8 @@ if (!empty($_POST['_insert'])) {
$RCMAIL->output->send();
}
-if ($RCMAIL->action == 'delete-response') {
- if ($key = rcube_utils::get_input_value('_key', rcube_utils::INPUT_GPC)) {
+if ($RCMAIL->action == 'delete-response' && $RCMAIL->output->ajax_call) {
+ if ($key = rcube_utils::get_input_value('_key', rcube_utils::INPUT_POST)) {
$responses = $RCMAIL->get_compose_responses(false, true);
foreach ($responses as $i => $response) {
if (empty($response['key']))
@@ -70,9 +70,7 @@ if ($RCMAIL->action == 'delete-response') {
$RCMAIL->output->command('remove_response', $key);
}
- if ($RCMAIL->output->ajax_call) {
- $RCMAIL->output->send();
- }
+ $RCMAIL->output->send();
}