00001 #ifndef _XRD_CONFIG_H
00002 #define _XRD_CONFIG_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #include "Xrd/XrdProtocol.hh"
00016
00017 class XrdNetSecurity;
00018 class XrdOucStream;
00019 class XrdConfigProt;
00020
00021 class XrdConfig
00022 {
00023 public:
00024
00025 int Configure(int argc, char **argv);
00026
00027 int ConfigXeq(char *var, XrdOucStream &Config, XrdSysError *eDest=0);
00028
00029 XrdConfig();
00030 ~XrdConfig() {}
00031
00032 private:
00033
00034 int ASocket(const char *path, const char *fname, mode_t mode);
00035 int ConfigProc(void);
00036 int getUG(char *parm, uid_t &theUid, gid_t &theGid);
00037 int setFDL();
00038 int Setup(char *dfltp);
00039 void Usage(int rc);
00040 int xallow(XrdSysError *edest, XrdOucStream &Config);
00041 int xapath(XrdSysError *edest, XrdOucStream &Config);
00042 int xbuf(XrdSysError *edest, XrdOucStream &Config);
00043 int xnet(XrdSysError *edest, XrdOucStream &Config);
00044 int xlog(XrdSysError *edest, XrdOucStream &Config);
00045 int xport(XrdSysError *edest, XrdOucStream &Config);
00046 int xprot(XrdSysError *edest, XrdOucStream &Config);
00047 int xrep(XrdSysError *edest, XrdOucStream &Config);
00048 int xsched(XrdSysError *edest, XrdOucStream &Config);
00049 int xtrace(XrdSysError *edest, XrdOucStream &Config);
00050 int xtmo(XrdSysError *edest, XrdOucStream &Config);
00051 int yport(XrdSysError *edest, const char *ptyp, const char *pval);
00052
00053 static const char *TraceID;
00054
00055 XrdProtocol_Config ProtInfo;
00056 XrdNetSecurity *Police;
00057 const char *myProg;
00058 const char *myName;
00059 const char *myDomain;
00060 const char *myInsName;
00061 char *myInstance;
00062 char *AdminPath;
00063 char *ConfigFN;
00064 char *repDest[2];
00065 XrdConfigProt *Firstcp;
00066 XrdConfigProt *Lastcp;
00067 int Net_Blen;
00068 int Net_Opts;
00069 int Wan_Blen;
00070 int Wan_Opts;
00071
00072 int PortTCP;
00073 int PortUDP;
00074 int PortWAN;
00075 int AdminMode;
00076 int repInt;
00077 char repOpts;
00078 char isProxy;
00079 char setSched;
00080 };
00081 #endif