Message ID | 20240422142547.281064-3-derek.buitenhuis@gmail.com |
---|---|
State | New |
Headers | show |
Series | HTTP rate limiting and retry improvements | expand |
Context | Check | Description |
---|---|---|
yinshiyou/make_loongarch64 | success | Make finished |
yinshiyou/make_fate_loongarch64 | success | Make fate finished |
andriy/make_x86 | success | Make finished |
andriy/make_fate_x86 | success | Make fate finished |
On Mon, 22 Apr 2024, Derek Buitenhuis wrote:
> Added in thep previous commit.
Typo in the commit message
// Martin
On Mon, 22 Apr 2024, Derek Buitenhuis wrote: > Added in thep previous commit. > > Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> > --- > libavformat/http.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/libavformat/http.c b/libavformat/http.c > index ed20359552..bbace2694f 100644 > --- a/libavformat/http.c > +++ b/libavformat/http.c > @@ -286,6 +286,7 @@ static int http_should_reconnect(HTTPContext *s, int err) > case AVERROR_HTTP_UNAUTHORIZED: > case AVERROR_HTTP_FORBIDDEN: > case AVERROR_HTTP_NOT_FOUND: > + case AVERROR_HTTP_TOO_MANY_REQUESTS: > case AVERROR_HTTP_OTHER_4XX: > status_group = "4xx"; > break; > @@ -522,6 +523,7 @@ int ff_http_averror(int status_code, int default_averror) > case 401: return AVERROR_HTTP_UNAUTHORIZED; > case 403: return AVERROR_HTTP_FORBIDDEN; > case 404: return AVERROR_HTTP_NOT_FOUND; > + case 429: return AVERROR_HTTP_TOO_MANY_REQUESTS; > default: break; > } > if (status_code >= 400 && status_code <= 499) > @@ -558,6 +560,10 @@ static int http_write_reply(URLContext* h, int status_code) > reply_code = 404; > reply_text = "Not Found"; > break; > + case 429: > + reply_code = 429; > + reply_text = "Too Many Requests"; > + break; > case 200: This function seems to handle both the literal status codes, like 429, and also AVERROR style error codes, as when called from handle_http_errors, so perhaps it would be good for consistency to add the AVERROR here too. // Martin
On 4/24/2024 11:53 AM, Martin Storsjö wrote:
> Typo in the commit message
Fixed locally.
- Derek
On 4/24/2024 11:58 AM, Martin Storsjö wrote: > This function seems to handle both the literal status codes, like 429, and > also AVERROR style error codes, as when called from handle_http_errors, so > perhaps it would be good for consistency to add the AVERROR here too. Good catch. Added. - Derek
diff --git a/libavformat/http.c b/libavformat/http.c index ed20359552..bbace2694f 100644 --- a/libavformat/http.c +++ b/libavformat/http.c @@ -286,6 +286,7 @@ static int http_should_reconnect(HTTPContext *s, int err) case AVERROR_HTTP_UNAUTHORIZED: case AVERROR_HTTP_FORBIDDEN: case AVERROR_HTTP_NOT_FOUND: + case AVERROR_HTTP_TOO_MANY_REQUESTS: case AVERROR_HTTP_OTHER_4XX: status_group = "4xx"; break; @@ -522,6 +523,7 @@ int ff_http_averror(int status_code, int default_averror) case 401: return AVERROR_HTTP_UNAUTHORIZED; case 403: return AVERROR_HTTP_FORBIDDEN; case 404: return AVERROR_HTTP_NOT_FOUND; + case 429: return AVERROR_HTTP_TOO_MANY_REQUESTS; default: break; } if (status_code >= 400 && status_code <= 499) @@ -558,6 +560,10 @@ static int http_write_reply(URLContext* h, int status_code) reply_code = 404; reply_text = "Not Found"; break; + case 429: + reply_code = 429; + reply_text = "Too Many Requests"; + break; case 200: reply_code = 200; reply_text = "OK";
Added in thep previous commit. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> --- libavformat/http.c | 6 ++++++ 1 file changed, 6 insertions(+)