Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
222dfa1
[net] deprecate TRootAuth
jblomer Jan 20, 2026
c083a57
[net] deprecate TRootSecContext
jblomer Jan 20, 2026
85cdd8b
[net] remove unused forward declaration
jblomer Jan 21, 2026
ef7a20e
[net] deprecate THostAuth
jblomer Jan 21, 2026
f3a3095
[net] remove unused include
jblomer Jan 21, 2026
97b8226
[net] deprecate TAuthenticate
jblomer Jan 21, 2026
e4a3c9d
[net] make StdCheckSecCtx() static
jblomer Jan 21, 2026
4c73a8e
[net] remove unused friend declaration
jblomer Apr 1, 2026
0bf941e
[net] deprecate auth callbacks
jblomer Apr 1, 2026
445b44f
[net] deprecate auth constants
jblomer Apr 1, 2026
d689271
[net] remove unused friend declaration
jblomer Apr 2, 2026
d2acedc
[net] remove legacy auth tutorial
jblomer Apr 2, 2026
90a1b25
[NFC, net] add deprecation warning to auth README
jblomer Apr 2, 2026
78f58bc
[net] deprecate gAuthenticateMutex
jblomer Apr 2, 2026
6af4188
[net] deprecate R__rsa_* structs
jblomer Apr 2, 2026
3651070
[net] remove unused includes
jblomer Apr 2, 2026
20e6f38
[core] deprecate TVirtualAuth
jblomer Apr 2, 2026
87ae731
[net] deprecate TServerSocket authentication
jblomer Apr 2, 2026
61b3e71
[net] deprecate TPwdCtx
jblomer Apr 2, 2026
4e0a6ab
[net] deprecate TSecContextCleanup
jblomer Apr 2, 2026
686b368
[net] deprecate TSecContext
jblomer Apr 2, 2026
f3d4670
[core] deprecate TROOT::GetListOfSecContexts()
jblomer Apr 2, 2026
d543d0d
[net] deprecate TSocket::IsAuthenticated()
jblomer Apr 2, 2026
b93faff
[net] deprecate T*Socket::SetSecContext()
jblomer Apr 2, 2026
fca74b5
[net] deprecate T*Socket::GetSecContext()
jblomer Apr 2, 2026
b91d5fc
[net] deprecate TNetFileStager
jblomer Apr 2, 2026
9d9a6d4
[net] deprecate TNetSystem
jblomer Apr 2, 2026
6406d14
[net] deprecate TNetFile
jblomer Apr 2, 2026
d3bc68c
[net] deprecate TFTP
jblomer Apr 2, 2026
548d6f7
[net] deprecate TSocket::CreateAuthSocket()
jblomer Apr 9, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions README/README.AUTH
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# NOTE: The auth package is depcreated and will be remove in v6.42.
ROOT will not provide socket authentication anymore but assumes that TSocket connections are between trusted processes.
Consider using SSH tunneling if you need secure network connections.

Authentication to ROOT servers (TServerSocket)
==============================================

Expand Down
2 changes: 1 addition & 1 deletion core/base/inc/LinkDef3.h
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@
#pragma link C++ class TFileInfo+;
#pragma link C++ class TFileInfoMeta+;
#pragma link C++ class TFileCollection+;
#pragma link C++ class TVirtualAuth;
#pragma link C++ class ROOT::Deprecated::TVirtualAuth;
#pragma link C++ class TVirtualMutex;
#pragma link C++ class ROOT::TVirtualRWMutex;
#pragma link C++ class TLockGuard;
Expand Down
9 changes: 8 additions & 1 deletion core/base/inc/TROOT.h
Original file line number Diff line number Diff line change
Expand Up @@ -99,10 +99,15 @@ namespace ROOT {
UInt_t GetThreadPoolSize();
}

namespace ROOT::Deprecated::Internal {
TSeqCollection *GetListOfSecContexts(const TROOT &);
} // namespace ROOT::Deprecated::Internal

