Lines Matching defs:cfile

207 static void parse_line(char *line, CRONFILE *cfile)
229 if (TT.flagd) loginfo(LOG_LEVEL5, "user:%s entry:%s", cfile->username, line);
280 dlist_add_nomalloc((struct double_list **)&cfile->job, (struct double_list *)j);
287 if (!strcmp(name, "MAILTO")) cfile->mailto = xstrdup(val);
292 dlist_add_nomalloc((struct double_list **)&cfile->var, (struct double_list *)v);
374 CRONFILE *cfile;
389 cfile = xzalloc(sizeof(CRONFILE));
390 cfile->username = xstrdup(entry->d_name);
393 parse_line(line, cfile);
399 if (!cfile->job) {
400 VAR *v, *vnode = (VAR *)cfile->var;
402 free(cfile->username);
403 if (cfile->mailto) free(cfile->mailto);
410 free(cfile);
412 if (!cfile->mailto) cfile->mailto = cfile->username;
414 (struct double_list *)cfile);
425 static void do_fork(CRONFILE *cfile, JOB *job, int fd, char *prog)
430 VAR *v, *vstart = (VAR *)cfile->var;
431 struct passwd *pwd = getpwnam(cfile->username);
433 if (!pwd) loginfo(LOG_LEVEL9, "can't get uid for %s", cfile->username);
462 loginfo(LOG_ERROR, "can't execute '%s' for user %s", file, cfile->username);
477 static void sendmail(CRONFILE *cfile, JOB *job)
490 cfile->username, (int)pid);
502 do_fork(cfile, job, mailfd, "sendmail");
508 CRONFILE *cfile = gclist;
512 while (cfile) {
513 job = jstart = (JOB *)cfile->job;
521 sendmail(cfile, job);
533 if ((cfile = cfile->next) == gclist) break;
541 CRONFILE *cfile = gclist;
544 while (cfile) {
545 job = jstart = (JOB *)cfile->job;
554 cfile->username, getpid());
558 "discarding output", toybuf, cfile->username);
560 dprintf(mailfd, "To: %s\nSubject: cron: %s\n\n", cfile->mailto, job->cmd);
563 do_fork(cfile, job, mailfd, NULL);
568 cfile->username, (int)job->pid);
574 cfile->username, job->pid, job->cmd);
581 if ((cfile = cfile->next) == gclist) break;
592 CRONFILE *cfile = gclist;
598 while (cfile) {
599 if (TT.flagd) loginfo(LOG_LEVEL5, "file %s:", cfile->username);
600 if (cfile->invalid) goto NEXT_CRONFILE;
601 job = jstart = (JOB *)cfile->job;
613 cfile->username, job->cmd);
623 if ((cfile = cfile->next) == gclist) break;