Unverified Commit a6f44450 authored by vyzo's avatar vyzo Committed by GitHub

Merge pull request #71 from libp2p/feat/conn-stat

Expose underlying transport connection stat where available
parents 55fce4d0 f5212e58
......@@ -13,6 +13,7 @@ type transportConn struct {
network.ConnMultiaddrs
network.ConnSecurity
transport transport.Transport
stat network.Stat
}
func (t *transportConn) Transport() transport.Transport {
......@@ -33,3 +34,7 @@ func (t *transportConn) String() string {
t.RemotePeer(),
)
}
func (t *transportConn) Stat() network.Stat {
return t.stat
}
......@@ -66,6 +66,11 @@ func (u *Upgrader) UpgradeInbound(ctx context.Context, t transport.Transport, ma
}
func (u *Upgrader) upgrade(ctx context.Context, t transport.Transport, maconn manet.Conn, p peer.ID, dir network.Direction) (transport.CapableConn, error) {
var stat network.Stat
if cs, ok := maconn.(network.ConnStat); ok {
stat = cs.Stat()
}
var conn net.Conn = maconn
if u.PSK != nil {
pconn, err := pnet.NewProtectedConn(u.PSK, conn)
......@@ -107,6 +112,7 @@ func (u *Upgrader) upgrade(ctx context.Context, t transport.Transport, maconn ma
ConnMultiaddrs: maconn,
ConnSecurity: sconn,
transport: t,
stat: stat,
}
return tc, nil
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment