xrootd
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
XrdSecProtocolunix Class Reference
Inheritance diagram for XrdSecProtocolunix:
Inheritance graph
[legend]
Collaboration diagram for XrdSecProtocolunix:
Collaboration graph
[legend]

Public Member Functions

int Authenticate (XrdSecCredentials *cred, XrdSecParameters **parms, XrdOucErrInfo *einfo=0)
 
XrdSecCredentialsgetCredentials (XrdSecParameters *parm=0, XrdOucErrInfo *einfo=0)
 
 XrdSecProtocolunix (const char *hname, const struct sockaddr *ipadd)
 
void Delete ()
 Delete the protocol object. DO NOT use C++ delete() on this object. More...
 
- Public Member Functions inherited from XrdSecProtocol
virtual int Encrypt (const char *, int, XrdSecBuffer **)
 
virtual int Decrypt (const char *, int, XrdSecBuffer **)
 
virtual int Sign (const char *, int, XrdSecBuffer **)
 
virtual int Verify (const char *, int, const char *, int)
 
virtual int getKey (char *=0, int=0)
 
virtual int setKey (char *, int)
 
 XrdSecProtocol (const char *pName)
 Constructor. More...
 

Private Member Functions

 ~XrdSecProtocolunix ()
 

Private Attributes

struct sockaddr hostaddr
 
char * credBuff
 

Friends

class XrdSecProtocolDummy
 

Additional Inherited Members

- Public Attributes inherited from XrdSecProtocol
XrdSecEntity Entity
 
- Protected Member Functions inherited from XrdSecProtocol
virtual ~XrdSecProtocol ()
 Destructor (prevents use of direct delete). More...
 

Constructor & Destructor Documentation

XrdSecProtocolunix::XrdSecProtocolunix ( const char *  hname,
const struct sockaddr *  ipadd 
)
inline
XrdSecProtocolunix::~XrdSecProtocolunix ( )
inlineprivate

Member Function Documentation

int XrdSecProtocolunix::Authenticate ( XrdSecCredentials cred,
XrdSecParameters **  parms,
XrdOucErrInfo einfo = 0 
)
virtual

Authenticate a client.

Parameters
credCredentials supplied by the client.
parmsPlace where the address of additional authentication data is to be placed for another autrhentication handshake.
einfoThe 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.

References XrdSecBuffer::buffer, credBuff, XrdSecProtocol::Entity, XrdSecEntity::grps, XrdSecEntity::name, XrdSecEntity::prot, XrdOucErrInfo::setErrInfo(), and XrdSecBuffer::size.

void XrdSecProtocolunix::Delete ( )
inlinevirtual

Delete the protocol object. DO NOT use C++ delete() on this object.

Implements XrdSecProtocol.

XrdSecCredentials * XrdSecProtocolunix::getCredentials ( XrdSecParameters parm = 0,
XrdOucErrInfo einfo = 0 
)
virtual

Generate client credentials to be used in the authentication process.

Parameters
parmPointer to the information returned by the server either in the initial login response or the authmore response.
einfoThe 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.

References XrdOucUtils::GroupName(), and XrdOucUtils::UserName().

Friends And Related Function Documentation

friend class XrdSecProtocolDummy
friend

Member Data Documentation

char* XrdSecProtocolunix::credBuff
private
struct sockaddr XrdSecProtocolunix::hostaddr
private

The documentation for this class was generated from the following file: