e 500 src/cron.c entry *e; e 518 src/cron.c for (e = u->crontab; e != NULL; e = e->next) { e 519 src/cron.c if (e->flags & WHEN_REBOOT) e 520 src/cron.c job_add(e, u); e 531 src/cron.c entry *e; e 567 src/cron.c for (e = u->crontab; e != NULL; e = e->next) { e 568 src/cron.c time_t virtualSecond = (time_t)(vtime - e->delay) * (time_t)SECONDS_PER_MINUTE; e 570 src/cron.c job_tz = env_get("CRON_TZ", e->envp); e 574 src/cron.c if (bit_test(e->minute, minute) && e 575 src/cron.c bit_test(e->hour, hour) && e 576 src/cron.c bit_test(e->month, month) && e 577 src/cron.c (((e->flags & DOM_STAR) || (e->flags & DOW_STAR)) e 578 src/cron.c ? (bit_test(e->dow, dow) && bit_test(e->dom, dom)) e 579 src/cron.c : (bit_test(e->dow, dow) || bit_test(e->dom, dom)) e 589 src/cron.c !(e->flags & (MIN_STAR | HR_STAR))) || e 590 src/cron.c (doWild && (e->flags & (MIN_STAR | HR_STAR)))) e 591 src/cron.c job_add(e, u); /*will add job, if it isn't in queue already for NOW. */ e 48 src/cronnext.c void do_command(entry *e, user *u) { e 50 src/cronnext.c (void)e; e 99 src/cronnext.c void printentry(char *indent, entry *e, time_t next) { e 100 src/cronnext.c printf("%s - user: %s\n", indent, e->pwd->pw_name); e 101 src/cronnext.c printf("%s cmd: \"%s\"\n", indent, e->cmd); e 102 src/cronnext.c printf("%s flags: 0x%02X\n", indent, e->flags); e 103 src/cronnext.c printflags(indent, e->flags); e 104 src/cronnext.c printf("%s delay: %d\n", indent, e->delay); e 136 src/cronnext.c int matchday(entry *e, time_t time) { e 141 src/cronnext.c if (e->flags & DOW_STAR) e 142 src/cronnext.c return bit_test(e->dom, current.tm_mday - 1); e 143 src/cronnext.c if (e->flags & DOM_STAR) e 144 src/cronnext.c return bit_test(e->dow, current.tm_wday); e 145 src/cronnext.c return bit_test(e->dom, current.tm_mday - 1) || e 146 src/cronnext.c bit_test(e->dow, current.tm_wday); e 152 src/cronnext.c time_t nextmatch(entry *e, time_t start, time_t end) { e 160 src/cronnext.c if (!bit_test(e->month, current.tm_mon)) { e 174 src/cronnext.c if (!matchday(e, time) && !matchday(e, time + 24 * 60 * 60)) { e 183 src/cronnext.c if (bit_test(e->month, current.tm_mon) && e 184 src/cronnext.c matchday(e, time) && e 185 src/cronnext.c bit_test(e->hour, current.tm_hour) && e 186 src/cronnext.c bit_test(e->minute, current.tm_min) e 222 src/cronnext.c entry *e; e 245 src/cronnext.c for (e = u->crontab; e; e = e->next) e 246 src/cronnext.c for (next = nextmatch(e, start, end); e 248 src/cronnext.c next = nextmatch(e, next + 60, end)) { e 254 src/cronnext.c printentry(indent, e, next); e 758 src/crontab.c entry *e; e 851 src/crontab.c e = load_entry(tmp, check_error, pw, envp); e 852 src/crontab.c if (e) e 853 src/crontab.c free_entry(e); e 46 src/do_command.c void do_command(entry * e, user * u) { e 52 src/do_command.c (long) pid, e->cmd, u->name, e 53 src/do_command.c (long) e->pwd->pw_uid, (long) e->pwd->pw_gid)); e 71 src/do_command.c if (cron_set_job_security_context(e, u, &jobenv) != 0) { e 74 src/do_command.c ev = child_process(e, jobenv); e 89 src/do_command.c static int child_process(entry * e, char **jobenv) { e 111 src/do_command.c Debug(DPROC, ("[%ld] child_process('%s')\n", (long) getpid(), e->cmd)); e 126 src/do_command.c usernm = e->pwd->pw_name; e 128 src/do_command.c mailfrom = env_get("MAILFROM", e->envp); e 156 src/do_command.c for (input_data = p = e->cmd; e 194 src/do_command.c if ((e->flags & DONT_LOG) == 0) { e 195 src/do_command.c char *x = mkprints((u_char *) e->cmd, strlen(e->cmd)); e 201 src/do_command.c if (cron_change_user_permanently(e->pwd, env_get("HOME", jobenv)) < 0) e 251 src/do_command.c fprintf(stderr, "\tcmd='%s' shell='%s'\n", e->cmd, shell); e 255 src/do_command.c execle(shell, shell, "-c", e->cmd, (char *) 0, jobenv); e 312 src/do_command.c if (cron_change_user_permanently(e->pwd, env_get("HOME", jobenv)) < 0) e 409 src/do_command.c mailfrom = e->pwd->pw_name; e 439 src/do_command.c if (!(mail = cron_popen(mailcmd, "w", e->pwd, jobenv))) { e 447 src/do_command.c usernm, first_word(hostname, "."), e->cmd); e 70 src/entry.c void free_entry(entry * e) { e 71 src/entry.c free(e->cmd); e 72 src/entry.c free(e->pwd); e 73 src/entry.c env_free(e->envp); e 74 src/entry.c free(e); e 96 src/entry.c entry *e; e 117 src/entry.c e = (entry *) calloc(sizeof (entry), sizeof (char)); e 127 src/entry.c e->flags |= DONT_LOG; e 135 src/entry.c free(e); e 155 src/entry.c e->flags |= WHEN_REBOOT; e 158 src/entry.c bit_set(e->minute, 0); e 159 src/entry.c bit_set(e->hour, 0); e 160 src/entry.c bit_set(e->dom, 0); e 161 src/entry.c bit_set(e->month, 0); e 162 src/entry.c bit_nset(e->dow, 0, LAST_DOW - FIRST_DOW); e 163 src/entry.c e->flags |= DOW_STAR; e 166 src/entry.c bit_set(e->minute, 0); e 167 src/entry.c bit_set(e->hour, 0); e 168 src/entry.c bit_set(e->dom, 0); e 169 src/entry.c bit_nset(e->month, 0, LAST_MONTH - FIRST_MONTH); e 170 src/entry.c bit_nset(e->dow, 0, LAST_DOW - FIRST_DOW); e 171 src/entry.c e->flags |= DOW_STAR; e 174 src/entry.c bit_set(e->minute, 0); e 175 src/entry.c bit_set(e->hour, 0); e 176 src/entry.c bit_nset(e->dom, 0, LAST_DOM - FIRST_DOM); e 177 src/entry.c bit_nset(e->month, 0, LAST_MONTH - FIRST_MONTH); e 178 src/entry.c bit_set(e->dow, 0); e 179 src/entry.c e->flags |= DOW_STAR; e 182 src/entry.c bit_set(e->minute, 0); e 183 src/entry.c bit_set(e->hour, 0); e 184 src/entry.c bit_nset(e->dom, 0, LAST_DOM - FIRST_DOM); e 185 src/entry.c bit_nset(e->month, 0, LAST_MONTH - FIRST_MONTH); e 186 src/entry.c bit_nset(e->dow, 0, LAST_DOW - FIRST_DOW); e 189 src/entry.c bit_set(e->minute, 0); e 190 src/entry.c bit_nset(e->hour, 0, LAST_HOUR - FIRST_HOUR); e 191 src/entry.c bit_nset(e->dom, 0, LAST_DOM - FIRST_DOM); e 192 src/entry.c bit_nset(e->month, 0, LAST_MONTH - FIRST_MONTH); e 193 src/entry.c bit_nset(e->dow, 0, LAST_DOW - FIRST_DOW); e 194 src/entry.c e->flags |= HR_STAR; e 213 src/entry.c e->flags |= MIN_STAR; e 214 src/entry.c ch = get_list(e->minute, FIRST_MINUTE, LAST_MINUTE, PPC_NULL, ch, file); e 224 src/entry.c e->flags |= HR_STAR; e 225 src/entry.c ch = get_list(e->hour, FIRST_HOUR, LAST_HOUR, PPC_NULL, ch, file); e 235 src/entry.c e->flags |= DOM_STAR; e 236 src/entry.c ch = get_list(e->dom, FIRST_DOM, LAST_DOM, PPC_NULL, ch, file); e 245 src/entry.c ch = get_list(e->month, FIRST_MONTH, LAST_MONTH, MonthNames, ch, file); e 255 src/entry.c e->flags |= DOW_STAR; e 256 src/entry.c ch = get_list(e->dow, FIRST_DOW, LAST_DOW, DowNames, ch, file); e 264 src/entry.c if (bit_test(e->dow, 0) || bit_test(e->dow, 7)) { e 265 src/entry.c bit_set(e->dow, 0); e 266 src/entry.c bit_set(e->dow, 7); e 303 src/entry.c if ((e->pwd = pw_dup(pw)) == NULL) { e 307 src/entry.c memset(e->pwd->pw_passwd, 0, strlen(e->pwd->pw_passwd)); e 319 src/entry.c e->delay = (int)((double)val * RandomScale); e 326 src/entry.c if ((e->envp = env_copy(envp)) == NULL) { e 330 src/entry.c if (!env_get("SHELL", e->envp)) { e 332 src/entry.c if ((tenvp = env_set(e->envp, envstr)) == NULL) { e 336 src/entry.c e->envp = tenvp; e 341 src/entry.c if ((tenvp = env_update_home(e->envp, pw->pw_dir)) == NULL) { e 345 src/entry.c e->envp = tenvp; e 348 src/entry.c if (!env_get("PATH", e->envp)) { e 360 src/entry.c if ((tenvp = env_set(e->envp, envstr)) == NULL) { e 364 src/entry.c e->envp = tenvp; e 371 src/entry.c if ((tenvp = env_set(e->envp, envstr)) == NULL) { e 375 src/entry.c e->envp = tenvp; e 381 src/entry.c if ((tenvp = env_set(e->envp, envstr)) == NULL) { e 385 src/entry.c e->envp = tenvp; e 408 src/entry.c if ((e->cmd = strdup(cmd)) == NULL) { e 417 src/entry.c return (e); e 420 src/entry.c if (e->envp) e 421 src/entry.c env_free(e->envp); e 422 src/entry.c free(e->pwd); e 423 src/entry.c free(e->cmd); e 424 src/entry.c free(e); e 105 src/funcs.h int cron_set_job_security_context( entry *e, user *u, char ***jobenvp ); e 36 src/job.c entry *e; e 42 src/job.c void job_add(entry * e, user * u) { e 50 src/job.c if (j->e == e && j->u == u) e 53 src/job.c uname = e->pwd->pw_name; e 59 src/job.c e->pwd->pw_name, (long) temppwd->pw_uid, e 60 src/job.c (long) temppwd->pw_gid, e->cmd)); e 65 src/job.c free(e->pwd); e 66 src/job.c e->pwd = newpwd; e 68 src/job.c if ((tenvp = env_update_home(e->envp, e->pwd->pw_dir)) == NULL) { e 72 src/job.c e->envp = tenvp; e 84 src/job.c j->e = e; e 100 src/job.c do_command(j->e, j->u); e 112 src/security.c int cron_set_job_security_context(entry *e, user *u ATTRIBUTE_UNUSED, e 119 src/security.c if ((e->flags & MIN_STAR) == MIN_STAR) { e 129 src/security.c if ((!u->system || e->pwd->pw_uid != 0) && (ret = cron_start_pam(e->pwd)) != 0) { e 130 src/security.c log_it(e->pwd->pw_name, getpid(), "FAILED to authorize user with PAM", e 142 src/security.c if (cron_get_job_range(u, &ucontext, e->envp) < OK) { e 143 src/security.c log_it(e->pwd->pw_name, getpid(), "ERROR", e 149 src/security.c log_it(e->pwd->pw_name, getpid(), "ERROR", e 159 src/security.c if (pamh != NULL && (ret = cron_open_pam_session(e->pwd)) != 0) { e 160 src/security.c log_it(e->pwd->pw_name, getpid(), e 166 src/security.c if (cron_change_groups(e->pwd) != 0) { e 170 src/security.c *jobenv = build_env(e->envp); e 188 src/security.c log_it(e->pwd->pw_name, getpid(), "INFO", buf, 0); e 45 src/user.c entry *e, *ne; e 53 src/user.c for (e = u->crontab; e != NULL; e = ne) { e 54 src/user.c ne = e->next; e 55 src/user.c free_entry(e); e 69 src/user.c entry *e; e 122 src/user.c e = load_entry(file, log_error, pw, envp); e 123 src/user.c if (e) { e 124 src/user.c e->next = u->crontab; e 125 src/user.c u->crontab = e;