00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037 #include "../pub/getopt.h"
00038 #include "cf.defs.h"
00039
00040 #define PUBLIC
00041 #define PRIVATE
00042 #define PROTECTED
00043
00044
00045
00046
00047
00048
00049
00050
00051 char VBUFF[bufsize];
00052 char OUTPUT[bufsize*2];
00053 int AUTHENTICATED = false;
00054 int CHECKSUMUPDATES = false;
00055
00056 char *CHECKSUMDB;
00057 char PADCHAR = ' ';
00058 char CONTEXTID[32];
00059
00060 char CFPUBKEYFILE[bufsize];
00061 char CFPRIVKEYFILE[bufsize];
00062 char AVDB[1024];
00063
00064 RSA *PRIVKEY = NULL, *PUBKEY = NULL;
00065
00066
00067
00068
00069
00070
00071
00072
00073 PROTECTED struct Auth *VADMIT = NULL;
00074 PROTECTED struct Auth *VADMITTOP = NULL;
00075 PROTECTED struct Auth *VDENY = NULL;
00076 PROTECTED struct Auth *VDENYTOP = NULL;
00077
00078
00079
00080
00081
00082
00083
00084
00085 PUBLIC char *COPYRIGHT = "Free Software Foundation 1994-\nDonated by Mark Burgess, Faculty of Engineering,\nOslo University College, 0254 Oslo, Norway";
00086
00087 PRIVATE char *VPRECONFIG = "cf.preconf";
00088 PRIVATE char *VRCFILE = "cfrc";
00089
00090 PUBLIC char *VSETUIDLOG = NULL;
00091 PUBLIC char *VARCH = NULL;
00092 PUBLIC char *VARCH2 = NULL;
00093 PUBLIC char *VREPOSITORY = NULL;
00094 PUBLIC char *COMPRESSCOMMAND = NULL;
00095
00096 PUBLIC char VPREFIX[maxvarsize];
00097
00098 PUBLIC char VINPUTFILE[bufsize];
00099 PUBLIC char VCURRENTFILE[bufsize];
00100 PUBLIC char VLOGFILE[bufsize];
00101 PUBLIC char ALLCLASSBUFFER[bufsize];
00102 PUBLIC char ELSECLASSBUFFER[bufsize];
00103 PUBLIC char FAILOVERBUFFER[bufsize];
00104 PUBLIC char CHROOT[bufsize];
00105
00106 PUBLIC char EDITBUFF[bufsize];
00107
00108 PUBLIC short DEBUG = false;
00109 PUBLIC short D1 = false;
00110 PUBLIC short D2 = false;
00111 PUBLIC short D3 = false;
00112 PUBLIC short VERBOSE = false;
00113 PUBLIC short INFORM = false;
00114 PUBLIC short CHECK = false;
00115 PUBLIC short EXCLAIM = true;
00116 PUBLIC short COMPATIBILITY_MODE = false;
00117 PUBLIC short LOGGING = false;
00118 PUBLIC short INFORM_save;
00119 PUBLIC short LOGGING_save;
00120 PUBLIC short CFPARANOID = false;
00121 PUBLIC short SHOWACTIONS = false;
00122 PUBLIC short LOGTIDYHOMEFILES = true;
00123 PUBLIC short UPDATEONLY = false;
00124
00125 PUBLIC char FORK = 'n';
00126
00127 PRIVATE int RPCTIMEOUT = 60;
00128 PROTECTED int SENSIBLEFILECOUNT = 2;
00129 PROTECTED int SENSIBLEFSSIZE = 1000;
00130
00131 PUBLIC time_t CFSTARTTIME;
00132 PUBLIC time_t CFINITSTARTTIME;
00133
00134 PUBLIC enum classes VSYSTEMHARDCLASS;
00135
00136 PUBLIC struct Item VDEFAULTBINSERVER =
00137 {
00138 'n',
00139 NULL,
00140 NULL,
00141 NULL
00142 };
00143
00144 PUBLIC struct utsname VSYSNAME;
00145
00146 PUBLIC mode_t DEFAULTMODE = (mode_t) 0755;
00147 PUBLIC mode_t DEFAULTSYSTEMMODE = (mode_t) 0644;
00148
00149 PROTECTED int VIFELAPSED = 1;
00150 PROTECTED int VEXPIREAFTER = 120;
00151 PROTECTED int VDEFAULTIFELAPSED = 1;
00152 PROTECTED int VDEFAULTEXPIREAFTER = 120;
00153
00154 PUBLIC struct cfagent_connection *CONN = NULL;
00155 PUBLIC struct Item *VEXCLUDECACHE = NULL;
00156
00157 PUBLIC struct cfObject *OBJECTLIST = NULL;
00158
00159
00160
00161
00162
00163 PROTECTED struct Item *VTIMEZONE = NULL;
00164 PROTECTED struct Item *VMOUNTLIST = NULL;
00165 PROTECTED struct Item *VEXCLUDECOPY = NULL;
00166 PROTECTED struct Item *VAUTODEFINE = NULL;
00167 PROTECTED struct Item *VSINGLECOPY = NULL;
00168 PROTECTED struct Item *VEXCLUDELINK = NULL;
00169 PROTECTED struct Item *VCOPYLINKS = NULL;
00170 PROTECTED struct Item *VLINKCOPIES = NULL;
00171 PROTECTED struct Item *VEXCLUDEPARSE = NULL;
00172 PROTECTED struct Item *VCPLNPARSE = NULL;
00173 PROTECTED struct Item *VINCLUDEPARSE = NULL;
00174 PROTECTED struct Item *VIGNOREPARSE = NULL;
00175 PROTECTED struct Item *VSERVERLIST = NULL;
00176 PROTECTED struct Item *VREDEFINES = NULL;
00177
00178 PROTECTED struct Item *VHEAP = NULL;
00179 PROTECTED struct Item *VNEGHEAP = NULL;
00180
00181
00182 PROTECTED struct Mountables *VMOUNTABLES = NULL;
00183 PROTECTED struct Mountables *VMOUNTABLESTOP = NULL;
00184
00185 PUBLIC struct cfObject *VOBJTOP = NULL;
00186 PUBLIC struct cfObject *VOBJ = NULL;
00187
00188 PROTECTED struct Item *VALERTS = NULL;
00189 PROTECTED struct Item *VMOUNTED = NULL;
00190 PROTECTED struct Tidy *VTIDY = NULL;
00191 PROTECTED struct Tidy *VTIDYTOP = NULL;
00192 PROTECTED struct Item *VPROCESSES = NULL;
00193 PROTECTED struct Disk *VREQUIRED = NULL;
00194 PROTECTED struct Disk *VREQUIREDTOP = NULL;
00195 PROTECTED struct ShellComm *VSCRIPT = NULL;
00196 PROTECTED struct ShellComm *VSCRIPTTOP = NULL;
00197 PROTECTED struct Interface *VIFLIST = NULL;
00198 PROTECTED struct Interface *VIFLISTTOP = NULL;
00199 PROTECTED struct Mounted *MOUNTED = NULL;
00200 PROTECTED struct MiscMount *VMISCMOUNT = NULL;
00201 PROTECTED struct MiscMount *VMISCMOUNTTOP = NULL;
00202 PROTECTED struct Item *VBINSERVERS = &VDEFAULTBINSERVER;
00203 PROTECTED struct Link *VLINK = NULL;
00204 PROTECTED struct Link *VLINKTOP = NULL;
00205 PROTECTED struct File *VFILE = NULL;
00206 PROTECTED struct File *VFILETOP = NULL;
00207 PROTECTED struct Image *VIMAGE = NULL;
00208 PROTECTED struct Image *VIMAGETOP=NULL;
00209 PROTECTED struct Item *VHOMESERVERS = NULL;
00210 PROTECTED struct Item *VSETUIDLIST = NULL;
00211 PROTECTED struct Disable *VDISABLELIST = NULL;
00212 PROTECTED struct Disable *VDISABLETOP = NULL;
00213 PROTECTED struct File *VMAKEPATH = NULL;
00214 PROTECTED struct File *VMAKEPATHTOP = NULL;
00215 PROTECTED struct Link *VCHLINK = NULL;
00216 PROTECTED struct Link *VCHLINKTOP = NULL;
00217 PROTECTED struct Item *VIGNORE = NULL;
00218 PROTECTED struct Item *VHOMEPATLIST = NULL;
00219 PROTECTED struct Item *EXTENSIONLIST = NULL;
00220 PROTECTED struct Item *SUSPICIOUSLIST = NULL;
00221 PROTECTED struct Item *SCHEDULE = NULL;
00222 PROTECTED struct Item *SPOOLDIRLIST = NULL;
00223 PROTECTED struct Item *NONATTACKERLIST = NULL;
00224 PROTECTED struct Item *MULTICONNLIST = NULL;
00225 PROTECTED struct Item *TRUSTKEYLIST = NULL;
00226 PROTECTED struct Item *DHCPLIST = NULL;
00227 PROTECTED struct Item *ALLOWUSERLIST = NULL;
00228 PROTECTED struct Item *SKIPVERIFY = NULL;
00229 PROTECTED struct Item *ATTACKERLIST = NULL;
00230 PROTECTED struct Item *MOUNTOPTLIST = NULL;
00231 PROTECTED struct Item *VRESOLVE = NULL;
00232 PROTECTED struct Item *VIMPORT = NULL;
00233 PROTECTED struct Item *VACTIONSEQ=NULL;
00234 PROTECTED struct Item *VACCESSLIST=NULL;
00235 PROTECTED struct Item *VADDCLASSES=NULL;
00236 PROTECTED struct Item *VALLADDCLASSES=NULL;
00237 PROTECTED struct Item *VJUSTACTIONS=NULL;
00238 PROTECTED struct Item *VAVOIDACTIONS=NULL;
00239 PROTECTED struct UnMount *VUNMOUNT=NULL;
00240 PROTECTED struct UnMount *VUNMOUNTTOP=NULL;
00241 PROTECTED struct Edit *VEDITLIST=NULL;
00242 PROTECTED struct Edit *VEDITLISTTOP=NULL;
00243 PROTECTED struct Filter *VFILTERLIST=NULL;
00244 PROTECTED struct Filter *VFILTERLISTTOP=NULL;
00245 PROTECTED struct CFACL *VACLLIST=NULL;
00246 PROTECTED struct CFACL *VACLLISTTOP=NULL;
00247 PROTECTED struct Strategy *VSTRATEGYLIST=NULL;
00248 PROTECTED struct Strategy *VSTRATEGYLISTTOP=NULL;
00249
00250 PROTECTED struct Item *VCLASSDEFINE=NULL;
00251 PROTECTED struct Process *VPROCLIST=NULL;
00252 PROTECTED struct Process *VPROCTOP=NULL;
00253 PROTECTED struct Item *VREPOSLIST=NULL;
00254
00255
00256
00257
00258
00259
00260 PRIVATE char *VRESOURCES[] =
00261 {
00262 "mountcomm",
00263 "unmountcomm",
00264 "ethernet",
00265 "mountopts",
00266 "unused",
00267 "fstab",
00268 "maildir",
00269 "netstat",
00270 "pscomm",
00271 "psopts",
00272 NULL
00273 };
00274
00275
00276
00277
00278
00279
00280 PROTECTED char VMAILSERVER[bufsize];
00281
00282 PROTECTED char VFACULTY[maxvarsize];
00283 PROTECTED char VDOMAIN[maxvarsize];
00284 PROTECTED char VSYSADM[maxvarsize];
00285 PROTECTED char VNETMASK[maxvarsize];
00286 PROTECTED char VBROADCAST[maxvarsize];
00287 PROTECTED char VDEFAULTROUTE[maxvarsize];
00288 PROTECTED char VNFSTYPE[maxvarsize];
00289 PROTECTED char VFQNAME[maxvarsize];
00290 PROTECTED char VUQNAME[maxvarsize];
00291 PROTECTED char LOGFILE[maxvarsize];
00292
00293 PROTECTED char VYEAR[5];
00294 PROTECTED char VDAY[3];
00295 PROTECTED char VMONTH[4];
00296 PROTECTED char VHR[3];
00297 PROTECTED char VMINUTE[3];
00298 PROTECTED char VSEC[3];
00299
00300
00301
00302
00303
00304
00305
00306
00307
00308 PRIVATE struct option OPTIONS[] =
00309 {
00310 { "help",no_argument,0,'h' },
00311 { "debug",optional_argument,0,'d' },
00312 { "verbose",no_argument,0,'v' },
00313 { "traverse-links",no_argument,0,'l' },
00314 { "recon",no_argument,0,'n' },
00315 { "dry-run",no_argument,0,'n'},
00316 { "just-print",no_argument,0,'n'},
00317 { "no-ifconfig",no_argument,0,'i' },
00318 { "file",required_argument,0,'f' },
00319 { "parse-only",no_argument,0,'p' },
00320 { "no-mount",no_argument,0,'m' },
00321 { "no-check-files",no_argument,0,'c' },
00322 { "no-check-mounts",no_argument,0,'C' },
00323 { "no-tidy",no_argument,0,'t' },
00324 { "no-commands",no_argument,0,'s' },
00325 { "sysadm",no_argument,0,'a' },
00326 { "version",no_argument,0,'V' },
00327 { "define",required_argument,0,'D' },
00328 { "negate",required_argument,0,'N' },
00329 { "undefine",required_argument,0,'N' },
00330 { "delete-stale-links",no_argument,0,'L' },
00331 { "no-warn",no_argument,0,'w' },
00332 { "silent",no_argument,0,'S' },
00333 { "quiet",no_argument,0,'w' },
00334 { "no-preconf",no_argument,0,'x' },
00335 { "no-links",no_argument,0,'X'},
00336 { "no-edits",no_argument,0,'e'},
00337 { "enforce-links",no_argument,0,'E'},
00338 { "no-copy",no_argument,0,'k'},
00339 { "use-env",no_argument,0,'u'},
00340 { "no-processes",no_argument,0,'P'},
00341 { "underscore-classes",no_argument,0,'U'},
00342 { "no-hard-classes",no_argument,0,'H'},
00343 { "no-splay",no_argument,0,'q'},
00344 { "no-lock",no_argument,0,'K'},
00345 { "auto",no_argument,0,'A'},
00346 { "inform",no_argument,0,'I'},
00347 { "no-modules",no_argument,0,'M'},
00348 { "force-net-copy",no_argument,0,'b'},
00349 { "secure-input",no_argument,0,'Y'},
00350 { "zone-info",no_argument,0,'z'},
00351 { "update-only",no_argument,0,'B'},
00352 { "check-contradictions",no_argument,0,'g'},
00353 { "just",required_argument,0,'j'},
00354 { "avoid",required_argument,0,'o'},
00355 { NULL,0,0,0 }
00356 };
00357
00358
00359
00360
00361
00362
00363
00364 PRIVATE char *ACTIONTEXT[] =
00365 {
00366 "",
00367 "Control Defintions:",
00368 "Alerts:",
00369 "Groups:",
00370 "File Imaging:",
00371 "Resolve:",
00372 "Processes:",
00373 "Files:",
00374 "Tidy:",
00375 "Home Servers:",
00376 "Binary Servers:",
00377 "Mail Server:",
00378 "Required Filesystems",
00379 "Disks (Required)",
00380 "Reading Mountables",
00381 "Links:",
00382 "Import files:",
00383 "User Shell Commands:",
00384 "Disable Files:",
00385 "Make Directory Path:",
00386 "Ignore File Paths:",
00387 "Broadcast Mode:",
00388 "Default Packet Route:",
00389 "Miscellaneous Mountables:",
00390 "Edit Simple Text File:",
00391 "Unmount filesystems:",
00392 "Admit network access:",
00393 "Deny network access:",
00394 "Access control lists:",
00395 "Additional network interfaces:",
00396 "Search filter objects:",
00397 "Strategies:",
00398 NULL
00399 };
00400
00401
00402 PRIVATE char *ACTIONID[] =
00403 {
00404 "",
00405 "control",
00406 "alerts",
00407 "groups",
00408 "copy",
00409 "resolve",
00410 "processes",
00411 "files",
00412 "tidy",
00413 "homeservers",
00414 "binservers",
00415 "mailserver",
00416 "required",
00417 "disks",
00418 "mountables",
00419 "links",
00420 "import",
00421 "shellcommands",
00422 "disable",
00423 "directories",
00424 "ignore",
00425 "broadcast",
00426 "defaultroute",
00427 "miscmounts",
00428 "editfiles",
00429 "unmount",
00430 "admit",
00431 "deny",
00432 "acl",
00433 "interfaces",
00434 "filters",
00435 "strategies",
00436 NULL
00437 };
00438
00439 PRIVATE char *BUILTINS[] =
00440 {
00441 "",
00442 "randomint",
00443 "isnewerthan",
00444 "accessedbefore",
00445 "changedbefore",
00446 "fileexists",
00447 "isdir",
00448 "islink",
00449 "isplain",
00450 "execresult",
00451 "returnszero",
00452 "iprange",
00453 "isdefined",
00454 "strcmp",
00455 "showstate",
00456 NULL
00457 };
00458
00459
00460
00461
00462
00463 PROTECTED char *FILEACTIONTEXT[] =
00464 {
00465 "warnall",
00466 "warnplain",
00467 "warndirs",
00468 "fixall",
00469 "fixplain",
00470 "fixdirs",
00471 "touch",
00472 "linkchildren",
00473 "create",
00474 "compress",
00475 "alert",
00476 NULL
00477 };
00478
00479
00480
00481 PRIVATE char *ACTIONSEQTEXT[] =
00482 {
00483 "directories",
00484 "links",
00485 "mailcheck",
00486 "required",
00487 "disks",
00488 "tidy",
00489 "shellcommands",
00490 "files",
00491 "disable",
00492 "addmounts",
00493 "editfiles",
00494 "mountall",
00495 "unmount",
00496 "resolve",
00497 "copy",
00498 "netconfig",
00499 "checktimezone",
00500 "mountinfo",
00501 "processes",
00502 "none",
00503 NULL
00504 };
00505
00506
00507
00508
00509
00510
00511
00512
00513
00514 PUBLIC short ISCFENGINE;
00515
00516 PUBLIC short PARSING = false;
00517 PRIVATE short TIDYDIRS = false;
00518 PRIVATE short TRAVLINKS = false;
00519 PRIVATE short PTRAVLINKS = false;
00520 PRIVATE short DEADLINKS = true;
00521 PRIVATE short DONTDO = false;
00522 PRIVATE short IFCONF = true;
00523 PRIVATE short PARSEONLY = false;
00524 PRIVATE short GOTMOUNTINFO = true;
00525 PRIVATE short NOMOUNTS = false;
00526 PRIVATE short NOMODULES = false;
00527 PRIVATE short NOFILECHECK = false;
00528 PRIVATE short NOTIDY = false;
00529 PRIVATE short NOSCRIPTS = false;
00530 PRIVATE short PRSYSADM = false;
00531 PRIVATE short PRMAILSERVER = false;
00532 PRIVATE short MOUNTCHECK = false;
00533 PRIVATE short NOPROCS = false;
00534 PRIVATE short NOEDITS = false;
00535 PRIVATE short KILLOLDLINKS = false;
00536 PRIVATE short IGNORELOCK = false;
00537 PRIVATE short NOPRECONFIG = false;
00538 PRIVATE short WARNINGS = true;
00539 PRIVATE short NONALPHAFILES = false;
00540 PRIVATE short MINUSF = false;
00541 PRIVATE short NOLINKS = false;
00542 PRIVATE short ENFORCELINKS = false;
00543 PRIVATE short NOCOPY = false;
00544 PRIVATE short FORCENETCOPY = false;
00545 PRIVATE short SILENT=false;
00546 PRIVATE short EDITVERBOSE=false;
00547 PRIVATE short LINKSILENT;
00548
00549 PRIVATE short ROTATE=0;
00550 PRIVATE short USEENVIRON=false;
00551 PRIVATE short PROMATCHES=-1;
00552 PRIVATE short EDABORTMODE=false;
00553 PRIVATE short UNDERSCORE_CLASSES=false;
00554 PRIVATE short NOHARDCLASSES=false;
00555 PRIVATE short NOSPLAY = false;
00556 PRIVATE short DONESPLAY = false;
00557
00558 PROTECTED struct Item *VACLBUILD = NULL;
00559 PROTECTED struct Item *VFILTERBUILD = NULL;
00560 PROTECTED struct Item *VSTRATEGYBUILD = NULL;
00561
00562 PRIVATE char IMAGEBACKUP='y';
00563 PRIVATE char TRUSTKEY = 'n';
00564 PRIVATE char PRESERVETIMES = 'n';
00565 PRIVATE char TYPECHECK = 'y';
00566 PRIVATE char LINKTYPE = 's';
00567 PRIVATE char AGETYPE = 'a';
00568 PRIVATE char COPYTYPE = 't';
00569 PRIVATE char DEFAULTCOPYTYPE = 't';
00570 PRIVATE char REPOSCHAR = '_';
00571 PRIVATE char LISTSEPARATOR = ':';
00572 PRIVATE char LINKDIRS = 'k';
00573 PRIVATE char DISCOMP = '=';
00574 PRIVATE char USESHELL = 'y';
00575 PRIVATE char PREVIEW = 'n';
00576 PRIVATE char PURGE = 'n';
00577 PRIVATE char LOGP = 'd';
00578 PRIVATE char INFORMP = 'd';
00579 PRIVATE char MOUNTMODE = 'w';
00580 PRIVATE char DELETEDIR = 'y';
00581 PRIVATE char DELETEFSTAB = 'y';
00582 PRIVATE char FORCE = 'n';
00583 PRIVATE char FORCEIPV4 = 'n';
00584 PRIVATE char FORCELINK = 'n';
00585 PRIVATE char FORCEDIRS = 'n';
00586 PRIVATE char STEALTH = 'n';
00587 PRIVATE char CHECKSUM = 'n';
00588 PRIVATE char COMPRESS = 'n';
00589
00590 PRIVATE char *VUIDNAME;
00591 PRIVATE char *VGIDNAME;
00592 PRIVATE char *FILTERNAME;
00593 PRIVATE char *STRATEGYNAME;
00594 PRIVATE char *CURRENTITEM;
00595 PRIVATE char *GROUPBUFF;
00596 PRIVATE char *ACTIONBUFF;
00597 PRIVATE char *CURRENTPATH;
00598 PRIVATE char *CLASSBUFF;
00599 PRIVATE char *LINKFROM;
00600 PRIVATE char *LINKTO;
00601 PRIVATE char *ERROR;
00602 PRIVATE char *MOUNTFROM;
00603 PRIVATE char *MOUNTONTO;
00604 PRIVATE char *MOUNTOPTS;
00605 PRIVATE char *DESTINATION;
00606 PRIVATE char *IMAGEACTION;
00607 PRIVATE char *VIFNAME[16];
00608 PRIVATE char *VIFNAMEOVERRIDE[16];
00609 PRIVATE char *CHDIR;
00610 PRIVATE char *LOCALREPOS;
00611 PRIVATE char *EXPR;
00612 PRIVATE char *CURRENTAUTHPATH;
00613 PRIVATE char *RESTART;
00614 PRIVATE char *FILTERDATA;
00615 PRIVATE char *STRATEGYDATA;
00616
00617 PRIVATE short PROSIGNAL;
00618 PRIVATE char PROACTION;
00619
00620 PRIVATE char PROCOMP;
00621 PRIVATE char IMGCOMP;
00622 PRIVATE int IMGSIZE;
00623
00624 PUBLIC int ERRORCOUNT = 0;
00625 PUBLIC int LINENUMBER = 1;
00626
00627 PRIVATE int HAVEUID = 0;
00628 PRIVATE int DISABLESIZE=99999999;
00629 PRIVATE int TIDYSIZE=0;
00630 PRIVATE int VRECURSE;
00631 PRIVATE int VAGE;
00632 PRIVATE int VTIMEOUT=0;
00633
00634 PRIVATE mode_t UMASK=0;
00635 PRIVATE mode_t PLUSMASK;
00636 PRIVATE mode_t MINUSMASK;
00637
00638 PRIVATE u_long PLUSFLAG;
00639 PRIVATE u_long MINUSFLAG;
00640
00641
00642
00643 PUBLIC enum actions ACTION = none;
00644 PRIVATE enum vnames CONTROLVAR = nonexistentvar;
00645 PRIVATE enum fileactions FILEACTION = warnall;
00646
00647 PRIVATE flag ACTION_IS_LINK = false;
00648 PRIVATE flag ACTION_IS_LINKCHILDREN = false;
00649 PRIVATE flag MOUNT_ONTO = false;
00650 PRIVATE flag MOUNT_FROM = false;
00651 PRIVATE flag HAVE_RESTART = false;
00652 PRIVATE flag ACTIONPENDING = false;
00653 PRIVATE flag HOMECOPY = false;
00654 PRIVATE char ENCRYPT = 'n';
00655 PRIVATE char VERIFY = 'n';
00656 PRIVATE char COMPATIBILITY = 'n';
00657
00658
00659
00660
00661 PRIVATE flag MOUNT_RO = false;
00662
00663 PRIVATE char *COMMATTRIBUTES[] =
00664 {
00665 "recurse",
00666 "mode",
00667 "owner",
00668 "group",
00669 "age",
00670 "action",
00671 "pattern",
00672 "links",
00673 "type",
00674 "destination",
00675 "force",
00676 "forcedirs",
00677 "forceipv4",
00678 "backup",
00679 "rotate",
00680 "size",
00681 "matches",
00682 "signal",
00683 "exclude",
00684 "copy",
00685 "symlink",
00686 "copytype",
00687 "linktype",
00688 "include",
00689 "dirlinks",
00690 "rmdirs",
00691 "server",
00692 "define",
00693 "elsedefine",
00694 "failover",
00695 "timeout",
00696 "freespace",
00697 "nofile",
00698 "acl",
00699 "purge",
00700 "useshell",
00701 "syslog",
00702 "inform",
00703 "netmask",
00704 "broadcast",
00705 "ignore",
00706 "deletedir",
00707 "deletefstab",
00708 "stealth",
00709 "checksum",
00710 "flags",
00711 "encrypt",
00712 "verify",
00713 "root",
00714 "typecheck",
00715 "umask",
00716 "compress",
00717 "filter",
00718 "background",
00719 "chdir",
00720 "chroot",
00721 "preview",
00722 "repository",
00723 "timestamps",
00724 "trustkey",
00725 "oldserver",
00726 "mountoptions",
00727 "readonly",
00728 NULL
00729 };
00730
00731
00732
00733 PUBLIC char *VFILTERNAMES[] =
00734 {
00735 "Result",
00736 "Owner",
00737 "Group",
00738 "Mode",
00739 "Type",
00740 "FromCtime",
00741 "ToCtime",
00742 "FromMtime",
00743 "ToMtime",
00744 "FromAtime",
00745 "ToAtime",
00746 "FromSize",
00747 "ToSize",
00748 "ExecRegex",
00749 "NameRegex",
00750 "DefineClasses",
00751 "ElseDefineClasses",
00752 "ExecProgram",
00753 "IsSymLinkTo",
00754 "PID",
00755 "PPID",
00756 "PGID",
00757 "RSize",
00758 "VSize",
00759 "Status",
00760 "Command",
00761 "FromTTime",
00762 "ToTTime",
00763 "FromSTime",
00764 "ToSTime",
00765 "TTY",
00766 "Priority",
00767 "Threads",
00768 "NoFilter",
00769 NULL
00770 };
00771
00772
00773
00774
00775