mirror of
https://github.com/cwinfo/matterbridge.git
synced 2025-09-14 12:32:31 +00:00
Update dependencies and build to go1.22 (#2113)
* Update dependencies and build to go1.22 * Fix api changes wrt to dependencies * Update golangci config
This commit is contained in:
@@ -26,7 +26,7 @@ const (
|
||||
const (
|
||||
NoiseStartPattern = "Noise_XX_25519_AESGCM_SHA256\x00\x00\x00\x00"
|
||||
|
||||
WAMagicValue = 5
|
||||
WAMagicValue = 6
|
||||
)
|
||||
|
||||
var WAConnHeader = []byte{'W', 'A', WAMagicValue, token.DictVersion}
|
||||
|
25
vendor/go.mau.fi/whatsmeow/socket/framesocket.go
vendored
25
vendor/go.mau.fi/whatsmeow/socket/framesocket.go
vendored
@@ -11,7 +11,6 @@ import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
@@ -20,8 +19,6 @@ import (
|
||||
waLog "go.mau.fi/whatsmeow/util/log"
|
||||
)
|
||||
|
||||
type Proxy = func(*http.Request) (*url.URL, error)
|
||||
|
||||
type FrameSocket struct {
|
||||
conn *websocket.Conn
|
||||
ctx context.Context
|
||||
@@ -29,12 +26,15 @@ type FrameSocket struct {
|
||||
log waLog.Logger
|
||||
lock sync.Mutex
|
||||
|
||||
URL string
|
||||
HTTPHeaders http.Header
|
||||
|
||||
Frames chan []byte
|
||||
OnDisconnect func(remote bool)
|
||||
WriteTimeout time.Duration
|
||||
|
||||
Header []byte
|
||||
Proxy Proxy
|
||||
Dialer websocket.Dialer
|
||||
|
||||
incomingLength int
|
||||
receivedLength int
|
||||
@@ -42,14 +42,17 @@ type FrameSocket struct {
|
||||
partialHeader []byte
|
||||
}
|
||||
|
||||
func NewFrameSocket(log waLog.Logger, header []byte, proxy Proxy) *FrameSocket {
|
||||
func NewFrameSocket(log waLog.Logger, dialer websocket.Dialer) *FrameSocket {
|
||||
return &FrameSocket{
|
||||
conn: nil,
|
||||
log: log,
|
||||
Header: header,
|
||||
Header: WAConnHeader,
|
||||
Frames: make(chan []byte),
|
||||
|
||||
Proxy: proxy,
|
||||
URL: URL,
|
||||
HTTPHeaders: http.Header{"Origin": {Origin}},
|
||||
|
||||
Dialer: dialer,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -98,13 +101,9 @@ func (fs *FrameSocket) Connect() error {
|
||||
return ErrSocketAlreadyOpen
|
||||
}
|
||||
ctx, cancel := context.WithCancel(context.Background())
|
||||
dialer := websocket.Dialer{
|
||||
Proxy: fs.Proxy,
|
||||
}
|
||||
|
||||
headers := http.Header{"Origin": []string{Origin}}
|
||||
fs.log.Debugf("Dialing %s", URL)
|
||||
conn, _, err := dialer.Dial(URL, headers)
|
||||
fs.log.Debugf("Dialing %s", fs.URL)
|
||||
conn, _, err := fs.Dialer.Dial(fs.URL, fs.HTTPHeaders)
|
||||
if err != nil {
|
||||
cancel()
|
||||
return fmt.Errorf("couldn't dial whatsapp web websocket: %w", err)
|
||||
|
@@ -24,7 +24,7 @@ type NoiseSocket struct {
|
||||
writeCounter uint32
|
||||
readCounter uint32
|
||||
writeLock sync.Mutex
|
||||
destroyed uint32
|
||||
destroyed atomic.Bool
|
||||
stopConsumer chan struct{}
|
||||
}
|
||||
|
||||
@@ -75,7 +75,7 @@ func (ns *NoiseSocket) Context() context.Context {
|
||||
}
|
||||
|
||||
func (ns *NoiseSocket) Stop(disconnect bool) {
|
||||
if atomic.CompareAndSwapUint32(&ns.destroyed, 0, 1) {
|
||||
if ns.destroyed.CompareAndSwap(false, true) {
|
||||
close(ns.stopConsumer)
|
||||
ns.fs.OnDisconnect = nil
|
||||
if disconnect {
|
||||
|
Reference in New Issue
Block a user