Mail Archives: cygwin/2001/06/28/07:54:56
At 13:04 28-6-2001, Trikkaliotis Niklos wrote:
>Yes the problems from cron is resolved !!!
>Take the next patch !!!
>Compile the sources, copy the exes in the correct place and run cron as
>service !!!
>All work fine :-))))
Well, It's up to Corinna, of course, but I would be surprised if this patch
is accepted.
A few comments:
>cron.h
>92c92
>< #define CRON_TAB(u) "%s/%s", SPOOL_DIR, u
>---
> > #define CRON_TAB(u) "%s/%s/%s", CRONDIR, SPOOL_DIR, u
This should be totally unnecessary. In every place this is used, the cwd
is CRONDIR.
In any case, if it would be useful, you should put this change within an
"#ifdef __CYGWIN__".
>crontab.c
>644c644
>< if (fchmod(fileno(tmp), 0600) < OK)
>---
> > if (fchmod(fileno(tmp), 0644) < OK)
Also here, this shouldn't be necessary. The SYSTEM user (which cron should
be running under) has access to all files.
Also here, in any case, it should be within an "#ifdef __CYGWIN__".
>do_command.c
>232c232
>< if (setuid(e->uid) < 0) /* we aren't root after
>this... */
>---
> > if (setuid(ROOT_UID) < 0) /* we aren't root
>after this... */
This is plain wrong. The whole point of the setuid is to run as the user
owning the crontab file. Instead, you setuid to SYSTEM, which should
already be the real uid running cron.
Just my € 0.02,
- Michael
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -