mirror of
https://github.com/pion/webrtc.git
synced 2025-10-05 23:26:58 +08:00
Upgrade pion/dtls to v2.0.0-rc.6
Follow dtls module API and module path update.
This commit is contained in:
@@ -14,7 +14,7 @@ import (
|
|||||||
"math/big"
|
"math/big"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/pion/dtls/v2"
|
"github.com/pion/dtls/v2/pkg/crypto/fingerprint"
|
||||||
"github.com/pion/webrtc/v2/pkg/rtcerr"
|
"github.com/pion/webrtc/v2/pkg/rtcerr"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -94,17 +94,21 @@ func (c Certificate) Expires() time.Time {
|
|||||||
// GetFingerprints returns the list of certificate fingerprints, one of which
|
// GetFingerprints returns the list of certificate fingerprints, one of which
|
||||||
// is computed with the digest algorithm used in the certificate signature.
|
// is computed with the digest algorithm used in the certificate signature.
|
||||||
func (c Certificate) GetFingerprints() ([]DTLSFingerprint, error) {
|
func (c Certificate) GetFingerprints() ([]DTLSFingerprint, error) {
|
||||||
fingerprintAlgorithms := []dtls.HashAlgorithm{dtls.HashAlgorithmSHA256}
|
fingerprintAlgorithms := []crypto.Hash{crypto.SHA256}
|
||||||
res := make([]DTLSFingerprint, len(fingerprintAlgorithms))
|
res := make([]DTLSFingerprint, len(fingerprintAlgorithms))
|
||||||
|
|
||||||
i := 0
|
i := 0
|
||||||
for _, algo := range fingerprintAlgorithms {
|
for _, algo := range fingerprintAlgorithms {
|
||||||
value, err := dtls.Fingerprint(c.x509Cert, algo)
|
name, err := fingerprint.StringFromHash(algo)
|
||||||
|
if err != nil {
|
||||||
|
return nil, fmt.Errorf("failed to create fingerprint: %v", err)
|
||||||
|
}
|
||||||
|
value, err := fingerprint.Fingerprint(c.x509Cert, algo)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("failed to create fingerprint: %v", err)
|
return nil, fmt.Errorf("failed to create fingerprint: %v", err)
|
||||||
}
|
}
|
||||||
res[i] = DTLSFingerprint{
|
res[i] = DTLSFingerprint{
|
||||||
Algorithm: algo.String(),
|
Algorithm: name,
|
||||||
Value: value,
|
Value: value,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -15,6 +15,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/pion/dtls/v2"
|
"github.com/pion/dtls/v2"
|
||||||
|
"github.com/pion/dtls/v2/pkg/crypto/fingerprint"
|
||||||
"github.com/pion/srtp"
|
"github.com/pion/srtp"
|
||||||
"github.com/pion/webrtc/v2/internal/mux"
|
"github.com/pion/webrtc/v2/internal/mux"
|
||||||
"github.com/pion/webrtc/v2/internal/util"
|
"github.com/pion/webrtc/v2/internal/util"
|
||||||
@@ -350,12 +351,12 @@ func (t *DTLSTransport) Stop() error {
|
|||||||
|
|
||||||
func (t *DTLSTransport) validateFingerPrint(remoteCert *x509.Certificate) error {
|
func (t *DTLSTransport) validateFingerPrint(remoteCert *x509.Certificate) error {
|
||||||
for _, fp := range t.remoteParameters.Fingerprints {
|
for _, fp := range t.remoteParameters.Fingerprints {
|
||||||
hashAlgo, err := dtls.HashAlgorithmString(fp.Algorithm)
|
hashAlgo, err := fingerprint.HashFromString(fp.Algorithm)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
remoteValue, err := dtls.Fingerprint(remoteCert, hashAlgo)
|
remoteValue, err := fingerprint.Fingerprint(remoteCert, hashAlgo)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
2
go.mod
2
go.mod
@@ -4,7 +4,7 @@ go 1.12
|
|||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/pion/datachannel v1.4.14
|
github.com/pion/datachannel v1.4.14
|
||||||
github.com/pion/dtls/v2 v2.0.0-rc.5
|
github.com/pion/dtls/v2 v2.0.0-rc.6
|
||||||
github.com/pion/ice v0.7.8
|
github.com/pion/ice v0.7.8
|
||||||
github.com/pion/logging v0.2.2
|
github.com/pion/logging v0.2.2
|
||||||
github.com/pion/quic v0.1.1
|
github.com/pion/quic v0.1.1
|
||||||
|
10
go.sum
10
go.sum
@@ -27,8 +27,8 @@ github.com/onsi/gomega v1.4.3 h1:RE1xgDvH7imwFD45h+u2SgIfERHlS2yNG4DObb5BSKU=
|
|||||||
github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
|
github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
|
||||||
github.com/pion/datachannel v1.4.14 h1:Kbx9/pdbEsK86aFS2QPiL3AJi5Op+lz5hQBE/nMJOrg=
|
github.com/pion/datachannel v1.4.14 h1:Kbx9/pdbEsK86aFS2QPiL3AJi5Op+lz5hQBE/nMJOrg=
|
||||||
github.com/pion/datachannel v1.4.14/go.mod h1:egqeB66tjsze0tI3ohqXQyPwA6NpT70L895sminy/lg=
|
github.com/pion/datachannel v1.4.14/go.mod h1:egqeB66tjsze0tI3ohqXQyPwA6NpT70L895sminy/lg=
|
||||||
github.com/pion/dtls/v2 v2.0.0-rc.5 h1:O6RZZGTnHryfMezTisWMSR02XS/Gf6jWnCnYqg5VjMY=
|
github.com/pion/dtls/v2 v2.0.0-rc.6 h1:oLlWlxOyVYZy+A41bkN4L8x2fVhnaBVuIqtAPpVIMEY=
|
||||||
github.com/pion/dtls/v2 v2.0.0-rc.5/go.mod h1:k7HAs0qpJSz+Pelkbc5ZDNtenQpUvXgjg/yq4ZC6CdU=
|
github.com/pion/dtls/v2 v2.0.0-rc.6/go.mod h1:U199DvHpRBN0muE9+tVN4TMy1jvEhZIZ63lk4xkvVSk=
|
||||||
github.com/pion/ice v0.7.8 h1:uSlntnlDRl2k6TczPO+3ib+Z1JnawBKS6LxA8ZkNP74=
|
github.com/pion/ice v0.7.8 h1:uSlntnlDRl2k6TczPO+3ib+Z1JnawBKS6LxA8ZkNP74=
|
||||||
github.com/pion/ice v0.7.8/go.mod h1:iGjOIz/lF16Nf+OGv8KZwRt8yioihLQikge3CkxfybU=
|
github.com/pion/ice v0.7.8/go.mod h1:iGjOIz/lF16Nf+OGv8KZwRt8yioihLQikge3CkxfybU=
|
||||||
github.com/pion/logging v0.2.2 h1:M9+AIj/+pxNsDfAT64+MAVgJO0rsyLnoJKCqf//DoeY=
|
github.com/pion/logging v0.2.2 h1:M9+AIj/+pxNsDfAT64+MAVgJO0rsyLnoJKCqf//DoeY=
|
||||||
@@ -70,8 +70,8 @@ github.com/stretchr/testify v1.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJy
|
|||||||
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
|
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
|
||||||
golang.org/x/crypto v0.0.0-20190228161510-8dd112bcdc25/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
golang.org/x/crypto v0.0.0-20190228161510-8dd112bcdc25/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||||
golang.org/x/crypto v0.0.0-20191205180655-e7c4368fe9dd h1:GGJVjV8waZKRHrgwvtH66z9ZGVurTD1MT0n1Bb+q4aM=
|
golang.org/x/crypto v0.0.0-20200128174031-69ecbb4d6d5d h1:9FCpayM9Egr1baVnV1SX0H87m+XB0B8S0hAMi99X/3U=
|
||||||
golang.org/x/crypto v0.0.0-20191205180655-e7c4368fe9dd/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
golang.org/x/crypto v0.0.0-20200128174031-69ecbb4d6d5d/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||||
golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||||
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
||||||
golang.org/x/net v0.0.0-20191126235420-ef20fe5d7933/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
golang.org/x/net v0.0.0-20191126235420-ef20fe5d7933/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||||
@@ -86,6 +86,8 @@ golang.org/x/sys v0.0.0-20190412213103-97732733099d h1:+R4KGOnez64A81RvjARKc4UT5
|
|||||||
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/text v0.3.0 h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg=
|
golang.org/x/text v0.3.0 h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg=
|
||||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||||
|
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
|
||||||
|
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo=
|
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo=
|
||||||
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
|
@@ -13,7 +13,7 @@ import (
|
|||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/pion/dtls/v2"
|
"github.com/pion/dtls/v2/pkg/crypto/fingerprint"
|
||||||
"github.com/pion/logging"
|
"github.com/pion/logging"
|
||||||
"github.com/pion/quic"
|
"github.com/pion/quic"
|
||||||
"github.com/pion/webrtc/v2/internal/mux"
|
"github.com/pion/webrtc/v2/internal/mux"
|
||||||
@@ -139,12 +139,12 @@ func (t *QUICTransport) Start(remoteParameters QUICParameters) error {
|
|||||||
|
|
||||||
func (t *QUICTransport) validateFingerPrint(remoteParameters QUICParameters, remoteCert *x509.Certificate) error {
|
func (t *QUICTransport) validateFingerPrint(remoteParameters QUICParameters, remoteCert *x509.Certificate) error {
|
||||||
for _, fp := range remoteParameters.Fingerprints {
|
for _, fp := range remoteParameters.Fingerprints {
|
||||||
hashAlgo, err := dtls.HashAlgorithmString(fp.Algorithm)
|
hashAlgo, err := fingerprint.HashFromString(fp.Algorithm)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
remoteValue, err := dtls.Fingerprint(remoteCert, hashAlgo)
|
remoteValue, err := fingerprint.Fingerprint(remoteCert, hashAlgo)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user