CSRF protection in imsettings.php
darcs-hash:20080829035707-7b5ce-69a9ff98390ff8b9671ede948d78fdb37371aac6.gz
This commit is contained in:
parent
6be7cbc5cd
commit
2e239e3fbb
@ -35,6 +35,7 @@ class ImsettingsAction extends SettingsAction {
|
|||||||
'id' => 'imsettings',
|
'id' => 'imsettings',
|
||||||
'action' =>
|
'action' =>
|
||||||
common_local_url('imsettings')));
|
common_local_url('imsettings')));
|
||||||
|
common_hidden('token', common_session_token());
|
||||||
|
|
||||||
common_element('h2', NULL, _('Address'));
|
common_element('h2', NULL, _('Address'));
|
||||||
|
|
||||||
@ -98,6 +99,13 @@ class ImsettingsAction extends SettingsAction {
|
|||||||
|
|
||||||
function handle_post() {
|
function handle_post() {
|
||||||
|
|
||||||
|
# CSRF protection
|
||||||
|
$token = $this->trimmed('token');
|
||||||
|
if (!$token || $token != common_session_token()) {
|
||||||
|
$this->show_form(_('There was a problem with your session token. Try again, please.'));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if ($this->arg('save')) {
|
if ($this->arg('save')) {
|
||||||
$this->save_preferences();
|
$this->save_preferences();
|
||||||
} else if ($this->arg('add')) {
|
} else if ($this->arg('add')) {
|
||||||
|
Loading…
Reference in New Issue
Block a user