|
xrootd
|
#include <stdio.h>#include <string.h>#include <stdlib.h>#include <sys/types.h>#include <sys/stat.h>#include <unistd.h>#include <fcntl.h>#include <errno.h>#include <pwd.h>#include <dirent.h>#include <XrdOuc/XrdOucString.hh>#include <XrdSut/XrdSutAux.hh>#include <XrdSut/XrdSutPFEntry.hh>#include <XrdSut/XrdSutPFile.hh>#include <XrdSut/XrdSutRndm.hh>#include <XrdCrypto/XrdCryptoCipher.hh>#include <XrdCrypto/XrdCryptoFactory.hh>
Defines | |
| #define | NCRYPTMAX 10 |
| #define | PRT(x) {cerr <<x <<endl;} |
| #define | kMAXPWDATT 3 |
| #define | kMAXPUK 5 |
Enumerations | |
| enum | kModes { kM_undef = 0, kM_init = 1, kM_info, kM_destroy, kM_help, kM_undef = 0, kM_admin = 1, kM_user, kM_netrc, kM_srvpuk, kM_help } |
| enum | kActions { kA_undef = 0, kA_add = 1, kA_update, kA_read, kA_remove, kA_disable, kA_copy, kA_trim, kA_browse } |
Functions | |
| void | Menu (int opt=0) |
| int | ParseArguments (int argc, char **argv) |
| void | ParseCrypto () |
| bool | CheckOption (XrdOucString opt, const char *ref, int &ival) |
| bool | AddPassword (XrdSutPFEntry &ent, XrdOucString salt, XrdOucString &ranpwd, bool random, bool checkpw, bool &newpw) |
| bool | AddPassword (XrdSutPFEntry &ent, bool &newpw, const char *pwd=0) |
| void | SavePasswd (XrdOucString tag, XrdOucString pwd, bool onetime) |
| bool | ReadPasswd (XrdOucString &tag, XrdOucString &pwd, int &st) |
| bool | ReadPuk (int &npuk, XrdOucString *tpuk, XrdOucString *puk) |
| int | GeneratePuk () |
| bool | SavePuk () |
| bool | ReadPuk () |
| bool | ExpPuk (const char *puk=0, bool read=1) |
| bool | GetEntry (XrdSutPFile *ff, XrdOucString tag, XrdSutPFEntry &ent, bool &check) |
| bool | AskConfirm (const char *msg1, bool defact, const char *msg2=0) |
| int | LocateFactoryIndex (char *tag, int &id) |
| int | main (int argc, char **argv) |
Variables | |
| const char * | XrdSecpwdSrvAdminCVSID = "$Id$" |
| const char * | gModesStr [] |
| const char * | gActionsStr [] |
| int | DebugON = 1 |
| XrdOucString | DirRef = "~/.xrd/" |
| XrdOucString | AdminRef = "pwdadmin" |
| XrdOucString | UserRef = "pwduser" |
| XrdOucString | NetRcRef = "pwdnetrc" |
| XrdOucString | SrvPukRef = "pwdsrvpuk" |
| XrdOucString | GenPwdRef = "/genpwd/" |
| XrdOucString | GenPukRef = "/genpuk/" |
| XrdOucString | IDTag = "+++SrvID" |
| XrdOucString | EmailTag = "+++SrvEmail" |
| XrdOucString | HostTag = "+++SrvHost" |
| XrdOucString | PukTag = "+++SrvPuk" |
| XrdOucString | PwdFile = "" |
| XrdOucString | PukFile = "/home/ganis/.xrd/genpuk/puk.07May2005-0849" |
| int | Mode = kM_undef |
| int | Action = kA_undef |
| int | NoBackup = 1 |
| XrdOucString | NameTag = "" |
| XrdOucString | CopyTag = "" |
| XrdOucString | File = "" |
| XrdOucString | Path = "" |
| XrdOucString | Dir = "" |
| XrdOucString | SrvID = "" |
| XrdOucString | SrvName = "" |
| XrdOucString | Email = "" |
| XrdOucString | IterNum = "" |
| bool | Backup = 1 |
| bool | DontAsk = 0 |
| bool | Force = 0 |
| bool | Passwd = 1 |
| bool | Change = 1 |
| bool | Random = 0 |
| bool | SavePw = 1 |
| bool | SetID = 0 |
| bool | SetEmail = 0 |
| bool | SetHost = 0 |
| bool | Create = 0 |
| bool | Confirm = 1 |
| bool | Import = 0 |
| bool | Hash = 1 |
| bool | ChangePuk = 0 |
| bool | ChangePwd = 0 |
| bool | ExportPuk = 0 |
| XrdOucString | DefCrypto = "ssl" |
| XrdOucString | CryptList = "" |
| int | ncrypt = 0 |
| XrdOucString | CryptMod [NCRYPTMAX] = {""} |
| XrdCryptoCipher ** | RefCip = 0 |
| XrdCryptoFactory ** | CF = 0 |
| XrdCryptoKDFun_t | KDFun = 0 |
| XrdCryptoKDFunLen_t | KDFunLen = 0 |
| int | nHostPuk |
| XrdOucString | TagHostPuk [kMAXPUK] |
| XrdOucString | HostPuk [kMAXPUK] |
| #define kMAXPUK 5 |
Referenced by ReadPuk().
| #define kMAXPWDATT 3 |
Referenced by AddPassword().
| #define NCRYPTMAX 10 |
Referenced by ParseCrypto().
| #define PRT | ( | x | ) | {cerr <<x <<endl;} |
Referenced by AddPassword(), AskConfirm(), ExpPuk(), GeneratePuk(), GetEntry(), LocateFactoryIndex(), main(), Menu(), ParseCrypto(), ReadPasswd(), ReadPuk(), SavePasswd(), and SavePuk().
| enum kActions |
| enum kModes |
| bool AddPassword | ( | XrdSutPFEntry & | ent, |
| XrdOucString | salt, | ||
| XrdOucString & | ranpwd, | ||
| bool | random, | ||
| bool | checkpw, | ||
| bool & | newpw | ||
| ) |
References XrdSutPFBuf::buf, XrdSutPFEntry::buf1, XrdSutPFEntry::buf2, XrdOucString::c_str(), XrdOucString::find(), XrdSutRndm::GetString(), XrdOucString::hardreset(), XrdOucString::insert(), kMAXPWDATT, XrdSutPFBuf::len, XrdOucString::length(), PRT, SavePw, XrdSutPFBuf::SetBuf(), and XrdSutGetPass().
Referenced by main().
| bool AddPassword | ( | XrdSutPFEntry & | ent, |
| bool & | newpw, | ||
| const char * | pwd = 0 |
||
| ) |
| bool AskConfirm | ( | const char * | msg1, |
| bool | defact, | ||
| const char * | msg2 = 0 |
||
| ) |
References XrdOucString::c_str(), Confirm, XrdOucString::insert(), XrdOucString::length(), XrdOucString::lower(), PRT, and XrdSutGetLine().
Referenced by main().
| bool CheckOption | ( | XrdOucString | opt, |
| const char * | ref, | ||
| int & | ival | ||
| ) |
| bool ExpPuk | ( | const char * | puk = 0, |
| bool | read = 1 |
||
| ) |
References XrdOucString::assign(), XrdOucString::c_str(), close, Dir, GenPukRef, XrdCryptoFactory::ID(), XrdOucString::length(), ncrypt, open(), opendir(), PRT, XrdCryptoCipher::Public(), PukFile, readdir(), ReadPuk(), SrvID, stat(), and write().
Referenced by main().
| int GeneratePuk | ( | ) |
References XrdCryptoFactory::Cipher(), XrdCryptoFactory::GetCryptoFactory(), ncrypt, and PRT.
Referenced by main().
| bool GetEntry | ( | XrdSutPFile * | ff, |
| XrdOucString | tag, | ||
| XrdSutPFEntry & | ent, | ||
| bool & | check | ||
| ) |
References XrdSutPFEntry::AsString(), XrdOucString::c_str(), XrdSutPFEntry::cnt, Force, XrdSutPFile::Name(), PRT, XrdSutPFile::ReadEntry(), and XrdSutPFEntry::SetName().
Referenced by main().
| int LocateFactoryIndex | ( | char * | tag, |
| int & | id | ||
| ) |
References XrdOucString::c_str(), XrdOucString::erase(), ncrypt, PRT, and XrdOucString::rfind().
Referenced by main().
| int main | ( | int | argc, |
| char ** | argv | ||
| ) |
References Action, AddPassword(), XrdCryptoCipher::AsBucket(), AskConfirm(), XrdSutPFEntry::AsString(), XrdSutPFBuf::buf, XrdSutPFEntry::buf1, XrdSutPFEntry::buf2, XrdSutPFEntry::buf3, XrdSutPFEntry::buf4, XrdSutBucket::buffer, XrdOucString::c_str(), Change, ChangePuk, ChangePwd, XrdSutPFEntry::cnt, CopyTag, Create, DontAsk, XrdOucString::erase(), ExportPuk, ExpPuk(), File, Force, GeneratePuk(), XrdCryptoFactory::GetCryptoFactory(), GetEntry(), XrdSutRndm::GetString(), gModesStr, Hash, XrdCryptoFactory::ID(), Import, XrdSutRndm::Init(), XrdOucString::insert(), kA_add, kA_browse, kA_copy, kA_disable, kA_read, kA_remove, kA_trim, kA_update, XrdCryptoFactory::KDFun(), KDFun, XrdCryptoFactory::KDFunLen(), KDFunLen, kM_admin, kM_netrc, kM_srvpuk, kM_user, kPFE_allowed, kPFE_disabled, kPFE_ok, kPFE_onetime, kPFE_special, kPFEcreate, kPFErrNoFile, XrdSutPFBuf::len, XrdOucString::length(), LocateFactoryIndex(), Mode, XrdSutPFEntry::mtime, XrdSutPFEntry::name, NameTag, ncrypt, nHostPuk, ParseArguments(), ParseCrypto(), Passwd, PRT, Random, ReadPasswd(), ReadPuk(), XrdSutPFEntry::Reset(), SavePasswd(), SavePuk(), SavePw, XrdSutBucket::SetBuf(), XrdSutPFBuf::SetBuf(), SetEmail, SetHost, SetID, XrdSutPFEntry::SetName(), XrdSutBucket::size, XrdSutPFEntry::status, sutTRACE_Debug, XrdSutGetLine(), and XrdSutSetTrace().
| void Menu | ( | int | opt = 0 | ) |
References PRT.
| int ParseArguments | ( | int | argc, |
| char ** | argv | ||
| ) |
| void ParseCrypto | ( | ) |
References DefCrypto, XrdCryptoFactory::GetCryptoFactory(), ncrypt, NCRYPTMAX, PRT, and XrdOucString::tokenize().
Referenced by main().
| bool ReadPasswd | ( | XrdOucString & | tag, |
| XrdOucString & | pwd, | ||
| int & | st | ||
| ) |
References XrdOucString::c_str(), fclose(), fopen, XrdOucString::length(), and PRT.
Referenced by main().
| bool ReadPuk | ( | int & | npuk, |
| XrdOucString * | tpuk, | ||
| XrdOucString * | puk | ||
| ) |
References XrdOucString::c_str(), fclose(), fopen, kMAXPUK, XrdOucString::length(), and PRT.
| bool ReadPuk | ( | ) |
References XrdOucString::c_str(), XrdCryptoFactory::Cipher(), close, XrdOucString::length(), ncrypt, open(), PRT, and read().
| void SavePasswd | ( | XrdOucString | tag, |
| XrdOucString | pwd, | ||
| bool | onetime | ||
| ) |
References XrdOucString::assign(), XrdOucString::c_str(), close, Dir, GenPwdRef, XrdCryptoFactory::ID(), XrdOucString::length(), ncrypt, open(), PRT, XrdCryptoCipher::Public(), SrvID, SrvName, write(), and XrdSutMkdir().
Referenced by main().
| bool SavePuk | ( | ) |
References XrdCryptoCipher::AsBucket(), XrdOucString::c_str(), close, Dir, GenPukRef, XrdCryptoFactory::ID(), XrdOucString::length(), ncrypt, open(), PRT, XrdSutBucket::size, write(), XrdSutMkdir(), and XrdSutTimeString().
Referenced by main().
| XrdOucString AdminRef = "pwdadmin" |
| bool Backup = 1 |
| XrdCryptoFactory** CF = 0 |
| bool Confirm = 1 |
Referenced by AskConfirm().
| XrdOucString CopyTag = "" |
Referenced by main().
| bool Create = 0 |
Referenced by XrdCmsConfig::Configure2(), and main().
| XrdOucString CryptList = "" |
| XrdOucString CryptMod[NCRYPTMAX] = {""} |
| int DebugON = 1 |
| XrdOucString DefCrypto = "ssl" |
Referenced by ParseCrypto().
| XrdOucString Dir = "" |
Referenced by ExpPuk(), SavePasswd(), and SavePuk().
| XrdOucString DirRef = "~/.xrd/" |
| XrdOucString Email = "" |
| XrdOucString EmailTag = "+++SrvEmail" |
| XrdOucString File = "" |
Referenced by main(), XrdSecProtocolpwd::QueryUser(), and XrdFrmXfrQueue::Stopped().
| bool Force = 0 |
Referenced by GetEntry(), and main().
| const char* gActionsStr[] |
{
"kA_undef",
"kA_add",
"kA_update",
"kA_read",
"kA_remove",
"kA_disable",
"kA_copy",
"kA_trim",
"kA_browse"
}
| XrdOucString GenPukRef = "/genpuk/" |
| XrdOucString GenPwdRef = "/genpwd/" |
Referenced by SavePasswd().
| const char* gModesStr[] |
{
"kM_undef",
"kM_admin",
"kM_user",
"kM_netrc",
"kM_srvpuk",
"kM_help"
}
| bool Hash = 1 |
Referenced by AddPassword(), main(), and XrdCmsKey::setHash().
| XrdOucString HostPuk[kMAXPUK] |
| XrdOucString HostTag = "+++SrvHost" |
| XrdOucString IDTag = "+++SrvID" |
| XrdOucString IterNum = "" |
Referenced by XrdSecProtocolpwd::DoubleHash(), and main().
Referenced by XrdSecProtocolpwd::DoubleHash(), and main().
| int Mode = kM_undef |
| XrdOucString NameTag = "" |
Referenced by main().
| int ncrypt = 0 |
Referenced by ExpPuk(), GeneratePuk(), LocateFactoryIndex(), main(), ParseCrypto(), ReadPuk(), SavePasswd(), and SavePuk().
| XrdOucString NetRcRef = "pwdnetrc" |
| int NoBackup = 1 |
| XrdOucString Path = "" |
Referenced by XrdFrmAdmin::AuditNameXB(), XrdFrmAdmin::AuditNameXL(), XrdFrmAdmin::AuditSpace(), XrdFrmAdmin::AuditUsage(), XrdCmsParser::Decode(), XrdOucXAttr< XrdFrmXAttrPin >::Del(), XrdCnsLog::Dirs(), XrdXrootdProtocol::do_Locate(), XrdOfs::fsctl(), XrdOssPath::genPFN(), XrdOucXAttr< XrdFrmXAttrPin >::Get(), XrdFrmCID::Init(), XrdCmsCluster::Locate(), XrdOfsFile::open(), XrdOssCache::Parse(), XrdOucXAttr< XrdFrmXAttrPin >::Set(), XrdOssSys::SetFattr(), XrdFrmAdmin::x2xPaths(), XrdCmsXmiReq::XrdCmsXmiReq(), XrdCnsSsiApplyD(), XrdCnsSsiApplyF(), and XrdCmsXmiReq::~XrdCmsXmiReq().
| XrdOucString PukFile = "/home/ganis/.xrd/genpuk/puk.07May2005-0849" |
Referenced by ExpPuk().
| XrdOucString PukTag = "+++SrvPuk" |
| XrdOucString PwdFile = "" |
| XrdCryptoCipher** RefCip = 0 |
| bool SavePw = 1 |
Referenced by AddPassword(), and main().
| XrdOucString SrvID = "" |
Referenced by ExpPuk(), and SavePasswd().
| XrdOucString SrvName = "" |
Referenced by SavePasswd().
| XrdOucString SrvPukRef = "pwdsrvpuk" |
| XrdOucString TagHostPuk[kMAXPUK] |
| XrdOucString UserRef = "pwduser" |
| const char* XrdSecpwdSrvAdminCVSID = "$Id$" |
1.7.3