21#include "RConfigure.h"
44 const char *token,
TDatime expdate,
void *ctx)
70 gROOT->GetListOfSecContexts()->Add(
this);
79 const char *token,
const char *
id,
106 gROOT->GetListOfSecContexts()->Add(
this);
169 if (nscl !=
this && !strcmp(nscl->
GetHost(),
fHost.Data())) {
195 Bool_t clean = (strstr(Opt,
"C") || strstr(Opt,
"c"));
199 Bool_t remove = (strstr(Opt,
"R") || strstr(Opt,
"r"));
203 gROOT->GetListOfSecContexts()->Remove(
this);
256 for (;
i < (
Int_t)strlen(opt);
i++) {
257 if (opt[
i] < 48 || opt[
i] > 57) {
268 snprintf(aOrd,
sizeof(aOrd),
"%d)", ord);
272 strlcat(aSpc,
" ",
sizeof(aSpc));
275 if (!strncasecmp(opt,
"F",1)) {
277 "+------------------------------------------------------+");
279 "+ Host:%s Method:%d (%s) User:'%s'",
286 "+ Expiration time: %s",
fExpDate.AsString());
288 "+------------------------------------------------------+");
289 }
else if (!strncasecmp(opt,
"S",1)) {
291 Printf(
"Security context: Method: %d (%s) expiring on %s",
295 Printf(
"Security context: Method: %d (%s) not reusable",
300 Info(
"PrintEstblshed",
"+ %s h:%s met:%d (%s) us:'%s'",
303 Info(
"PrintEstblshed",
"+ %s offset:%d id:%s", aSpc,
fOffSet,
fID.Data());
305 Info(
"PrintEstblshed",
"+ %s expiring: %s",aSpc,
fExpDate.AsString());
317 out =
Form(
"Method: %d (%s) expiring on %s",
323 out =
Form(
"Method: %d (%s) authorized by /etc/hosts.equiv or $HOME/.rhosts",
326 out =
Form(
"No authentication required remotely");
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h offset
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize id
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t UChar_t len
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t type
externTVirtualMutex * gROOTMutex
R__EXTERN const TDatime kROOTTZERO
char * Form(const char *fmt,...)
Formats a string in a circular formatting buffer.
void Printf(const char *fmt,...)
Formats a string in a circular formatting buffer and prints the string.
#define R__LOCKGUARD(mutex)
This class stores the date and time with a precision of one second in an unsigned 32 bit word (950130...
void AbstractMethod(const char *method) const
Use this method to implement an "abstract" method that you don't want to leave purely abstract.
TObject & operator=(const TObject &rhs)
TObject assignment operator.
TObject()
TObject constructor.
virtual void Info(const char *method, const char *msgfmt,...) const
Issue info message.
Bool_t IsActive() const
Check remote OffSet and expiring Date.
void Cleanup()
Cleanup what is still active.
const char * GetHost() const
void AddForCleanup(Int_t port, Int_t proto, Int_t type)
Create a new TSecContextCleanup Internally is added to the list.
const char * GetMethodName() const
virtual ~TSecContext()
Dtor: delete (deActivate, local/remote cleanup, list removal) all what is still active.
virtual void DeActivate(Option_t *opt="CR")
Set OffSet to -1 and expiring Date to default Remove from the list If Opt contains "C" or "c",...
TClass * IsA() const override
TSecContext & operator=(const TSecContext &)
assignement operator
TSecContext(const TSecContext &)
copy constructor
virtual const char * AsString(TString &out)
Returns short string with relevant information about this security context.
void Print(Option_t *option="F") const override
If opt is "F" (default) print object content.
virtual Bool_t CleanupSecContext(Bool_t all)
Ask remote client to cleanup security context 'ctx' If 'all', all sec context with the same host as c...
This class represents a WWW compatible URL.
const char * GetUser() const
const char * GetHost() const