// Copyright 2012 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifdef UNSAFE_BUFFERS_BUILD // TODO(crbug.com/40285824): Remove this and convert code to safer constructs. #pragma allow_unsafe_buffers #endif #ifndef REMOTING_BASE_TYPED_BUFFER_H_ #define REMOTING_BASE_TYPED_BUFFER_H_ #include <assert.h> #include <stdint.h> #include <algorithm> #include "base/memory/raw_ptr.h" namespace remoting { // A scoper for a variable-length structure such as SID, SECURITY_DESCRIPTOR and // similar. These structures typically consist of a header followed by variable- // length data, so the size may not match sizeof(T). The class supports // move-only semantics and typed buffer getters. template <typename T> class TypedBuffer { … }; } // namespace remoting #endif // REMOTING_BASE_TYPED_BUFFER_H_