XrdSecTLayer Class Reference
#include <XrdSecTLayer.hh>
List of all members.
Classes |
struct | TLayerRR |
Public Types |
enum | Initiator { isClient = 0,
isServer
} |
Public Member Functions |
| XrdSecTLayer (const char *pName, Initiator who1st=isClient) |
virtual void | secClient (int theFD, XrdOucErrInfo *einfo)=0 |
virtual void | secServer (int theFD, XrdOucErrInfo *einfo)=0 |
virtual void | Delete ()=0 |
| Delete the protocol object. DO NOT use C++ delete() on this object.
|
virtual int | Authenticate (XrdSecCredentials *cred, XrdSecParameters **parms, XrdOucErrInfo *einfo=0) |
virtual XrdSecCredentials * | getCredentials (XrdSecParameters *parm=0, XrdOucErrInfo *einfo=0) |
void | secXeq () |
Protected Member Functions |
virtual | ~XrdSecTLayer () |
Protected Attributes |
pthread_t | secTid |
Private Member Functions |
int | bootUp (Initiator Who) |
int | Read (int FD, char *Buff, int rdLen) |
int | secDone () |
void | secDrain () |
const char * | secErrno (int rc, char *buff) |
void | secError (const char *Msg, int rc, int iserrno=1) |
Private Attributes |
XrdSysSemaphore | mySem |
Initiator | Starter |
Initiator | Responder |
int | myFD |
int | urFD |
int | Tmax |
int | Tcur |
int | eCode |
char * | eText |
XrdOucErrInfo * | eDest |
struct XrdSecTLayer::TLayerRR | Hdr |
Static Private Attributes |
static const int | buffSz = 8192 |
static const int | hdrSz = sizeof(TLayerRR) |
static const int | dataSz = buffSz - hdrSz |
Member Enumeration Documentation
Constructor & Destructor Documentation
XrdSecTLayer::XrdSecTLayer |
( |
const char * |
pName, |
|
|
Initiator |
who1st = isClient | |
|
) |
| | |
virtual XrdSecTLayer::~XrdSecTLayer |
( |
|
) |
[inline, protected, virtual] |
Member Function Documentation
Authenticate a client.
- Parameters:
-
| cred | Credentials supplied by the client. |
| parms | Place where the address of additional authentication data is to be placed for another autrhentication handshake. |
| einfo | The error information object where error messages should be placed. The messages are returned to the client. Should einfo be null, messages should be written to stderr. |
- Returns:
- > 0 -> parms present (more authentication needed) = 0 -> Entity present (authentication suceeded) < 0 -> einfo present (error has occured)
Implements XrdSecProtocol.
int XrdSecTLayer::bootUp |
( |
Initiator |
Who |
) |
[private] |
virtual void XrdSecTLayer::Delete |
( |
|
) |
[pure virtual] |
Delete the protocol object. DO NOT use C++ delete() on this object.
Implements XrdSecProtocol.
Generate client credentials to be used in the authentication process.
- Parameters:
-
| parm | Pointer to the information returned by the server either in the initial login response or the authmore response. |
| einfo | The error information object where error messages should be placed. The messages are returned to the client. Should einfo be null, messages should be written to stderr. |
- Returns:
- Success: Pointer to credentials to sent to the server. The caller is responsible for deleting the object. Failure: Null pointer with einfo, if supplied, containing the reason for the failure.
Implements XrdSecProtocol.
int XrdSecTLayer::Read |
( |
int |
FD, |
|
|
char * |
Buff, |
|
|
int |
rdLen | |
|
) |
| | [private] |
virtual void XrdSecTLayer::secClient |
( |
int |
theFD, |
|
|
XrdOucErrInfo * |
einfo | |
|
) |
| | [pure virtual] |
int XrdSecTLayer::secDone |
( |
|
) |
[private] |
void XrdSecTLayer::secDrain |
( |
|
) |
[private] |
const char* XrdSecTLayer::secErrno |
( |
int |
rc, |
|
|
char * |
buff | |
|
) |
| | [private] |
void XrdSecTLayer::secError |
( |
const char * |
Msg, |
|
|
int |
rc, |
|
|
int |
iserrno = 1 | |
|
) |
| | [private] |
virtual void XrdSecTLayer::secServer |
( |
int |
theFD, |
|
|
XrdOucErrInfo * |
einfo | |
|
) |
| | [pure virtual] |
void XrdSecTLayer::secXeq |
( |
|
) |
|
Member Data Documentation
The documentation for this class was generated from the following file: