#ifdef UNSAFE_BUFFERS_BUILD
#pragma allow_unsafe_buffers
#endif
#include "net/ntlm/ntlm_buffer_reader.h"
#include <string.h>
#include "base/check_op.h"
namespace net::ntlm {
NtlmBufferReader::NtlmBufferReader() = default;
NtlmBufferReader::NtlmBufferReader(base::span<const uint8_t> buffer)
: … { … }
NtlmBufferReader::~NtlmBufferReader() = default;
bool NtlmBufferReader::CanRead(size_t len) const { … }
bool NtlmBufferReader::CanReadFrom(size_t offset, size_t len) const { … }
bool NtlmBufferReader::ReadUInt16(uint16_t* value) { … }
bool NtlmBufferReader::ReadUInt32(uint32_t* value) { … }
bool NtlmBufferReader::ReadUInt64(uint64_t* value) { … }
bool NtlmBufferReader::ReadFlags(NegotiateFlags* flags) { … }
bool NtlmBufferReader::ReadBytes(base::span<uint8_t> buffer) { … }
bool NtlmBufferReader::ReadBytesFrom(const SecurityBuffer& sec_buf,
base::span<uint8_t> buffer) { … }
bool NtlmBufferReader::ReadPayloadAsBufferReader(const SecurityBuffer& sec_buf,
NtlmBufferReader* reader) { … }
bool NtlmBufferReader::ReadSecurityBuffer(SecurityBuffer* sec_buf) { … }
bool NtlmBufferReader::ReadAvPairHeader(TargetInfoAvId* avid, uint16_t* avlen) { … }
bool NtlmBufferReader::ReadTargetInfo(size_t target_info_len,
std::vector<AvPair>* av_pairs) { … }
bool NtlmBufferReader::ReadTargetInfoPayload(std::vector<AvPair>* av_pairs) { … }
bool NtlmBufferReader::ReadMessageType(MessageType* message_type) { … }
bool NtlmBufferReader::SkipSecurityBuffer() { … }
bool NtlmBufferReader::SkipSecurityBufferWithValidation() { … }
bool NtlmBufferReader::SkipBytes(size_t count) { … }
bool NtlmBufferReader::MatchSignature() { … }
bool NtlmBufferReader::MatchMessageType(MessageType message_type) { … }
bool NtlmBufferReader::MatchMessageHeader(MessageType message_type) { … }
bool NtlmBufferReader::MatchZeros(size_t count) { … }
bool NtlmBufferReader::MatchEmptySecurityBuffer() { … }
template <typename T>
bool NtlmBufferReader::ReadUInt(T* value) { … }
void NtlmBufferReader::SetCursor(size_t cursor) { … }
}