(minor) sanitize code

This commit is contained in:
Lawrence, Rendall
2022-05-02 13:30:11 +03:00
parent c50a532181
commit 463d478dad
4 changed files with 35 additions and 14 deletions

View File

@@ -5,7 +5,7 @@ import (
)
var (
logger = log.NewLogger("bittorrent")
logger = log.NewLogger("request sanitizer")
// ErrInvalidIP indicates an invalid IP for an Announce.
ErrInvalidIP = ClientError("invalid IP")
@@ -16,6 +16,7 @@ var (
// SanitizeAnnounce enforces a max and default NumWant and coerces the peer's
// IP address into the proper format.
func SanitizeAnnounce(r *AnnounceRequest, maxNumWant, defaultNumWant uint32) error {
logger.Trace().Object("request", r).Msg("source announce")
if r.Port == 0 {
return ErrInvalidPort
}
@@ -30,13 +31,14 @@ func SanitizeAnnounce(r *AnnounceRequest, maxNumWant, defaultNumWant uint32) err
r.NumWant = maxNumWant
}
logger.Debug().Object("request", r).Msg("sanitized announce")
logger.Trace().Object("request", r).Msg("sanitized announce")
return nil
}
// SanitizeScrape enforces a max number of infohashes for a single scrape
// request and checks if addresses are valid.
func SanitizeScrape(r *ScrapeRequest, maxScrapeInfoHashes uint32) error {
logger.Trace().Object("request", r).Msg("source scrape")
if len(r.InfoHashes) > int(maxScrapeInfoHashes) {
r.InfoHashes = r.InfoHashes[:maxScrapeInfoHashes]
}
@@ -45,6 +47,6 @@ func SanitizeScrape(r *ScrapeRequest, maxScrapeInfoHashes uint32) error {
return ErrInvalidIP
}
logger.Debug().Object("request", r).Msg("sanitized scrape")
logger.Trace().Object("request", r).Msg("sanitized scrape")
return nil
}