class TROOT : public TDirectory {

friend class TCling;
friend TROOT *ROOT::Internal::GetROOT2();
friend TSeqCollection *ROOT::Deprecated::Internal::GetListOfSecContexts(const TROOT &);

private:
Int_t fLineIsProcessing = 0; ///< To synchronize multi-threads
Expand Down Expand Up @@ -256,7 +261,9 @@ friend TROOT *ROOT::Internal::GetROOT2();
TSeqCollection *GetListOfStreamerInfo() const { return fStreamerInfo; }
TSeqCollection *GetListOfMessageHandlers() const { return fMessageHandlers; }
TCollection *GetListOfClassGenerators() const { return fClassGenerators; }
TSeqCollection *GetListOfSecContexts() const { return fSecContexts; }
TSeqCollection *GetListOfSecContexts() const
R__DEPRECATED(6, 42, "GetListOfSecContexts is deprecated. See README.AUTH for details.")
{ return ROOT::Deprecated::Internal::GetListOfSecContexts(*this); }
TSeqCollection *GetClipboard() const { return fClipboard; }
TSeqCollection *GetListOfDataSets() const { return fDataSets; }
TCollection *GetListOfEnums(Bool_t load = kFALSE);
Expand Down
11 changes: 10 additions & 1 deletion core/base/inc/TVirtualAuth.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,12 @@

#include "Rtypes.h"

class TSecContext;
class TSocket;

namespace ROOT::Deprecated {

class TSecContext;

class TVirtualAuth {

public:
Expand All @@ -39,4 +42,10 @@ class TVirtualAuth {
ClassDef(TVirtualAuth,0) // client auth interface
};

} // namespace ROOT::Deprecated

using TVirtualAuth R__DEPRECATED(6, 42, "TVirtualAuth is deprecated. ROOT will not provide "
"socket authentication anymore but assumes that TSocket connections are between trusted processes. "
"Consider using SSH tunneling if you need secure network connections.") = ROOT::Deprecated::TVirtualAuth;

#endif
7 changes: 6 additions & 1 deletion core/base/src/TROOT.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,11 @@ FARPROC dlsym(void *library, const char *function_name)
#include "TWinNTSystem.h"
#endif

TSeqCollection *ROOT::Deprecated::Internal::GetListOfSecContexts(const TROOT &r)
{
return r.fSecContexts;
}

extern "C" void R__SetZipMode(int);

static DestroyInterpreter_t *gDestroyInterpreter = nullptr;
Expand Down Expand Up @@ -2835,7 +2840,7 @@ void TROOT::SetBatch(Bool_t batch)
/// interactive mode.
/// - "server:port": turns the web display into server mode with specified port. Web widgets will not be displayed,
/// only text message with window URL will be printed on standard output
///
///
/// \note See more details related to webdisplay on RWebWindowsManager::ShowWindow

void TROOT::SetWebDisplay(const char *webdisplay)
Expand Down
28 changes: 14 additions & 14 deletions etc/plugins/TFile/P120_TNetFile.C
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
void P120_TNetFile()
{
gPluginMgr->AddHandler("TFile", "^rootd:", "TNetFile",
"Net", "TNetFile(const char*,Option_t*,const char*,Int_t,Int_t)");
gPluginMgr->AddHandler("TFile", "^rootup:", "TNetFile",
"Net", "TNetFile(const char*,Option_t*,const char*,Int_t,Int_t)");
gPluginMgr->AddHandler("TFile", "^roots:", "TNetFile",
"Net", "TNetFile(const char*,Option_t*,const char*,Int_t,Int_t)");
gPluginMgr->AddHandler("TFile", "^rootk:", "TNetFile",
"Net", "TNetFile(const char*,Option_t*,const char*,Int_t,Int_t)");
gPluginMgr->AddHandler("TFile", "^rootg:", "TNetFile",
"Net", "TNetFile(const char*,Option_t*,const char*,Int_t,Int_t)");
gPluginMgr->AddHandler("TFile", "^rooth:", "TNetFile",
"Net", "TNetFile(const char*,Option_t*,const char*,Int_t,Int_t)");
gPluginMgr->AddHandler("TFile", "^rootug:", "TNetFile",
"Net", "TNetFile(const char*,Option_t*,const char*,Int_t,Int_t)");
gPluginMgr->AddHandler("TFile", "^rootd:", "ROOT::Deprecated::TNetFile",
"Net", "ROOT::Deprecated::TNetFile(const char*,Option_t*,const char*,Int_t,Int_t)");
gPluginMgr->AddHandler("TFile", "^rootup:", "ROOT::Deprecated::TNetFile",
"Net", "ROOT::Deprecated::TNetFile(const char*,Option_t*,const char*,Int_t,Int_t)");
gPluginMgr->AddHandler("TFile", "^roots:", "ROOT::Deprecated::TNetFile",
"Net", "ROOT::Deprecated::TNetFile(const char*,Option_t*,const char*,Int_t,Int_t)");
gPluginMgr->AddHandler("TFile", "^rootk:", "ROOT::Deprecated::TNetFile",
"Net", "ROOT::Deprecated::TNetFile(const char*,Option_t*,const char*,Int_t,Int_t)");
gPluginMgr->AddHandler("TFile", "^rootg:", "ROOT::Deprecated::TNetFile",
"Net", "ROOT::Deprecated::TNetFile(const char*,Option_t*,const char*,Int_t,Int_t)");
gPluginMgr->AddHandler("TFile", "^rooth:", "ROOT::Deprecated::TNetFile",
"Net", "ROOT::Deprecated::TNetFile(const char*,Option_t*,const char*,Int_t,Int_t)");
gPluginMgr->AddHandler("TFile", "^rootug:", "ROOT::Deprecated::TNetFile",
"Net", "ROOT::Deprecated::TNetFile(const char*,Option_t*,const char*,Int_t,Int_t)");
}
28 changes: 14 additions & 14 deletions etc/plugins/TFileStager/P020_TNetFileStager.C
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
void P020_TNetFileStager()
{
gPluginMgr->AddHandler("TFileStager", "^rootd:", "TNetFileStager",
"Net", "TNetFileStager(const char *)");
gPluginMgr->AddHandler("TFileStager", "^rootup:", "TNetFileStager",
"Net", "TNetFileStager(const char *)");
gPluginMgr->AddHandler("TFileStager", "^roots:", "TNetFileStager",
"Net", "TNetFileStager(const char *)");
gPluginMgr->AddHandler("TFileStager", "^rootk:", "TNetFileStager",
"Net", "TNetFileStager(const char *)");
gPluginMgr->AddHandler("TFileStager", "^rootg:", "TNetFileStager",
"Net", "TNetFileStager(const char *)");
gPluginMgr->AddHandler("TFileStager", "^rooth:", "TNetFileStager",
"Net", "TNetFileStager(const char *)");
gPluginMgr->AddHandler("TFileStager", "^rootug:", "TNetFileStager",
"Net", "TNetFileStager(const char *)");
gPluginMgr->AddHandler("TFileStager", "^rootd:", "ROOT::Deprecated::TNetFileStager",
"Net", "ROOT::Deprecated::TNetFileStager(const char *)");
gPluginMgr->AddHandler("TFileStager", "^rootup:", "ROOT::Deprecated::TNetFileStager",
"Net", "ROOT::Deprecated::TNetFileStager(const char *)");
gPluginMgr->AddHandler("TFileStager", "^roots:", "ROOT::Deprecated::TNetFileStager",
"Net", "ROOT::Deprecated::TNetFileStager(const char *)");
gPluginMgr->AddHandler("TFileStager", "^rootk:", "ROOT::Deprecated::TNetFileStager",
"Net", "ROOT::Deprecated::TNetFileStager(const char *)");
gPluginMgr->AddHandler("TFileStager", "^rootg:", "ROOT::Deprecated::TNetFileStager",
"Net", "ROOT::Deprecated::TNetFileStager(const char *)");
gPluginMgr->AddHandler("TFileStager", "^rooth:", "ROOT::Deprecated::TNetFileStager",
"Net", "ROOT::Deprecated::TNetFileStager(const char *)");
gPluginMgr->AddHandler("TFileStager", "^rootug:", "ROOT::Deprecated::TNetFileStager",
"Net", "ROOT::Deprecated::TNetFileStager(const char *)");
}
28 changes: 14 additions & 14 deletions etc/plugins/TSystem/P070_TNetSystem.C
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
void P070_TNetSystem()
{
gPluginMgr->AddHandler("TSystem", "^rootd:", "TNetSystem",
"Net", "TNetSystem(const char *,Bool_t)");
gPluginMgr->AddHandler("TSystem", "^rootup:", "TNetSystem",
"Net", "TNetSystem(const char *,Bool_t)");
gPluginMgr->AddHandler("TSystem", "^roots:", "TNetSystem",
"Net", "TNetSystem(const char *,Bool_t)");
gPluginMgr->AddHandler("TSystem", "^rootk:", "TNetSystem",
"Net", "TNetSystem(const char *,Bool_t)");
gPluginMgr->AddHandler("TSystem", "^rootg:", "TNetSystem",
"Net", "TNetSystem(const char *,Bool_t)");
gPluginMgr->AddHandler("TSystem", "^rooth:", "TNetSystem",
"Net", "TNetSystem(const char *,Bool_t)");
gPluginMgr->AddHandler("TSystem", "^rootug:", "TNetSystem",
"Net", "TNetSystem(const char *,Bool_t)");
gPluginMgr->AddHandler("TSystem", "^rootd:", "ROOT::Deprecated::TNetSystem",
"Net", "ROOT::Deprecated::TNetSystem(const char *,Bool_t)");
gPluginMgr->AddHandler("TSystem", "^rootup:", "ROOT::Deprecated::TNetSystem",
"Net", "ROOT::Deprecated::TNetSystem(const char *,Bool_t)");
gPluginMgr->AddHandler("TSystem", "^roots:", "ROOT::Deprecated::TNetSystem",
"Net", "ROOT::Deprecated::TNetSystem(const char *,Bool_t)");
gPluginMgr->AddHandler("TSystem", "^rootk:", "ROOT::Deprecated::TNetSystem",
"Net", "ROOT::Deprecated::TNetSystem(const char *,Bool_t)");
gPluginMgr->AddHandler("TSystem", "^rootg:", "ROOT::Deprecated::TNetSystem",
"Net", "ROOT::Deprecated::TNetSystem(const char *,Bool_t)");
gPluginMgr->AddHandler("TSystem", "^rooth:", "ROOT::Deprecated::TNetSystem",
"Net", "ROOT::Deprecated::TNetSystem(const char *,Bool_t)");
gPluginMgr->AddHandler("TSystem", "^rootug:", "ROOT::Deprecated::TNetSystem",
"Net", "ROOT::Deprecated::TNetSystem(const char *,Bool_t)");
}
4 changes: 2 additions & 2 deletions etc/plugins/TVirtualAuth/P010_TRootAuth.C
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
void P010_TRootAuth()
{
gPluginMgr->AddHandler("TVirtualAuth", "Root", "TRootAuth",
"RootAuth", "TRootAuth()");
gPluginMgr->AddHandler("TVirtualAuth", "Root", "ROOT::Deprecated::TRootAuth",
"RootAuth", "ROOT::Deprecated::TRootAuth()");
}
2 changes: 1 addition & 1 deletion io/io/src/TFile.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -3985,7 +3985,7 @@ TFile *TFile::Open(const char *url, Option_t *options, const char *ftitle,
if (h->LoadPlugin() == -1)
return nullptr;
TClass *cl = TClass::GetClass(h->GetClass());
if (cl && cl->InheritsFrom("TNetFile"))
if (cl && cl->InheritsFrom("ROOT::Deprecated::TNetFile"))
f = (TFile*) h->ExecPlugin(5, name.Data(), option, ftitle, compress, netopt);
else
f = (TFile*) h->ExecPlugin(4, name.Data(), option, ftitle, compress);
Expand Down
18 changes: 18 additions & 0 deletions net/auth/inc/AuthConst.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@

#include "RtypesCore.h"

namespace ROOT::Deprecated {

// Number of security levels and masks
const Int_t kMAXSEC = 6;
const Int_t kMAXSECBUF = 4096;
Expand All @@ -33,4 +35,20 @@ const Int_t kMAXRSATRIES = 100;
const Int_t kPRIMELENGTH = 20;
const Int_t kPRIMEEXP = 40;

} // namespace ROOT::Deprecated

const Int_t kMAXSEC R__DEPRECATED(6, 42, "the RootAuth library is deprecated") = ROOT::Deprecated::kMAXSEC;
const Int_t kMAXSECBUF R__DEPRECATED(6, 42, "the RootAuth library is deprecated") = ROOT::Deprecated::kMAXSECBUF;
const Int_t kAUTH_REUSE_MSK R__DEPRECATED(6, 42, "the RootAuth library is deprecated") =
ROOT::Deprecated::kAUTH_REUSE_MSK;
const Int_t kAUTH_CRYPT_MSK R__DEPRECATED(6, 42, "the RootAuth library is deprecated") =
ROOT::Deprecated::kAUTH_CRYPT_MSK;
const Int_t kAUTH_SSALT_MSK R__DEPRECATED(6, 42, "the RootAuth library is deprecated") =
ROOT::Deprecated::kAUTH_SSALT_MSK;
const Int_t kAUTH_RSATY_MSK R__DEPRECATED(6, 42, "the RootAuth library is deprecated") =
ROOT::Deprecated::kAUTH_RSATY_MSK;
const Int_t kMAXRSATRIES R__DEPRECATED(6, 42, "the RootAuth library is deprecated") = ROOT::Deprecated::kMAXRSATRIES;
const Int_t kPRIMELENGTH R__DEPRECATED(6, 42, "the RootAuth library is deprecated") = ROOT::Deprecated::kPRIMELENGTH;
const Int_t kPRIMEEXP R__DEPRECATED(6, 42, "the RootAuth library is deprecated") = ROOT::Deprecated::kPRIMEEXP;

#endif
8 changes: 4 additions & 4 deletions net/auth/inc/LinkDefRoot.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@
#pragma link off all classes;
#pragma link off all functions;

#pragma link C++ class TAuthenticate;
#pragma link C++ class THostAuth;
#pragma link C++ class TRootAuth;
#pragma link C++ class TRootSecContext;
#pragma link C++ class ROOT::Deprecated::TAuthenticate;
#pragma link C++ class ROOT::Deprecated::THostAuth;
#pragma link C++ class ROOT::Deprecated::TRootAuth;
#pragma link C++ class ROOT::Deprecated::TRootSecContext;

#endif
43 changes: 28 additions & 15 deletions net/auth/inc/TAuthenticate.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,30 +30,33 @@
#endif
#include "AuthConst.h"

class TAuthenticate;
class THostAuth;
class TPluginHandler;
class TSocket;
class TRootSecContext;
class TVirtualMutex;

typedef Int_t (*CheckSecCtx_t)(const char *subj, TRootSecContext *ctx);
typedef Int_t (*GlobusAuth_t)(TAuthenticate *auth, TString &user, TString &det);
typedef Int_t (*Krb5Auth_t)(TAuthenticate *auth, TString &user, TString &det, Int_t version);
typedef Int_t (*SecureAuth_t)(TAuthenticate *auth, const char *user, const char *passwd,
const char *remote, TString &det, Int_t version);

R__EXTERN TVirtualMutex *gAuthenticateMutex;
namespace ROOT::Deprecated {

struct R__rsa_KEY; // opaque replacement for rsa_KEY
struct R__rsa_KEY_export; // opaque replacement for rsa_KEY_export
struct R__rsa_NUMBER; // opaque replacement for rsa_NUMBER

R__EXTERN TVirtualMutex *gAuthenticateMutex;

class TAuthenticate;
class THostAuth;
class TRootAuth;
class TRootSecContext;

typedef Int_t (*CheckSecCtx_t)(const char *subj, ROOT::Deprecated::TRootSecContext *ctx);
typedef Int_t (*GlobusAuth_t)(ROOT::Deprecated::TAuthenticate *auth, TString &user, TString &det);
typedef Int_t (*Krb5Auth_t)(ROOT::Deprecated::TAuthenticate *auth, TString &user, TString &det, Int_t version);
typedef Int_t (*SecureAuth_t)(ROOT::Deprecated::TAuthenticate *auth, const char *user, const char *passwd,
const char *remote, TString &det, Int_t version);

class TAuthenticate : public TObject {

friend class TRootAuth;
friend class TRootSecContext;
friend class TSocket;
friend class ROOT::Deprecated::TRootAuth;
friend class ROOT::Deprecated::TRootSecContext;

public:
enum ESecurity {
Expand Down Expand Up @@ -172,13 +175,13 @@ friend class TSocket;
static const char *GetGlobalUser();
static GlobusAuth_t GetGlobusAuthHook();
static THostAuth *GetHostAuth(const char *host, const char *user="",
Option_t *opt = "R", Int_t *Exact = nullptr);
Option_t *opt = "R", Int_t *Exact = nullptr);
static const char *GetKrb5Principal();
static Bool_t GetPromptUser();
static Int_t GetRSAInit();
static const char *GetRSAPubExport(Int_t key = 0);
static THostAuth *HasHostAuth(const char *host, const char *user,
Option_t *opt = "R");
Option_t *opt = "R");
static void InitRandom();
static void MergeHostAuthList(TList *Std, TList *New, Option_t *Opt = "");
static char *PromptPasswd(const char *prompt = "Password: ");
Expand Down Expand Up @@ -210,4 +213,14 @@ friend class TSocket;
ClassDefOverride(TAuthenticate,0) // Class providing remote authentication service
};

} // namespace ROOT::Deprecated

R__EXTERN TVirtualMutex *&gAuthenticateMutex R__DEPRECATED(6, 42, "the RootAuth library is deprecated");

using CheckSecCtx_t R__DEPRECATED(6, 42, "the RootAuth library is deprecated") = ROOT::Deprecated::CheckSecCtx_t;
using GlobusAuth_t R__DEPRECATED(6, 42, "the RootAuth library is deprecated") = ROOT::Deprecated::GlobusAuth_t;
using Krb5Auth_t R__DEPRECATED(6, 42, "the RootAuth library is deprecated") = ROOT::Deprecated::Krb5Auth_t;
using SecureAuth_t R__DEPRECATED(6, 42, "the RootAuth library is deprecated") = ROOT::Deprecated::SecureAuth_t;
using TAuthenticate R__DEPRECATED(6, 42, "the RootAuth library is deprecated") = ROOT::Deprecated::TAuthenticate;

#endif
6 changes: 6 additions & 0 deletions net/auth/inc/THostAuth.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@

#include "TSecContext.h" // for kROOTTZERO.

namespace ROOT::Deprecated {

class THostAuth : public TObject {

private:
Expand Down Expand Up @@ -110,4 +112,8 @@ class THostAuth : public TObject {
ClassDefOverride(THostAuth,1) // Class providing host specific authentication information
};

} // namespace ROOT::Deprecated

using THostAuth R__DEPRECATED(6, 42, "the RootAuth library is deprecated") = ROOT::Deprecated::THostAuth;

#endif
9 changes: 8 additions & 1 deletion net/auth/inc/TRootAuth.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,12 @@
#include "TVirtualAuth.h"
#include "Rtypes.h"

class TSecContext;
class TSocket;

namespace ROOT::Deprecated {

class TSecContext;

class TRootAuth : public TVirtualAuth {

public:
Expand All @@ -43,4 +46,8 @@ class TRootAuth : public TVirtualAuth {
ClassDefOverride(TRootAuth,0) // client auth interface
};

} // namespace ROOT::Deprecated

using TRootAuth R__DEPRECATED(6, 42, "the RootAuth library is deprecated") = ROOT::Deprecated::TRootAuth;

#endif
6 changes: 6 additions & 0 deletions net/auth/inc/TRootSecContext.h
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@
#include "TAuthenticate.h"
#include "TSecContext.h"

namespace ROOT::Deprecated {

class TRootSecContext : public TSecContext {

private:
Expand Down Expand Up @@ -51,4 +53,8 @@ class TRootSecContext : public TSecContext {
ClassDefOverride(TRootSecContext,0) // Class providing host specific authentication information
};

}

using TRootSecContext R__DEPRECATED(6, 42, "the RootAuth library is deprecated") = ROOT::Deprecated::TRootSecContext;

#endif
Loading
Loading