blob: fa3be37d12050cd71a76d1bb49650b1a30124b8d [file] [log] [blame]
Victor Boivie21509562021-04-07 08:57:28 +02001/*
2 * Copyright (c) 2021 The WebRTC project authors. All Rights Reserved.
3 *
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10#ifndef NET_DCSCTP_SOCKET_CAPABILITIES_H_
11#define NET_DCSCTP_SOCKET_CAPABILITIES_H_
12
Victor Boiviee0b45c22022-08-18 21:12:31 +000013#include <cstdint>
Victor Boivie21509562021-04-07 08:57:28 +020014namespace dcsctp {
15// Indicates what the association supports, meaning that both parties
16// support it and that feature can be used.
17struct Capabilities {
18 // RFC3758 Partial Reliability Extension
19 bool partial_reliability = false;
20 // RFC8260 Stream Schedulers and User Message Interleaving
21 bool message_interleaving = false;
22 // RFC6525 Stream Reconfiguration
23 bool reconfig = false;
Victor Boiviee0b45c22022-08-18 21:12:31 +000024 // Negotiated maximum incoming and outgoing stream count.
25 uint16_t negotiated_maximum_incoming_streams = 0;
26 uint16_t negotiated_maximum_outgoing_streams = 0;
Victor Boivie21509562021-04-07 08:57:28 +020027};
28} // namespace dcsctp
29
30#endif // NET_DCSCTP_SOCKET_CAPABILITIES_H_