loader: more stringent sanity check

Alexandre Julliard julliard at winehq.org
Thu Mar 20 17:28:50 CDT 2008


"Dan Kegel" <dank at kegel.com> writes:

> +    if (!strcmp( argv[1], "--nosanitycheck" ))
> +    {
> +        perform_sanity_check = 0;
> +
> +        /* Delete --nosanitycheck from argv */
> +
> +        /* Size of argv before is argc +1 for argv[0], +1 for argv[argc]=0 */
> +        /* Size of argv afterwards is one less */
> +        argv = malloc((argc + 1) * sizeof (char *));	
> +        argv[0] = (*pargv)[0];
> +        memcpy(argv+1, *pargv + 2, argc * sizeof(char *));  /* final 0, too */
> +        argc--;
> +        *pargc = argc;
> +        *pargv = argv;
> +    }
> +
> +    if (perform_sanity_check && !geteuid())
> +    {
> +        fprintf( stderr, "%s\n%s\n",
> +          "Please don't run wine as root!  See http://wiki.winehq.org/NoRoot",
> +           usage );
> +        exit(1);
> +    }

I hope you are not seriously suggesting that we do this...

I'm not at all convinced that we need even a warning, there doesn't seem
to be much concrete evidence that running as root is actually harmful,
and it's necessary in many cases. Refusing to run is clearly not an
option.

If we really need to have something then it should be at most a one-time
warning (in a message box so people have a chance to see it) at
wineprefixcreate time, with an easy way to disable it.

-- 
Alexandre Julliard
julliard at winehq.org



More information about the wine-devel mailing list