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