diff --git a/src/managesieve/managesieve-client.c b/src/managesieve/managesieve-client.c
index ec7b8de16c11949c025f9ac5a08674c8d7d2e598..8676a8b51a1cdae89c980cafd8d999247cbfef8f 100644
--- a/src/managesieve/managesieve-client.c
+++ b/src/managesieve/managesieve-client.c
@@ -127,7 +127,7 @@ int client_create(int fd_in, int fd_out, const char *session_id,
 	svenv.flags = SIEVE_FLAG_HOME_RELATIVE;
 
 	if (sieve_init(&svenv, &managesieve_sieve_callbacks, user,
-		       set->mail_debug, &svinst) < 0) {
+		       user->set->mail_debug, &svinst) < 0) {
 		*error_r = "Failed to initialize Sieve interpreter";
 		return -1;
 	}
diff --git a/src/managesieve/managesieve-settings.c b/src/managesieve/managesieve-settings.c
index f1b732aa82ea4177bc58b1177aea2d113d9804c8..818c566142bf7eb07183135fa99419f435b721a6 100644
--- a/src/managesieve/managesieve-settings.c
+++ b/src/managesieve/managesieve-settings.c
@@ -56,7 +56,6 @@ const struct setting_keyvalue managesieve_settings_service_settings_defaults[] =
 	SETTING_DEFINE_STRUCT_##type(#name, name, struct managesieve_settings)
 
 static struct setting_define managesieve_setting_defines[] = {
-	DEF(BOOL, mail_debug),
 	DEF(BOOL, verbose_proctitle),
 	DEF(STR, rawlog_dir),
 
@@ -70,7 +69,6 @@ static struct setting_define managesieve_setting_defines[] = {
 };
 
 static struct managesieve_settings managesieve_default_settings = {
-	.mail_debug = FALSE,
 	.verbose_proctitle = FALSE,
 	.rawlog_dir = "",
 
diff --git a/src/managesieve/managesieve-settings.h b/src/managesieve/managesieve-settings.h
index b00905af92f41e8b453c6ec90dfa4edc9e2e1462..976e18e3ee92d6fc7d8f3f5a456557976e534441 100644
--- a/src/managesieve/managesieve-settings.h
+++ b/src/managesieve/managesieve-settings.h
@@ -11,7 +11,6 @@ enum managesieve_client_workarounds {
 
 struct managesieve_settings {
 	pool_t pool;
-	bool mail_debug;
 	bool verbose_proctitle;
 	const char *rawlog_dir;