Go to the documentation of this file.
54 #define XrdSecPROTOIDENT "pwd"
55 #define XrdSecPROTOIDLEN sizeof(XrdSecPROTOIDENT)
56 #define XrdSecpwdVERSION 10100
57 #define XrdSecNOIPCHK 0x0001
58 #define XrdSecDEBUG 0x1000
59 #define XrdCryptoMax 10
61 #define kMAXBUFLEN 1024
198 #define REL1(x) { if (x) delete x; }
199 #define REL2(x,y) { if (x) delete x; if (y) delete y; }
200 #define REL3(x,y,z) { if (x) delete x; if (y) delete y; if (z) delete z; }
203 #define PRINT(y) {{SecTrace->Beg(epname); cerr <<y; SecTrace->End();}}
208 #define SafeDelete(x) { if (x) delete x ; x = 0; }
209 #define SafeDelArray(x) { if (x) delete [] x ; x = 0; }
297 const char *parms = 0);
382 const char *msg1,
const char *msg2 = 0,
383 const char *msg3 = 0);
387 const char *msg2 = 0,
const char *msg3 = 0);
391 const char *msg2 = 0,
const char *msg3 = 0);
421 const char *tag = 0);
bool RtagOK
Definition: XrdSecProtocolpwd.hh:260
XrdSutPFEntry * Pent
Definition: XrdSecProtocolpwd.hh:259
Definition: XrdSecProtocolpwd.hh:103
static XrdSutPFCache cacheUser
Definition: XrdSecProtocolpwd.hh:337
int kXR_int32
Definition: XPtypes.hh:89
kpwdCredsInput
Definition: XrdSecProtocolpwd.hh:91
Definition: XrdSecProtocolpwd.hh:165
Definition: XrdCryptoCipher.hh:47
int SysPwd
Definition: XrdSecProtocolpwd.hh:266
bool CheckCreds(XrdSutBucket *creds, int credtype)
Definition: XrdSecProtocolpwd.hh:104
String AFScell
Definition: XrdSecProtocolpwd.hh:267
bool CheckTimeStamp(XrdSutBuffer *b, int skew, String &emsg)
XrdOucString String
Definition: XrdSecProtocolpwd.hh:52
char * srvpuk
Definition: XrdSecProtocolpwd.hh:232
static XrdSutPFile PFAlog
Definition: XrdSecProtocolpwd.hh:324
#define XrdCryptoMax
Definition: XrdSecProtocolpwd.hh:59
Definition: XrdSecProtocolpwd.hh:178
void Print(XrdOucTrace *t)
Definition: XrdSutBuffer.hh:43
int ParseCrypto(XrdSutBuffer *buf)
Definition: XrdSysPthread.hh:165
static int FmtExpCreds
Definition: XrdSecProtocolpwd.hh:354
Definition: XrdSecProtocolpwd.hh:166
kpwdErrors
Definition: XrdSecProtocolpwd.hh:150
Definition: XrdSecProtocolpwd.hh:180
static String FileUser
Definition: XrdSecProtocolpwd.hh:316
Definition: XrdSecProtocolpwd.hh:168
static int VeriClnt
Definition: XrdSecProtocolpwd.hh:345
int QueryNetRc(String host, String &passwd, int &status)
char * udir
Definition: XrdSecProtocolpwd.hh:229
int Authenticate(XrdSecCredentials *cred, XrdSecParameters **parms, XrdOucErrInfo *einfo=0)
Definition: XrdSecProtocolpwd.hh:214
Definition: XrdSecProtocolpwd.hh:163
Definition: XrdSecProtocolpwd.hh:70
Definition: XrdSecProtocolpwd.hh:133
int ParseServerInput(XrdSutBuffer *br, XrdSutBuffer **bm, String &cmsg)
Definition: XrdSecProtocolpwd.hh:108
Definition: XrdSecProtocolpwd.hh:175
Definition: XrdSecProtocolpwd.hh:105
XrdNetAddrInfo epAddr
Definition: XrdSecProtocolpwd.hh:362
static XrdOucTrace * EnableTracing()
int QueryCrypt(String &fn, String &pwhash)
bool srvMode
Definition: XrdSecProtocolpwd.hh:365
static XrdSysLogger Logger
Definition: XrdSecProtocolpwd.hh:357
static String FileSrvPuk
Definition: XrdSecProtocolpwd.hh:318
Definition: XrdSecProtocolpwd.hh:144
Definition: XrdSecProtocolpwd.hh:192
int Step
Definition: XrdSecProtocolpwd.hh:263
Definition: XrdSecProtocolpwd.hh:140
static String DefCrypto
Definition: XrdSecProtocolpwd.hh:321
pwdHSVars()
Definition: XrdSecProtocolpwd.hh:270
static int cryptID[XrdCryptoMax]
Definition: XrdSecProtocolpwd.hh:329
Definition: XrdSecProtocolpwd.hh:145
Definition: XrdSecProtocolpwd.hh:94
static XrdSutPFile PFAdmin
Definition: XrdSecProtocolpwd.hh:323
Definition: XrdSecProtocolpwd.hh:106
char action
Definition: XrdSecProtocolpwd.hh:194
Definition: XrdSecProtocolpwd.hh:159
int maxfailures
Definition: XrdSecProtocolpwd.hh:226
short vericlnt
Definition: XrdSecProtocolpwd.hh:222
Definition: XrdNetAddrInfo.hh:53
String User
Definition: XrdSecProtocolpwd.hh:251
int GetUserHost(String &usr, String &host)
Definition: XrdSecProtocolpwd.hh:285
Definition: XrdSecProtocolpwd.hh:158
Definition: XrdSecProtocolpwd.hh:130
kpwdAutoreg
Definition: XrdSecProtocolpwd.hh:75
char * cpass
Definition: XrdSecProtocolpwd.hh:230
Definition: XrdSecProtocolpwd.hh:121
virtual ~pwdOptions()
Definition: XrdSecProtocolpwd.hh:242
Definition: XrdSutPFEntry.hh:78
static XrdSutPFile PFSrvPuk
Definition: XrdSecProtocolpwd.hh:325
Definition: XrdSecProtocolpwd.hh:85
Definition: XrdSecProtocolpwd.hh:169
Definition: XrdSecProtocolpwd.hh:129
Definition: XrdSecProtocolpwd.hh:117
short options
Definition: XrdSecProtocolpwd.hh:195
kpwdUpdate
Definition: XrdSecProtocolpwd.hh:83
Definition: XrdSutPFCache.hh:71
Definition: XrdSecProtocolpwd.hh:176
static int TimeSkew
Definition: XrdSecProtocolpwd.hh:352
Definition: XrdSecProtocolpwd.hh:92
static int AutoReg
Definition: XrdSecProtocolpwd.hh:347
Definition: XrdSecProtocolpwd.hh:138
char * expcreds
Definition: XrdSecProtocolpwd.hh:234
Definition: XrdSecProtocolpwd.hh:177
Definition: XrdSecProtocolpwd.hh:182
int Iter
Definition: XrdSecProtocolpwd.hh:248
int maxprompts
Definition: XrdSecProtocolpwd.hh:225
static int VeriSrv
Definition: XrdSecProtocolpwd.hh:346
XrdSutBucket * QueryCreds(XrdSutBuffer *bm, bool netrc, int &status)
Definition: XrdSecProtocolpwd.hh:69
Definition: XrdSecProtocolpwd.hh:120
String CryptoMod
Definition: XrdSecProtocolpwd.hh:250
XrdSutPFEntry * Cref
Definition: XrdSecProtocolpwd.hh:258
char * dir
Definition: XrdSecProtocolpwd.hh:228
Definition: XrdSecProtocolpwd.hh:77
XrdCryptoCipher * Rcip
Definition: XrdSecProtocolpwd.hh:256
void Delete()
Delete the protocol object. DO NOT use C++ delete() on this object.
Definition: XrdSecProtocolpwd.hh:162
Definition: XrdSecProtocolpwd.hh:109
static int LifeCreds
Definition: XrdSecProtocolpwd.hh:348
XrdSecCredentials * clientCreds
Definition: XrdSecProtocolpwd.hh:371
short syspwd
Definition: XrdSecProtocolpwd.hh:223
bool Tty
Definition: XrdSecProtocolpwd.hh:262
Definition: XrdSecProtocolpwd.hh:188
int ExportCreds(XrdSutBucket *creds)
XrdCryptoFactory * CF
Definition: XrdSecProtocolpwd.hh:254
Definition: XrdSecProtocolpwd.hh:173
static String FileExpCreds
Definition: XrdSecProtocolpwd.hh:315
Definition: XrdSecProtocolpwd.hh:172
int expfmt
Definition: XrdSecProtocolpwd.hh:235
pwdOptions()
Definition: XrdSecProtocolpwd.hh:237
String ID
Definition: XrdSecProtocolpwd.hh:257
bool CheckCredsAFS(XrdSutBucket *creds, int ctype)
Definition: XrdSecProtocolpwd.hh:170
short alog
Definition: XrdSecProtocolpwd.hh:220
int ErrS(String ID, XrdOucErrInfo *einfo, XrdSutBuffer *b1, XrdSutBuffer *b2, XrdSutBuffer *b3, kXR_int32 ecode, const char *msg1=0, const char *msg2=0, const char *msg3=0)
Definition: XrdSecProtocolpwd.hh:107
static int ncrypt
Definition: XrdSecProtocolpwd.hh:328
Definition: XrdSecProtocolpwd.hh:154
Definition: XrdSecProtocolpwd.hh:118
Definition: XrdSecProtocolpwd.hh:110
int RemVers
Definition: XrdSecProtocolpwd.hh:253
static XrdSysMutex pwdContext
Definition: XrdSecProtocolpwd.hh:313
XrdSecProtocolpwd(int opts, const char *hname, XrdNetAddrInfo &endPoint, const char *parms=0)
Definition: XrdSecProtocolpwd.hh:127
XrdSutBuffer * Parms
Definition: XrdSecProtocolpwd.hh:268
static int MaxPrompts
Definition: XrdSecProtocolpwd.hh:349
static String SrvID
Definition: XrdSecProtocolpwd.hh:319
static int MaxFailures
Definition: XrdSecProtocolpwd.hh:350
Definition: XrdSecProtocolpwd.hh:132
Definition: XrdSecProtocolpwd.hh:167
Definition: XrdSecProtocolpwd.hh:68
char * alogfile
Definition: XrdSecProtocolpwd.hh:231
Definition: XrdSecProtocolpwd.hh:152
Definition: XrdSecProtocolpwd.hh:139
XrdSecCredentials * ErrC(XrdOucErrInfo *einfo, XrdSutBuffer *b1, XrdSutBuffer *b2, XrdSutBuffer *b3, kXR_int32 ecode, const char *msg1=0, const char *msg2=0, const char *msg3=0)
virtual ~XrdSecProtocolpwd()
Definition: XrdSecProtocolpwd.hh:298
static String FileCrypt
Definition: XrdSecProtocolpwd.hh:317
short mode
Definition: XrdSecProtocolpwd.hh:217
Definition: XrdSecProtocolpwd.hh:101
Definition: XrdSysLogger.hh:52
Definition: XrdSecProtocolpwd.hh:181
Definition: XrdSecProtocolpwd.hh:131
short areg
Definition: XrdSecProtocolpwd.hh:218
kpwdCredType
Definition: XrdSecProtocolpwd.hh:100
Generic structure to pass security information back and forth.
Definition: XrdSecInterface.hh:50
static XrdCryptoCipher * loccip[XrdCryptoMax]
Definition: XrdSecProtocolpwd.hh:331
char * clist
Definition: XrdSecProtocolpwd.hh:227
pwdHSVars * hs
Definition: XrdSecProtocolpwd.hh:368
static void PrintTimeStat()
static String cryptName[XrdCryptoMax]
Definition: XrdSecProtocolpwd.hh:330
int QueryUser(int &status, String &cmsg)
kpwdServerSteps
Definition: XrdSecProtocolpwd.hh:137
Definition: XrdSecProtocolpwd.hh:246
Definition: XrdSecProtocolpwd.hh:183
Definition: XrdSutPFile.hh:121
Definition: XrdSecProtocolpwd.hh:146
Definition: XrdSecProtocolpwd.hh:141
Definition: XrdSecProtocolpwd.hh:93
Definition: XrdSecProtocolpwd.hh:187
static bool KeepCreds
Definition: XrdSecProtocolpwd.hh:353
Definition: XrdSecProtocolpwd.hh:86
Definition: XrdSecInterface.hh:130
Definition: XrdSecProtocolpwd.hh:84
XrdSecCredentials * getCredentials(XrdSecParameters *parm=0, XrdOucErrInfo *einfo=0)
Definition: XrdSecProtocolpwd.hh:164
static XrdSutPFCache cacheAdmin
Definition: XrdSecProtocolpwd.hh:335
int DoubleHash(XrdCryptoFactory *cf, XrdSutBucket *bck, XrdSutBucket *s1, XrdSutBucket *s2=0, const char *tag=0)
Definition: XrdSecProtocolpwd.hh:111
kpwdClientSteps
Definition: XrdSecProtocolpwd.hh:125
char CName[256]
Definition: XrdSecProtocolpwd.hh:364
Definition: XrdSecProtocolpwd.hh:128
int ParseClientInput(XrdSutBuffer *br, XrdSutBuffer **bm, String &emsg)
short verisrv
Definition: XrdSecProtocolpwd.hh:221
short debug
Definition: XrdSecProtocolpwd.hh:216
Definition: XrdSecProtocolpwd.hh:160
int TimeStamp
Definition: XrdSecProtocolpwd.hh:249
Definition: XrdSecProtocolpwd.hh:151
static int Debug
Definition: XrdSecProtocolpwd.hh:341
kpwdStatus
Definition: XrdSecProtocolpwd.hh:67
Definition: XrdSecProtocolpwd.hh:142
String Tag
Definition: XrdSecProtocolpwd.hh:252
Definition: XrdSecProtocolpwd.hh:179
kpwdCredsActions
Definition: XrdSecProtocolpwd.hh:116
Definition: XrdSecProtocolpwd.hh:126
static XrdSysError eDest
Definition: XrdSecProtocolpwd.hh:358
static XrdSutPFCache cacheAlog
Definition: XrdSecProtocolpwd.hh:338
int lifecreds
Definition: XrdSecProtocolpwd.hh:224
int options
Definition: XrdSecProtocolpwd.hh:363
String ErrMsg
Definition: XrdSecProtocolpwd.hh:265
Definition: XrdOucErrInfo.hh:99
Definition: XrdSecProtocolpwd.hh:157
bool CheckRtag(XrdSutBuffer *bm, String &emsg)
int SaveCreds(XrdSutBucket *creds)
Definition: XrdOucTrace.hh:35
static int AutoLogin
Definition: XrdSecProtocolpwd.hh:351
Definition: XrdSecProtocolpwd.hh:119
static char * Init(pwdOptions o, XrdOucErrInfo *erp)
~pwdHSVars()
Definition: XrdSecProtocolpwd.hh:277
Definition: XrdSysError.hh:89
XrdCryptoCipher * Hcip
Definition: XrdSecProtocolpwd.hh:255
char ctype
Definition: XrdSecProtocolpwd.hh:193
static bool Server
Definition: XrdSecProtocolpwd.hh:342
Definition: XrdSecProtocolpwd.hh:185
static void ErrF(XrdOucErrInfo *einfo, kXR_int32 ecode, const char *msg1, const char *msg2=0, const char *msg3=0)
Definition: XrdSecProtocolpwd.hh:78
Definition: XrdSecProtocolpwd.hh:155
static XrdOucTrace * PWDTrace
Definition: XrdSecProtocolpwd.hh:359
static String SrvEmail
Definition: XrdSecProtocolpwd.hh:320
Definition: XrdSecProtocolpwd.hh:76
Definition: XrdSecProtocolpwd.hh:174
Definition: XrdSecProtocolpwd.hh:95
Definition: XrdSecProtocolpwd.hh:184
Definition: XrdOucString.hh:254
Definition: XrdSecProtocolpwd.hh:161
static String DefError
Definition: XrdSecProtocolpwd.hh:322
Definition: XrdSecProtocolpwd.hh:171
Definition: XrdCryptoFactory.hh:115
Definition: XrdSutBucket.hh:43
Definition: XrdSecProtocolpwd.hh:102
short keepcreds
Definition: XrdSecProtocolpwd.hh:233
static bool SysPwd
Definition: XrdSecProtocolpwd.hh:344
static XrdCryptoCipher * refcip[XrdCryptoMax]
Definition: XrdSecProtocolpwd.hh:332
short upwd
Definition: XrdSecProtocolpwd.hh:219
static String FileAdmin
Definition: XrdSecProtocolpwd.hh:314
int AddSerialized(char opt, kXR_int32 step, String ID, XrdSutBuffer *bls, XrdSutBuffer *buf, kXR_int32 type, XrdCryptoCipher *cip)
#define SafeDelete(x)
Definition: XrdSecProtocolpwd.hh:208
int LastStep
Definition: XrdSecProtocolpwd.hh:264
pwdStatus_t Status
Definition: XrdSecProtocolpwd.hh:261
Definition: XrdSecProtocolpwd.hh:186
static int UserPwd
Definition: XrdSecProtocolpwd.hh:343
static XrdSutPFCache cacheSrvPuk
Definition: XrdSecProtocolpwd.hh:336
Definition: XrdSecProtocolpwd.hh:153
Definition: XrdSecProtocolpwd.hh:143
Definition: XrdSecProtocolpwd.hh:156