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: