merged node and traffic packages

This commit is contained in:
херетик
2023-01-31 10:47:50 +00:00
parent ee9618c4d3
commit a83bfb06ef
34 changed files with 247 additions and 256 deletions

View File

@@ -9,33 +9,33 @@ import (
)
// response is a payload from an exit message.
func (en *Engine) response(on *response.Layer, b slice.Bytes,
func (eng *Engine) response(on *response.Layer, b slice.Bytes,
cur *slice.Cursor, prev types.Onion) {
pending := en.Pending.Find(on.ID)
pending := eng.Pending.Find(on.ID)
log.T.F("searching for pending ID %x", on.ID)
if pending != nil {
for i := range pending.Billable {
s := en.FindSession(pending.Billable[i])
s := eng.FindSession(pending.Billable[i])
if s != nil {
typ := "response"
relayRate := s.Peer.RelayRate
relayRate := s.RelayRate
dataSize := len(b)
switch i {
case 0, 1:
dataSize = pending.SentSize
case 2:
for j := range s.Peer.Services {
if s.Peer.Services[j].Port == on.Port {
relayRate = s.Peer.Services[j].RelayRate / 2
for j := range s.Services {
if s.Services[j].Port == on.Port {
relayRate = s.Services[j].RelayRate / 2
typ = "exit"
}
}
}
en.DecSession(s.ID, relayRate*lnwire.
eng.DecSession(s.ID, relayRate*lnwire.
MilliSatoshi(dataSize)/1024/1024, true, typ)
}
}
en.Pending.Delete(on.ID, on.Bytes)
eng.Pending.Delete(on.ID, on.Bytes)
}
}