4#ifndef PROTOCORE_SPNEGO_H
5#define PROTOCORE_SPNEGO_H
42 size_t (*wrap_negotiate)(uint8_t *,
const uint8_t *, size_t, uint8_t *, size_t);
43 proto_bool (*parse_response)(uint8_t *,
const uint8_t *, size_t,
const uint8_t **,
size_t *);
44 size_t (*wrap_authenticate)(uint8_t *,
const uint8_t *, size_t, uint8_t *, size_t);
69 const uint8_t **protocore_resp_token,
size_t *protocore_resp_len);
#define PROTOCORE_NS_LAYOUT(T,...)
Pin every dispatch slot of a table that is nothing but function pointers.
#define PROTOCORE_NS
Storage for a dispatch table. The const is load bearing.
proto_bool protocore_spnego_parse_response(uint8_t *work, const uint8_t *blob, size_t len, const uint8_t **protocore_resp_token, size_t *protocore_resp_len)
Extract the responseToken (the NTLMSSP CHALLENGE) from a server .
size_t protocore_spnego_wrap_authenticate(uint8_t *work, const uint8_t *ntlm, size_t protocore_ntlm_len, uint8_t *out, size_t cap)
Wrap an NTLMSSP AUTHENTICATE token in a SPNEGO NegTokenResp (the .
size_t protocore_spnego_wrap_negotiate(uint8_t *work, const uint8_t *ntlm, size_t protocore_ntlm_len, uint8_t *out, size_t cap)
Wrap an NTLMSSP NEGOTIATE token in a SPNEGO GSS-API .
PROTOCORE_NS SpnegoNs Spnego PROTOCORE_UNUSED
Module namespace.
Dispatch table. Addressed by offset, so the layout is asserted below.
size_t(* wrap_negotiate)(uint8_t *, const uint8_t *, size_t, uint8_t *, size_t)
#define PROTOCORE_BEGIN_DECLS
Give a header's declarations C linkage, so their symbol names carry no parameter types.
_Bool proto_bool
The truth value.
#define PROTOCORE_END_DECLS