NewAnnounce more verbose error handling

This commit is contained in:
Jimmy Zelinskie 2014-07-09 18:29:05 -04:00
parent e2af935b83
commit fb528b1fc3

View file

@ -141,25 +141,40 @@ func NewAnnounce(cfg *config.Config, r *http.Request, p httprouter.Params) (*Ann
compact := q.Params["compact"] != "0" compact := q.Params["compact"] != "0"
event, _ := q.Params["event"] event, _ := q.Params["event"]
infohash, _ := q.Params["info_hash"]
peerID, _ := q.Params["peer_id"]
numWant := q.RequestedPeerCount(cfg.NumWantFallback) numWant := q.RequestedPeerCount(cfg.NumWantFallback)
ip, ipErr := q.RequestedIP(r) infohash, exists := q.Params["info_hash"]
port, portErr := q.Uint64("port") if !exists {
return nil, ErrMalformedRequest
}
left, leftErr := q.Uint64("left") peerID, exists := q.Params["peer_id"]
downloaded, downloadedErr := q.Uint64("downloaded") if !exists {
uploaded, uploadedErr := q.Uint64("uploaded") return nil, ErrMalformedRequest
}
if downloadedErr != nil || ip, err := q.RequestedIP(r)
infohash == "" || if err != nil {
leftErr != nil || return nil, ErrMalformedRequest
peerID == "" || }
portErr != nil ||
uploadedErr != nil || port, err := q.Uint64("port")
ipErr != nil { if err != nil {
return nil, ErrMalformedRequest
}
left, err := q.Uint64("left")
if err != nil {
return nil, ErrMalformedRequest
}
downloaded, err := q.Uint64("downloaded")
if err != nil {
return nil, ErrMalformedRequest
}
uploaded, err := q.Uint64("uploaded")
if err != nil {
return nil, ErrMalformedRequest return nil, ErrMalformedRequest
} }