00001 // Author: G. Ganis 08/07/05 00002 00003 /************************************************************************* 00004 * Copyright (C) 1995-2002, Rene Brun and Fons Rademakers. * 00005 * All rights reserved. * 00006 * * 00007 * For the licensing terms see $ROOTSYS/LICENSE. * 00008 * For the list of contributors see $ROOTSYS/README/CREDITS. * 00009 *************************************************************************/ 00010 00011 #ifndef ROOT_TVirtualAuth 00012 #define ROOT_TVirtualAuth 00013 00014 ////////////////////////////////////////////////////////////////////////// 00015 // // 00016 // TVirtualAuth // 00017 // // 00018 // Abstract interface for client authentication code. // 00019 // // 00020 ////////////////////////////////////////////////////////////////////////// 00021 00022 #ifndef ROOT_Rtypes 00023 #include "Rtypes.h" 00024 #endif 00025 00026 class TSecContext; 00027 class TSocket; 00028 00029 class TVirtualAuth { 00030 00031 public: 00032 TVirtualAuth() { } 00033 virtual ~TVirtualAuth() { } 00034 00035 virtual TSecContext *Authenticate(TSocket *, const char *host, 00036 const char *user, Option_t *options) = 0; 00037 virtual Int_t ClientVersion() = 0; 00038 virtual void ErrorMsg(const char *where, Int_t ecode) = 0; 00039 virtual const char *Name() = 0; 00040 00041 ClassDef(TVirtualAuth,0) // client auth interface 00042 }; 00043 00044 #endif