Class ProtocolResponse

  • All Implemented Interfaces:
    XrootdResponse<ProtocolRequest>

    public class ProtocolResponse
    extends AbstractXrootdResponse<ProtocolRequest>
    According to protocol, has the following packet structure:

    kXR_charstreamid[2]
    kXR_unt160
    kXR_int32dlen
    kXR_int32pval
    kXR_int32flags
    kXR_char'S'
    kXR_charrsvd
    kXR_charsecver
    kXR_charsecopt
    kXR_charseclvl
    kXR_charsecvsz
    {kXR_char,kXR_char}[reqidx,reqlvl]
    dlen is either 8, if no security requirements are returned, or 14 + secvsz*2.

    For the moment, the dCache server does not set any overrides, but merely communicates the security level (this determines which requests it expects to be preceded by a signed hash verification request). This may change in the future, so provision is made for non-zero secvsz.

    Signing can be enforced if the protocol does not provide encryption by setting a dCache property. In this case, secopt should be set to kXR_secOFrce