diff options
Diffstat (limited to 'source3/web')
-rw-r--r-- | source3/web/swat.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/source3/web/swat.c b/source3/web/swat.c index cdbbcb479b..ac182dd707 100644 --- a/source3/web/swat.c +++ b/source3/web/swat.c @@ -765,6 +765,11 @@ static void wizard_page(void) int have_home = -1; int HomeExpo = 0; int SerType = 0; + const char form_name[] = "wizard"; + + if (!verify_xsrf_token(form_name)) { + goto output_page; + } if (cgi_variable("Rewrite")) { (void) rewritecfg_file(); @@ -856,9 +861,11 @@ static void wizard_page(void) role = lp_server_role(); +output_page: /* Here we go ... */ printf("<H2>%s</H2>\n", _("Samba Configuration Wizard")); printf("<form method=post action=wizard>\n"); + print_xsrf_token(cgi_user_name(), cgi_user_pass(), form_name); if (have_write_access) { printf("%s\n", _("The \"Rewrite smb.conf file\" button will clear the smb.conf file of all default values and of comments.")); |