1 #ifndef __XRDVERSIONPLUGIN_HH__
2 #define __XRDVERSIONPLUGIN_HH__
54 #define XrdVERSIONPLUGIN_DoNotChk -1
55 #define XrdVERSIONPLUGIN_Optional 0
56 #define XrdVERSIONPLUGIN_Required 1
58 #define XrdVERSIONPLUGIN_Rule(procMode, majorVer, minorVer, piSymbol)\
59 {#piSymbol, 0, 0, XrdVERSIONPLUGIN_##procMode, majorVer, minorVer},
88 #define XrdVERSIONPLUGINRULES \
89 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdAccAuthorizeObject )\
90 XrdVERSIONPLUGIN_Rule(Optional, 4, 0, XrdBwmPolicyObject )\
91 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdCksCalcInit )\
92 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdCksInit )\
93 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdCmsGetClient )\
94 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdCryptosslFactoryObject )\
95 XrdVERSIONPLUGIN_Rule(Optional, 4, 0, XrdFileCacheGetDecision )\
96 XrdVERSIONPLUGIN_Rule(DoNotChk, 4, 0, XrdgetProtocol )\
97 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdgetProtocolPort )\
98 XrdVERSIONPLUGIN_Rule(Optional, 4, 0, XrdHttpGetSecXtractor )\
99 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdOssGetStorageSystem )\
100 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdOssStatInfoInit )\
101 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdOucGetCache )\
102 XrdVERSIONPLUGIN_Rule(Optional, 4, 0, XrdOucgetName2Name )\
103 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdSecGetProtocol )\
104 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdSecgetService )\
105 XrdVERSIONPLUGIN_Rule(Optional, 4, 0, XrdSecgsiAuthzFun )\
106 XrdVERSIONPLUGIN_Rule(DoNotChk, 4, 0, XrdSecgsiAuthzInit )\
107 XrdVERSIONPLUGIN_Rule(DoNotChk, 4, 0, XrdSecgsiAuthzKey )\
108 XrdVERSIONPLUGIN_Rule(Optional, 4, 0, XrdSecgsiGMAPFun )\
109 XrdVERSIONPLUGIN_Rule(Optional, 4, 0, XrdSecgsiVOMSFun )\
110 XrdVERSIONPLUGIN_Rule(DoNotChk, 4, 0, XrdSecgsiVOMSInit )\
111 XrdVERSIONPLUGIN_Rule(DoNotChk, 4, 0, XrdSecProtocolgsiInit )\
112 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdSecProtocolgsiObject )\
113 XrdVERSIONPLUGIN_Rule(DoNotChk, 4, 0, XrdSecProtocolkrb5Init )\
114 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdSecProtocolkrb5Object )\
115 XrdVERSIONPLUGIN_Rule(DoNotChk, 4, 0, XrdSecProtocolpwdInit )\
116 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdSecProtocolpwdObject )\
117 XrdVERSIONPLUGIN_Rule(DoNotChk, 4, 0, XrdSecProtocolsssInit )\
118 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdSecProtocolsssObject )\
119 XrdVERSIONPLUGIN_Rule(DoNotChk, 4, 0, XrdSecProtocolunixInit )\
120 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdSecProtocolunixObject )\
121 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdSfsGetFileSystem )\
122 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdSfsGetFileSystem2 )\
123 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdSysGetXAttrObject )\
124 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdClGetMonitor )\
125 XrdVERSIONPLUGIN_Rule(Required, 4, 0, XrdClGetPlugIn )\
128 #define XrdVERSIONPLUGIN_Maxim(procMode, majorVer, minorVer, piPfx, piSfx)\
129 {#piPfx #piSfx, static_cast<char>(strlen(#piPfx)),\
130 static_cast<char>(strlen(#piSfx)),\
131 XrdVERSIONPLUGIN_##procMode, majorVer, minorVer},
150 #define XrdVERSIONPLUGINMAXIMS\
151 XrdVERSIONPLUGIN_Maxim(DoNotChk, 4, 0, XrdSecProtocol, Init )\
152 XrdVERSIONPLUGIN_Maxim(Required, 4, 0, XrdSecProtocol, Object )\
153 XrdVERSIONPLUGIN_Maxim(Optional, 4, 0, XrdCrypto, FactoryObject)\
160 #define XrdVERSIONPLUGINSTRICT \
162 "libXrdCksCalczcrc32.so", \
163 "libXrdCryptossl.so", \
164 "libXrdFileCache.so", \
166 "libXrdOssSIgpfsT.so", \
170 "libXrdSecgsiAUTHZVO.so", \
171 "libXrdSecgsiGMAPDLAP.so", \
172 "libXrdSecgsiGMAPLDAP.so", \
173 "libXrdSeckrb5.so", \
176 "libXrdSecunix.so", \
char vSfxLen
Generic rule suffix length for preceeding.
Definition: XrdVersionPlugin.hh:40
char vPfxLen
Generic rule prefix length.
Definition: XrdVersionPlugin.hh:39
short vMinLow
Lowest compatible minor (>99 don't check).
Definition: XrdVersionPlugin.hh:43
short vMajLow
Lowest compatible major version number.
Definition: XrdVersionPlugin.hh:42
const char * pName
-> plugin object creator function name
Definition: XrdVersionPlugin.hh:38
Definition: XrdVersionPlugin.hh:37
int vProcess
version: <0 skip, =0 optional, >0 required
Definition: XrdVersionPlugin.hh:41