[PATCH 1/7] os: Remove any old logfile before trying to write to it

walter harms wharms at bfs.de
Thu Nov 8 09:21:46 PST 2012



Am 08.11.2012 14:41, schrieb Jon TURNEY:
> If we are not backing up logfiles, remove the old logfile before trying to write
> a new logfile, as otherwise the operation may fail if the previous logfile was
> created by a different user.
> 

what are the permissions of that file ?
normally you can  not remove any file that is not worn by your.
I would print an advive to use rm /logfile if the creation failed.

just my 2 cents

re,
 wh


> This change is useful when:
> - The DDX doesn't use the logfile backup mechanism (i.e. not Xorg)
> - The DDX is run by a non-root user, and then by a different non-root user
> - The logfile directory doesn't have the restricted-deletion flag set
> 
> Signed-off-by: Jon TURNEY <jon.turney at dronecode.org.uk>
> Acked-by: Yaakov Selkowitz <yselkowitz at users.sourceforge.net>
> Reviewed-by: Yaakov Selkowitz <yselkowitz at users.sourceforge.net>
> ---
>  os/log.c |    3 +++
>  1 files changed, 3 insertions(+), 0 deletions(-)
> 
> diff --git a/os/log.c b/os/log.c
> index 4820e9a..15271eb 100644
> --- a/os/log.c
> +++ b/os/log.c
> @@ -216,6 +216,9 @@ LogInit(const char *fname, const char *backup)
>                  free(oldLog);
>              }
>          }
> +        else {
> +            unlink(logFileName);
> +        }
>          if ((logFile = fopen(logFileName, "w")) == NULL)
>              FatalError("Cannot open log file \"%s\"\n", logFileName);
>          setvbuf(logFile, NULL, _IONBF, 0);


More information about the xorg-devel mailing list