diff --git a/src/lib-sieve/sieve.c b/src/lib-sieve/sieve.c
index 39e1313737e0ff69a3b37dccdce1fb05bf2577f7..718cd09dc1d698a7053acff7cdc71c6a789b996f 100644
--- a/src/lib-sieve/sieve.c
+++ b/src/lib-sieve/sieve.c
@@ -156,14 +156,15 @@ struct sieve_binary *sieve_compile
  */
 
 struct sieve_binary *sieve_open
-(const char *script_path, struct sieve_error_handler *ehandler, bool *exists_r)
+(const char *script_path, const char *script_name,
+	struct sieve_error_handler *ehandler, bool *exists_r)
 {
 	struct sieve_script *script;
 	struct sieve_binary *sbin;
 	const char *binpath;
 	
 	/* First open the scriptfile itself */
-	script = sieve_script_create(script_path, NULL, ehandler, exists_r);
+	script = sieve_script_create(script_path, script_name, ehandler, exists_r);
 
 	if ( script == NULL ) {
 		/* Failed */
diff --git a/src/lib-sieve/sieve.h b/src/lib-sieve/sieve.h
index affd751e61b2744e6c8699198a639a1a1a45b649..a8720357f424fa40160fddaf310c2a70f92dde27 100644
--- a/src/lib-sieve/sieve.h
+++ b/src/lib-sieve/sieve.h
@@ -61,8 +61,8 @@ struct sieve_binary *sieve_compile
  *
  */
 struct sieve_binary *sieve_open
-	(const char *scriptpath, struct sieve_error_handler *ehandler,
-		bool *exists_r);
+	(const char *scriptpath, const char *script_name, 
+		struct sieve_error_handler *ehandler, bool *exists_r);
 
 /* sieve_save:
  *  Saves the binary as the file indicated by the path parameter.
diff --git a/src/plugins/lda-sieve/lda-sieve-plugin.c b/src/plugins/lda-sieve/lda-sieve-plugin.c
index 43dd737a363cef6f2afe8f9922f5de2ddeb6b1b6..34f1f98a0bcca4f0df4f629f7532258e7bf0d2c9 100644
--- a/src/plugins/lda-sieve/lda-sieve-plugin.c
+++ b/src/plugins/lda-sieve/lda-sieve-plugin.c
@@ -127,7 +127,7 @@ static int lda_sieve_run
 	if ( debug )
 		sieve_sys_info("opening script %s", script_path);
 
-	if ( (sbin=sieve_open(script_path, ehandler, &exists)) == NULL ) {
+	if ( (sbin=sieve_open(script_path, "main script", ehandler, &exists)) == NULL ) {
 
 		ret = sieve_get_errors(ehandler) > 0 ? -1 : 0;
 
diff --git a/src/sieve-bin/bin-common.c b/src/sieve-bin/bin-common.c
index 98e3b363961b234b09dba40fc28e9917924f0dc9..866f15276b8b2125a8e2f32261f3ef264e4e2230 100644
--- a/src/sieve-bin/bin-common.c
+++ b/src/sieve-bin/bin-common.c
@@ -96,7 +96,7 @@ struct sieve_binary *bin_open_sieve_script(const char *filename)
 	ehandler = sieve_stderr_ehandler_create(0);
 	sieve_error_handler_accept_infolog(ehandler, TRUE);
 
-	if ( (sbin = sieve_open(filename, ehandler, NULL)) == NULL ) {
+	if ( (sbin = sieve_open(filename, NULL, ehandler, NULL)) == NULL ) {
 		sieve_error_handler_unref(&ehandler);
 		i_fatal("Failed to compile sieve script\n");
 	}