#include <string.h>#include <sys/types.h>#include <iostream>#include <libgen.h>#include <unistd.h>#include <netdb.h>#include <pwd.h>#include <grp.h>#include <time.h>#include <pthread.h>#include <syslog.h>#include "XrdClient/XrdClientUrlInfo.hh"#include "XrdClient/XrdClientEnv.hh"#include "XrdClient/XrdClientConst.hh"#include "XrdClient/XrdClient.hh"#include "XrdClient/XrdClientAdmin.hh"#include "XrdOuc/XrdOucString.hh"#include "XrdSec/XrdSecEntity.hh"#include "XrdSecsss/XrdSecsssID.hh"#include "XrdFfs/XrdFfsDent.hh"#include "XrdFfs/XrdFfsFsinfo.hh"#include "XrdFfs/XrdFfsMisc.hh"#include "XrdFfs/XrdFfsPosix.hh"#include "XrdFfs/XrdFfsQueue.hh"Go to the source code of this file.
Defines | |
| #define | _FILE_OFFSET_BITS 64 |
Functions | |
| char | XrdFfsMisc_get_current_url (const char *oldurl, char *newurl) |
| uint32_t | XrdFfsMisc_ip2nl (char *ip) |
| char * | XrdFfsMisc_getNameByAddr (char *ipaddr) |
| int | XrdFfsMisc_get_all_urls_real (const char *oldurl, char **newurls, const int nnodes) |
| int | XrdFfsMisc_get_all_urls (const char *oldurl, char **newurls, const int nnodes) |
| int | XrdFfsMisc_get_list_of_data_servers (char *list) |
| void | XrdFfsMisc_refresh_url_cache (const char *url) |
| void | XrdFfsMisc_xrd_init (const char *rdrurl, int startQueue) |
| void | XrdFfsMisc_xrd_secsss_init () |
| void | XrdFfsMisc_xrd_secsss_register (uid_t user_uid, gid_t user_gid) |
| void | XrdFfsMisc_xrd_secsss_editurl (char *url, uid_t user_uid) |
Variables | |
| char | XrdFfsMiscCururl [1024] = "" |
| char * | XrdFfsMiscUrlcache [XrdFfs_MAX_NUM_NODES] |
| int | XrdFfsMiscNcachedurls = 0 |
| time_t | XrdFfsMiscUrlcachetime = 0 |
| pthread_mutex_t | XrdFfsMiscUrlcache_mutex = PTHREAD_MUTEX_INITIALIZER |
| XrdSecEntity * | XrdFfsMiscUent |
| XrdSecsssID * | XrdFfsMiscSssid |
| bool | XrdFfsMiscSecsss = false |
| pthread_mutex_t | XrdFfsMiscSecsss_mutex = PTHREAD_MUTEX_INITIALIZER |
| #define _FILE_OFFSET_BITS 64 |
Definition at line 10 of file XrdFfsMisc.cc.
| int XrdFfsMisc_get_all_urls | ( | const char * | oldurl, | |
| char ** | newurls, | |||
| const int | nnodes | |||
| ) |
Definition at line 171 of file XrdFfsMisc.cc.
References free(), i, malloc(), NULL, pthread_mutex_lock(), pthread_mutex_unlock(), strcpy(), XrdFfs_MAX_NUM_NODES, and XrdFfsMisc_get_all_urls_real().
Referenced by XrdFfsMisc_get_all_urls_real(), XrdFfsMisc_refresh_url_cache(), XrdFfsPosix_deleteall(), XrdFfsPosix_readdirall(), XrdFfsPosix_renameall(), XrdFfsPosix_statall(), XrdFfsPosix_statvfsall(), and XrdFfsPosix_truncateall().
| int XrdFfsMisc_get_all_urls_real | ( | const char * | oldurl, | |
| char ** | newurls, | |||
| const int | nnodes | |||
| ) |
Definition at line 119 of file XrdFfsMisc.cc.
References XrdOucString::c_str(), XrdClientAdmin::Connect(), XrdClientLocate_Info::Infotype, XrdClientLocate_Info::kXrdcLocManager, XrdClientLocate_Info::kXrdcLocManagerPending, XrdClientAdmin::Locate(), XrdClientLocate_Info::Location, p, strcat(), strcpy(), and XrdFfsMisc_get_all_urls().
Referenced by XrdFfsMisc_get_all_urls().
| char XrdFfsMisc_get_current_url | ( | const char * | oldurl, | |
| char * | newurl | |||
| ) |
Definition at line 42 of file XrdFfsMisc.cc.
References XrdOucString::c_str(), XrdClientAdmin::Connect(), flags, XrdClientAbs::GetCurrentUrl(), XrdClientUrlInfo::GetUrl(), id, XrdClientUrlInfo::IsValid(), p, S_ISDIR, size, stat, XrdClientAdmin::Stat(), strcpy(), and XrdFfsPosix_stat().
| int XrdFfsMisc_get_list_of_data_servers | ( | char * | list | ) |
Definition at line 205 of file XrdFfsMisc.cc.
References free(), i, malloc(), p, XrdMonCtrCollector::port, pthread_mutex_lock(), pthread_mutex_unlock(), strcat(), strcpy(), XrdFfs_MAX_NUM_NODES, and XrdFfsMisc_getNameByAddr().
Referenced by XrdFfsMisc_xrd_init().
| char* XrdFfsMisc_getNameByAddr | ( | char * | ipaddr | ) |
Definition at line 107 of file XrdFfsMisc.cc.
References malloc(), strcpy(), and XrdFfsMisc_ip2nl().
Referenced by XrdFfsMisc_get_list_of_data_servers().
| uint32_t XrdFfsMisc_ip2nl | ( | char * | ip | ) |
| void XrdFfsMisc_refresh_url_cache | ( | const char * | url | ) |
Definition at line 237 of file XrdFfsMisc.cc.
References free(), i, malloc(), NULL, pthread_mutex_lock(), pthread_mutex_unlock(), XrdFfs_MAX_NUM_NODES, and XrdFfsMisc_get_all_urls().
Referenced by XrdPssSys::Configure(), and XrdFfsMisc_xrd_init().
| void XrdFfsMisc_xrd_init | ( | const char * | rdrurl, | |
| int | startQueue | |||
| ) |
Definition at line 261 of file XrdFfsMisc.cc.
References EnvPutInt, free(), getenv(), i, malloc(), NAME_DATASERVERCONN_TTL, NAME_FIRSTCONNECTMAXCNT, NAME_READAHEADSIZE, NAME_READCACHESIZE, NAME_REQUESTTIMEOUT, NULL, p1(), p2(), XrdFfs_MAX_NUM_NODES, XrdFfsDent_cache_init(), XrdFfsMisc_get_list_of_data_servers(), XrdFfsMisc_refresh_url_cache(), XrdFfsMisc_xrd_secsss_init(), XrdFfsQueue_count_workers(), and XrdFfsQueue_create_workers().
| void XrdFfsMisc_xrd_secsss_editurl | ( | char * | url, | |
| uid_t | user_uid | |||
| ) |
Definition at line 360 of file XrdFfsMisc.cc.
References sprintf(), strcat(), and strcpy().
Referenced by XrdFfsPosix_deleteall(), XrdFfsPosix_readdirall(), XrdFfsPosix_renameall(), XrdFfsPosix_statall(), and XrdFfsPosix_truncateall().
| void XrdFfsMisc_xrd_secsss_init | ( | ) |
Definition at line 331 of file XrdFfsMisc.cc.
References XrdSecsssID::idDynamic, XrdFfsMiscSssid, and XrdFfsMiscUent.
Referenced by XrdFfsMisc_xrd_init().
| void XrdFfsMisc_xrd_secsss_register | ( | uid_t | user_uid, | |
| gid_t | user_gid | |||
| ) |
Definition at line 338 of file XrdFfsMisc.cc.
References gr, XrdSecEntity::grps, XrdSecEntity::name, pthread_mutex_lock(), pthread_mutex_unlock(), passwd::pw_name, XrdSecsssID::Register(), sprintf(), XrdFfsMiscSssid, and XrdFfsMiscUent.
| char XrdFfsMiscCururl[1024] = "" |
Definition at line 165 of file XrdFfsMisc.cc.
| int XrdFfsMiscNcachedurls = 0 |
Definition at line 167 of file XrdFfsMisc.cc.
| bool XrdFfsMiscSecsss = false |
Definition at line 328 of file XrdFfsMisc.cc.
| pthread_mutex_t XrdFfsMiscSecsss_mutex = PTHREAD_MUTEX_INITIALIZER |
Definition at line 329 of file XrdFfsMisc.cc.
Definition at line 327 of file XrdFfsMisc.cc.
Referenced by XrdFfsMisc_xrd_secsss_init(), and XrdFfsMisc_xrd_secsss_register().
Definition at line 326 of file XrdFfsMisc.cc.
Referenced by XrdFfsMisc_xrd_secsss_init(), and XrdFfsMisc_xrd_secsss_register().
| char* XrdFfsMiscUrlcache[XrdFfs_MAX_NUM_NODES] |
Definition at line 166 of file XrdFfsMisc.cc.
| pthread_mutex_t XrdFfsMiscUrlcache_mutex = PTHREAD_MUTEX_INITIALIZER |
Definition at line 169 of file XrdFfsMisc.cc.
| time_t XrdFfsMiscUrlcachetime = 0 |
Definition at line 168 of file XrdFfsMisc.cc.
1.5.1