Opened 12 years ago

Closed 12 years ago

Last modified 9 years ago

#308 closed defect (fixed)

Spurious lstat() error messages during suid check

Reported by: rainer Owned by: rainer
Priority: major Milestone: 3.0.6
Component: main Version:
Keywords: Cc:

Description

During the suid check, spurious error messages can arise from the deletion of files in temporary directories (reported by [anonymous]).

--- src/sh_suidchk.c~	2011-12-04 22:22:52.000000000 +0100
+++ src/sh_suidchk.c	2012-08-21 18:02:30.290297563 +0200
@@ -1133,6 +1133,12 @@
 	tlen = strlen(tmp);
 	if (tlen >= 6 && 0 == strcmp(&tmp[tlen-6], _("/.gvfs")))
 	  elevel = SH_ERR_NOTICE;
+        /* If we are scanning a temporary directory where dirs and files
+           can be created/deleted, an lstat() error is something which
+           may occur frequently. As a missing dir/file is not an important
+           problem for the suidcheck, the error level is only SH_ERR_NOTICE. */
+        if (status == ENOENT)
+          elevel = SH_ERR_NOTICE;
 	SH_MUTEX_LOCK(mutex_thread_nolog);
 	sh_error_handle (elevel, FIL__, __LINE__, status, MSG_ERR_LSTAT,
 			 sh_error_message(status, errbuf, sizeof(errbuf)),

Change History (1)

comment:1 by rainer, 12 years ago

Resolution: fixed
Status: newclosed

Believed to be fixed by changeset [406].

Note: See TracTickets for help on using tickets.