Skip to content

HTTP reader functions fail to open known-good URLs #82

Description

@digizeph

Summary

The oneio HTTP reader entry points return Err when asked to open known-good HTTP(S) resources, even though the same URLs return HTTP 200 via curl. This occurs with both:

  • OneIo::builder().build().get_http_reader_raw(url)
  • oneio::read_lines(url)

This makes these functions unsuitable for checking whether a remote URL exists or can be opened.

Reproduction steps

  1. Verify that these URLs are reachable and return HTTP 200 with curl:

    • https://data.ris.ripe.net/rrc00/2026.07/bview.20260728.0000.gz
    • http://archive.routeviews.org/route-views2/bgpdata/2026.07/RIBS/rib.20260728.0000.bz2
  2. Pass each URL to either of the following APIs:

    OneIo::builder().build().get_http_reader_raw(url)
    oneio::read_lines(url)
  3. Observe that both reader functions return Err rather than opening the remote resource.

Expected behavior

For a reachable HTTP(S) URL that returns HTTP 200, the reader functions should return Ok and allow the response body to be streamed.

Actual behavior

Both get_http_reader_raw(url) and read_lines(url) return Err for the URLs above despite their successful HTTP responses.

Additional context

BgpkitParser::new(url) can successfully open and stream these same URLs. Since bgpkit-parser uses oneio internally, there appears to be a difference between the working parser path and the public oneio HTTP reader functions.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions