http: fix IPv4 addresses not 4 bytes long

Fixes #230
This commit is contained in:
Leo Balduf 2016-09-28 03:10:52 -04:00
parent 8e427c4bc7
commit 203248425a

View file

@ -79,6 +79,11 @@ func ParseAnnounce(r *http.Request, realIPHeader string, allowIPSpoofing bool) (
return nil, bittorrent.ClientError("failed to parse peer IP address")
}
// Sanitize IPv4 addresses to 4 bytes.
if ip := request.Peer.IP.To4(); ip != nil {
request.Peer.IP = ip
}
return request, nil
}