1: #define MAINLINE
   2: #include "parms.h"
   3: #include "structs.h"
   4: 
   5: #ifdef  RCSIDENT
   6: static char rcsid[] = "$Header: nfarchive.c,v 1.7 85/01/18 15:25:22 notes Rel $";
   7: #endif	RCSIDENT
   8: 
   9: /*
  10:  *	nfarchive - will archive the specified notesfiles. All notes that
  11:  *	have not been modofied in the last n days (default 14, settable
  12:  *	by option on command line) will be archived and placed in
  13:  *	the archive directory.
  14:  *
  15:  *	Ray Essick			March 1982
  16:  */
  17: 
  18: int     deleteonly;
  19: int     dirmsgflag;                 /* key on dir msg */
  20: int     daysold = ARCHTIME;             /* eligibility age */
  21: int     worksetsize;                    /* minimum to keep */
  22: 
  23: archone (nfname)
  24: char   *nfname;
  25: {
  26:     return archiver (nfname, daysold, worksetsize, deleteonly, dirmsgflag);
  27: }
  28: 
  29: 
  30: main (argc, argv)
  31: char  **argv;
  32: {
  33:     struct nflist_f *nfptr;
  34:     int     i;
  35: 
  36:     startup (argc, argv);               /* common init */
  37: 
  38:     if (argc == 1)
  39:     {
  40:     printf ("Usage: %s [-d] [-m+ or -m-] [-#] [-w#] [-f file] topic1 [topic2 ...]\n", argv[0]);
  41:     exit (BAD);
  42:     }
  43: 
  44:     if (globuid != Notesuid)
  45:     {
  46:     printf ("Sorry, only notes 'owner' can archive notes\n");
  47:     exit (BAD);
  48:     }
  49: 
  50:     deleteonly = 0;                 /* default to archiving */
  51:     dirmsgflag = DIRNOCARE;             /* don't consider dirmessage */
  52:     daysold = ARCHTIME;                 /* default threshold */
  53:     worksetsize = WORKSETSIZE;              /* default to leave */
  54: 
  55:     for (i = 1; i < argc; i++)
  56:     {
  57:     if (argv[i][0] == '-')
  58:         switch (argv[i][1])
  59:         {
  60:         case 'd':               /* delete only, no archiving */
  61:             deleteonly = 1;
  62:             break;
  63: 
  64:         case 'm':               /* director message status */
  65:             if (argv[i][2] == '-')
  66:             dirmsgflag = DIROFF;        /* delete when off */
  67:             else
  68:             dirmsgflag = DIRON;     /* only when on */
  69:                             /* also if just "-m" */
  70:             break;
  71: 
  72:         case 'w':               /* change workset size */
  73:             if (argv[i][2] == '\0')
  74:             worksetsize = WORKSETSIZE;  /* default */
  75:             else
  76:             worksetsize = atoi (&argv[i][2]);/* specified */
  77:             break;
  78: 
  79:         case '0':               /* allow 0 days */
  80:         case '1':               /* change days old parameter */
  81:         case '2':
  82:         case '3':
  83:         case '4':
  84:         case '5':
  85:         case '6':
  86:         case '7':
  87:         case '8':
  88:         case '9':
  89:             daysold = atoi (&argv[i][1]);
  90:             break;
  91: 
  92:         case 'f':               /* process a file */
  93:             if (++i == argc)            /* no filename */
  94:             {
  95:             fprintf (stderr, "-f must be followed by filename\n");
  96:             exit (BAD);
  97:             }
  98:             readrc (argv[i]);
  99:             break;
 100: 
 101:         default:
 102:             printf ("Bad switch: %c\n", argv[i][1]);
 103:             exit (BAD);
 104:         }
 105:     else
 106:         expand (argv[i]);               /* load it */
 107:     }
 108: 
 109: /*
 110:  *	now process things
 111:  */
 112: 
 113:     while ((nfptr = nextgroup ()) != (struct nflist_f *) NULL)
 114:     archone (nfptr -> nf_name);
 115: 
 116:     exit (GOOD);
 117: }

Defined functions

archone defined in line 23; used 1 times
main defined in line 30; never used

Defined variables

daysold defined in line 20; used 3 times
deleteonly defined in line 18; used 3 times
dirmsgflag defined in line 19; used 4 times
rcsid defined in line 6; never used
worksetsize defined in line 21; used 4 times

Defined macros

MAINLINE defined in line 1; never used
Last modified: 1985-01-19
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 2137
Valid CSS Valid XHTML 1.0 Strict