diff --git a/source3/auth/auth_util.c b/source3/auth/auth_util.c
index 1c036ff1244..a30a36f9aa7 100644
--- a/source3/auth/auth_util.c
+++ b/source3/auth/auth_util.c
@@ -918,13 +918,12 @@ NTSTATUS make_server_info_guest(TALLOC_CTX *mem_ctx,
 
 static struct auth_serversupplied_info *system_info = NULL;
 
-bool init_system_info(void)
+NTSTATUS init_system_info(void)
 {
 	if (system_info != NULL)
-		return True;
+		return NT_STATUS_OK;
 
-	return NT_STATUS_IS_OK(make_new_server_info_system(NULL,
-							   &system_info));
+	return make_new_server_info_system(NULL, &system_info);
 }
 
 NTSTATUS make_server_info_system(TALLOC_CTX *mem_ctx,
diff --git a/source3/include/proto.h b/source3/include/proto.h
index a2cc222e0f7..f6c77b6d5e2 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -143,7 +143,7 @@ NTSTATUS make_serverinfo_from_username(TALLOC_CTX *mem_ctx,
 struct auth_serversupplied_info *copy_serverinfo(TALLOC_CTX *mem_ctx,
 						 const struct auth_serversupplied_info *src);
 bool init_guest_info(void);
-bool init_system_info(void);
+NTSTATUS init_system_info(void);
 bool server_info_set_session_key(struct auth_serversupplied_info *info,
 				 DATA_BLOB session_key);
 NTSTATUS make_server_info_guest(TALLOC_CTX *mem_ctx,
diff --git a/source3/smbd/server.c b/source3/smbd/server.c
index f4436bfad7a..abdd52accb3 100644
--- a/source3/smbd/server.c
+++ b/source3/smbd/server.c
@@ -1179,8 +1179,10 @@ extern void build_options(bool screen);
 		exit(1);
 	}
 
-	if (!init_system_info()) {
-		DEBUG(0,("ERROR: failed to setup system user info.\n"));
+	status = init_system_info();
+	if (!NT_STATUS_IS_OK(status)) {
+		DEBUG(1, ("ERROR: failed to setup system user info: %s.\n",
+			  nt_errstr(status)));
 		return -1;
 	}
 
diff --git a/source3/winbindd/winbindd.c b/source3/winbindd/winbindd.c
index 92ae12fe766..d9a302cbc3b 100644
--- a/source3/winbindd/winbindd.c
+++ b/source3/winbindd/winbindd.c
@@ -1398,8 +1398,10 @@ int main(int argc, char **argv, char **envp)
 
 	winbindd_register_handlers();
 
-	if (!init_system_info()) {
-		DEBUG(0,("ERROR: failed to setup system user info.\n"));
+	status = init_system_info();
+	if (!NT_STATUS_IS_OK(status)) {
+		DEBUG(1, ("ERROR: failed to setup system user info: %s.\n",
+			  nt_errstr(status)));
 		exit(1);
 	}