summaryrefslogtreecommitdiff
path: root/vendor/github.com/pion/dtls/v2/pkg/protocol/extension/srtp_protection_profile.go
blob: 2c4d1d4a63e1b9cd72dfbbeca11bba83ff02ea68 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package extension

// SRTPProtectionProfile defines the parameters and options that are in effect for the SRTP processing
// https://tools.ietf.org/html/rfc5764#section-4.1.2
type SRTPProtectionProfile uint16

const (
	SRTP_AES128_CM_HMAC_SHA1_80 SRTPProtectionProfile = 0x0001 // nolint
	SRTP_AES128_CM_HMAC_SHA1_32 SRTPProtectionProfile = 0x0002 // nolint
	SRTP_AEAD_AES_128_GCM       SRTPProtectionProfile = 0x0007 // nolint
	SRTP_AEAD_AES_256_GCM       SRTPProtectionProfile = 0x0008 // nolint
)

func srtpProtectionProfiles() map[SRTPProtectionProfile]bool {
	return map[SRTPProtectionProfile]bool{
		SRTP_AES128_CM_HMAC_SHA1_80: true,
		SRTP_AES128_CM_HMAC_SHA1_32: true,
		SRTP_AEAD_AES_128_GCM:       true,
		SRTP_AEAD_AES_256_GCM:       true,
	}
}