]> Sergey Matveev's repositories - btrtrc.git/blobdiff - utp_libutp.go
Drop support for go 1.20
[btrtrc.git] / utp_libutp.go
index 94eba7cbc425d6821c7a2f7f767960783c3d192c..6da9402c3fe820337b286dd89f0fe5ab3df75978 100644 (file)
@@ -1,16 +1,23 @@
+//go:build cgo && !disable_libutp
 // +build cgo,!disable_libutp
 
 package torrent
 
 import (
-       "github.com/anacrolix/go-libutp"
+       utp "github.com/anacrolix/go-libutp"
+       "github.com/anacrolix/log"
 )
 
-func NewUtpSocket(network, addr string) (utpSocket, error) {
-       s, err := utp.NewSocket(network, addr)
+func NewUtpSocket(network, addr string, fc firewallCallback, logger log.Logger) (utpSocket, error) {
+       s, err := utp.NewSocket(network, addr, utp.WithLogger(logger))
        if s == nil {
                return nil, err
-       } else {
+       }
+       if err != nil {
                return s, err
        }
+       if fc != nil {
+               s.SetSyncFirewallCallback(utp.FirewallCallback(fc))
+       }
+       return s, err
 }