#include <XrdSecProtect.hh>
virtual XrdSecProtect::~XrdSecProtect |
( |
| ) |
|
|
inlinevirtual |
XrdSecProtect::XrdSecProtect |
( |
XrdSecProtocol * |
aprot = 0 , |
|
|
bool |
edok = true |
|
) |
| |
|
inlineprotected |
virtual void XrdSecProtect::Delete |
( |
| ) |
|
|
inlinevirtual |
Delete this object. Use this method as opposed to operator delete.
bool XrdSecProtect::GetSHA2 |
( |
unsigned char * |
hBuff, |
|
|
struct iovec * |
iovP, |
|
|
int |
iovN |
|
) |
| |
|
private |
Secure a request.
Request securement is optional and this call should be gaurded by an if statement to avoid securing requests that need not be secured as follows:
if (NEED2SECURE(<protP>)(thereq)) result = <protP>->Secure(....); else result = 0;
Modify the above to your particuar needs but gaurd the call!
- Parameters
-
newreq | A reference to a pointer where the new request, if needed, will be placed. The new request will consist of a kXR_sigver request followed by hash. The request buffer must be freed using free() when it is no longer needed. |
thereq | Reference to the client request header/body that needs to be secured. The request must be in network byte order. thedata The request data whose length resides in theReq.dlen. If thedata is nil but thereq.dlen is not zero then the request data must follow the request header in the thereq buffer. |
- Returns
- <0 An error occurred and the return value is -errno.
-
>0 The length of the new request whose pointer is in newreq. This is the nuber of bytes that must be sent.
Verify that a request was properly secured.
- Parameters
-
secreq | A reference to the kXR_sigver request followed by whatever data was sent (normally an encrypted verification hash). All but the request code must be in network byte order. |
thereq | Reference to the client request header/body that needs to be verified. The request must be in network byte order. thedata The request data whose length resides in theReq.dlen. |
- Returns
- Upon success zero is returned. Otherwise a pointer to a null delimited string describing the problem is returned.
char XrdSecProtect::myVec[maxRIX] |
|
private |
bool(XrdSecProtect::* XrdSecProtect::Need2Secure)(ClientRequest &thereq) |
Test whether or not a request needs to be secured. This method pointer should only be invoked via the NEED2SECURE macro (see above).
- Parameters
-
thereq | Reference to the request header/body in network byte order. |
- Returns
- false - request need not be secured (equals false).
-
true - request needs to be secured.
const char* XrdSecProtect::secVec |
|
private |
bool XrdSecProtect::secVerData |
|
private |
The documentation for this class was generated from the following file: