crond: use bb_setpgrp, not setpgrp
platform.h: make a bit more readable
This commit is contained in:
parent
f8535ccd65
commit
6ebb2f56d5
@ -78,7 +78,7 @@
|
|||||||
//__attribute__ ((__externally_visible__))
|
//__attribute__ ((__externally_visible__))
|
||||||
#else
|
#else
|
||||||
# define EXTERNALLY_VISIBLE
|
# define EXTERNALLY_VISIBLE
|
||||||
#endif /* GNUC >= 4.1 */
|
#endif
|
||||||
|
|
||||||
/* We use __extension__ in some places to suppress -pedantic warnings
|
/* We use __extension__ in some places to suppress -pedantic warnings
|
||||||
about GCC extensions. This feature didn't work properly before
|
about GCC extensions. This feature didn't work properly before
|
||||||
@ -185,7 +185,7 @@ typedef int socklen_t;
|
|||||||
* until userspace is widely fixed. */
|
* until userspace is widely fixed. */
|
||||||
#if (defined __INTEL_COMPILER && !defined __GNUC__) || \
|
#if (defined __INTEL_COMPILER && !defined __GNUC__) || \
|
||||||
(defined __GNUC__ && defined __STRICT_ANSI__)
|
(defined __GNUC__ && defined __STRICT_ANSI__)
|
||||||
__extension__ typedef __signed__ long long __s64;
|
__extension__ typedef long long __s64;
|
||||||
__extension__ typedef unsigned long long __u64;
|
__extension__ typedef unsigned long long __u64;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -296,30 +296,32 @@ static ALWAYS_INLINE char* strchrnul(const char *s, char c)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if (defined __digital__ && defined __unix__)
|
#if (defined __digital__ && defined __unix__)
|
||||||
#include <standards.h>
|
|
||||||
#define HAVE_STANDARDS_H
|
|
||||||
#include <inttypes.h>
|
|
||||||
#define HAVE_INTTYPES_H
|
|
||||||
#define PRIu32 "u"
|
|
||||||
|
|
||||||
|
# include <standards.h>
|
||||||
|
# define HAVE_STANDARDS_H
|
||||||
|
# include <inttypes.h>
|
||||||
|
# define HAVE_INTTYPES_H
|
||||||
|
# define PRIu32 "u"
|
||||||
/* use legacy setpgrp(pid_t,pid_t) for now. move to platform.c */
|
/* use legacy setpgrp(pid_t,pid_t) for now. move to platform.c */
|
||||||
#define bb_setpgrp() do { pid_t __me = getpid(); setpgrp(__me,__me); } while (0)
|
# define bb_setpgrp() do { pid_t __me = getpid(); setpgrp(__me,__me); } while (0)
|
||||||
|
|
||||||
#if !defined ADJ_OFFSET_SINGLESHOT && defined MOD_CLKA && defined MOD_OFFSET
|
# if !defined ADJ_OFFSET_SINGLESHOT && defined MOD_CLKA && defined MOD_OFFSET
|
||||||
#define ADJ_OFFSET_SINGLESHOT (MOD_CLKA | MOD_OFFSET)
|
# define ADJ_OFFSET_SINGLESHOT (MOD_CLKA | MOD_OFFSET)
|
||||||
#endif
|
# endif
|
||||||
#if !defined ADJ_FREQUENCY && defined MOD_FREQUENCY
|
# if !defined ADJ_FREQUENCY && defined MOD_FREQUENCY
|
||||||
#define ADJ_FREQUENCY MOD_FREQUENCY
|
# define ADJ_FREQUENCY MOD_FREQUENCY
|
||||||
#endif
|
# endif
|
||||||
#if !defined ADJ_TIMECONST && defined MOD_TIMECONST
|
# if !defined ADJ_TIMECONST && defined MOD_TIMECONST
|
||||||
#define ADJ_TIMECONST MOD_TIMECONST
|
# define ADJ_TIMECONST MOD_TIMECONST
|
||||||
#endif
|
# endif
|
||||||
#if !defined ADJ_TICK && defined MOD_CLKB
|
# if !defined ADJ_TICK && defined MOD_CLKB
|
||||||
#define ADJ_TICK MOD_CLKB
|
# define ADJ_TICK MOD_CLKB
|
||||||
#endif
|
# endif
|
||||||
|
|
||||||
|
#else /* !__digital__ */
|
||||||
|
|
||||||
|
# define bb_setpgrp() setpgrp()
|
||||||
|
|
||||||
#else
|
|
||||||
#define bb_setpgrp() setpgrp()
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(__linux__)
|
#if defined(__linux__)
|
||||||
|
@ -780,7 +780,7 @@ ForkJob(const char *user, CronLine *line, int mailFd,
|
|||||||
dup2(1, 2);
|
dup2(1, 2);
|
||||||
}
|
}
|
||||||
/* "standard" cron puts tasks in separate process groups */
|
/* "standard" cron puts tasks in separate process groups */
|
||||||
setpgrp();
|
bb_setpgrp();
|
||||||
execlp(prog, prog, cmd, arg, NULL);
|
execlp(prog, prog, cmd, arg, NULL);
|
||||||
crondlog(ERR20 "can't exec, user %s cmd %s %s %s", user, prog, cmd, arg);
|
crondlog(ERR20 "can't exec, user %s cmd %s %s %s", user, prog, cmd, arg);
|
||||||
if (mail_filename) {
|
if (mail_filename) {
|
||||||
@ -917,7 +917,7 @@ static void RunJob(const char *user, CronLine *line)
|
|||||||
crondlog(LVL5 "child running %s", DEFAULT_SHELL);
|
crondlog(LVL5 "child running %s", DEFAULT_SHELL);
|
||||||
}
|
}
|
||||||
/* "standard" cron puts tasks in separate process groups */
|
/* "standard" cron puts tasks in separate process groups */
|
||||||
setpgrp();
|
bb_setpgrp();
|
||||||
execl(DEFAULT_SHELL, DEFAULT_SHELL, "-c", line->cl_Shell, NULL);
|
execl(DEFAULT_SHELL, DEFAULT_SHELL, "-c", line->cl_Shell, NULL);
|
||||||
crondlog(ERR20 "can't exec, user %s cmd %s %s %s", user,
|
crondlog(ERR20 "can't exec, user %s cmd %s %s %s", user,
|
||||||
DEFAULT_SHELL, "-c", line->cl_Shell);
|
DEFAULT_SHELL, "-c", line->cl_Shell);
|
||||||
|
Loading…
Reference in New Issue
Block a user