Diff for /suX/src/sux.c between versions 1.1.1.1.2.2 and 1.1.1.1.2.3

version 1.1.1.1.2.2, 2011/05/20 16:26:53 version 1.1.1.1.2.3, 2011/05/20 16:38:53
Line 23  Log(int lvl, const char *fmt, ...) Line 23  Log(int lvl, const char *fmt, ...)
         if (lvl <= Verbose) {          if (lvl <= Verbose) {
                 va_start(lst, fmt);                  va_start(lst, fmt);
                 vfprintf(lf, fmt, lst);                  vfprintf(lf, fmt, lst);
                   fprintf(lf, "\n");
                 vsyslog(LOG_WARNING, fmt, lst);                  vsyslog(LOG_WARNING, fmt, lst);
                 va_end(lst);                  va_end(lst);
         }          }
Line 35  Err(const char *fmt, ...) Line 36  Err(const char *fmt, ...)
   
         va_start(lst, fmt);          va_start(lst, fmt);
         vfprintf(lf, fmt, lst);          vfprintf(lf, fmt, lst);
           fprintf(lf, "\n");
         vsyslog(LOG_ERR, fmt, lst);          vsyslog(LOG_ERR, fmt, lst);
         va_end(lst);          va_end(lst);
 }  }
Line 47  initProg() Line 49  initProg()
         proc.proc_prio = getpriority(PRIO_PROCESS, 0);          proc.proc_prio = getpriority(PRIO_PROCESS, 0);
         getcwd(proc.proc_dir, sizeof proc.proc_dir);          getcwd(proc.proc_dir, sizeof proc.proc_dir);
   
        lf = stdout;        lf = fopen(DEFAULT_LOG, "a");
         if (!lf)
                 lf = stdout;
   
         openlog(PACKAGE_NAME, LOG_CONS | LOG_PID | LOG_NDELAY | LOG_PERROR, LOG_USER);          openlog(PACKAGE_NAME, LOG_CONS | LOG_PID | LOG_NDELAY | LOG_PERROR, LOG_USER);
 }  }
Line 257  Run(char **argv) Line 261  Run(char **argv)
 int  int
 main(int argc, char **argv)  main(int argc, char **argv)
 {  {
        char ch, *str, szCfg[MAXPATHLEN], szLog[MAXPATHLEN], flg = 0;        char ch, *str, szCfg[MAXPATHLEN], flg = 0;
         struct passwd *pass;          struct passwd *pass;
         struct group *grp;          struct group *grp;
         FILE *f;          FILE *f;
   
         initProg();          initProg();
         strlcpy(szCfg, DEFAULT_CONFIG, sizeof szCfg);          strlcpy(szCfg, DEFAULT_CONFIG, sizeof szCfg);
         strlcpy(szLog, DEFAULT_LOG, sizeof szLog);  
   
         while ((ch = getopt(argc, argv, "hvc:u:g:p:d:l:")) != -1)          while ((ch = getopt(argc, argv, "hvc:u:g:p:d:l:")) != -1)
                 switch (ch) {                  switch (ch) {
                         case 'l':                          case 'l':
                                strlcpy(szLog, optarg, sizeof szLog);                                f = fopen(optarg, "a");
                                f = fopen(szLog, "a+"); 
                                 if (!f) {                                  if (!f) {
                                         Err("Error:: logfile #%d - %s", errno, strerror(errno));                                          Err("Error:: logfile #%d - %s", errno, strerror(errno));
                                         return 1;                                          return 1;
                                 } else                                  } else
                                        if (flg & 16 && fileno(lf) > 2)                                        if (fileno(lf) > 2)
                                                 fclose(lf);                                                  fclose(lf);
                                 lf = f;                                  lf = f;
                                 flg |= 16;  
                                 break;                                  break;
                         case 'd':                          case 'd':
                                 strlcpy(proc.proc_dir, optarg, sizeof proc.proc_dir);                                  strlcpy(proc.proc_dir, optarg, sizeof proc.proc_dir);
Line 317  main(int argc, char **argv) Line 318  main(int argc, char **argv)
                         case 'h':                          case 'h':
                         default:                          default:
                                 Usage();                                  Usage();
                                if (flg & 16)                                if (fileno(lf) > 2)
                                         fclose(lf);                                          fclose(lf);
                                 return 1;                                  return 1;
                 }                  }
Line 326  main(int argc, char **argv) Line 327  main(int argc, char **argv)
         if (!argc) {          if (!argc) {
                 if (!(str = getenv("PATH_TRANSLATED"))) {                  if (!(str = getenv("PATH_TRANSLATED"))) {
                         Usage();                          Usage();
                        if (flg & 16)                        if (fileno(lf) > 2)
                                 fclose(lf);                                  fclose(lf);
                         return 1;                          return 1;
                 } else                  } else
Line 336  main(int argc, char **argv) Line 337  main(int argc, char **argv)
         Log(2, "Try to load config %s", szCfg);          Log(2, "Try to load config %s", szCfg);
         if (LoadConfig(szCfg, &cfg)) {          if (LoadConfig(szCfg, &cfg)) {
                 Err("Error:: can`t load config #%d - %s\n", cfg_GetErrno(), cfg_GetError());                  Err("Error:: can`t load config #%d - %s\n", cfg_GetErrno(), cfg_GetError());
                if (flg & 16)                if (fileno(lf) > 2)
                         fclose(lf);                          fclose(lf);
                 return 2;                  return 2;
         } else          } else
                 if (LoadCfgData(flg) == -1) {                  if (LoadCfgData(flg) == -1) {
                         UnloadConfig(&cfg);                          UnloadConfig(&cfg);
                        if (flg & 16)                        if (fileno(lf) > 2)
                                 fclose(lf);                                  fclose(lf);
                         closelog();                          closelog();
                         return 3;                          return 3;
Line 350  main(int argc, char **argv) Line 351  main(int argc, char **argv)
         UnloadConfig(&cfg);          UnloadConfig(&cfg);
   
         if (Run(argv) == -1) {          if (Run(argv) == -1) {
                if (flg & 16)                if (fileno(lf) > 2)
                         fclose(lf);                          fclose(lf);
                 closelog();                  closelog();
                 return 4;                  return 4;
         }          }
   
        if (flg & 16)        if (fileno(lf) > 2)
                 fclose(lf);                  fclose(lf);
         closelog();          closelog();
         return 0;          return 0;

Removed from v.1.1.1.1.2.2  
changed lines
  Added in v.1.1.1.1.2.3


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>