https://sourceware.org/bugzilla/show_bug.cgi?id=28284

--- Comment #3 from Frank Ch. Eigler <fche at redhat dot com> ---
The problem of federation reminded me that we haven't solved this problem yet.

> int debuginfod_info_debuginfo (debuginfod_client *client,
>                                const unsigned char *build_id,
>                                int build_id_len,
>                                size_t *size, size_t *transfer_size);

It'd also need the other current X-DEBUGINFOD-* response headers, -FILE: and
-ARCHIVE:.  And we'd need two other functions for source and executable.  And
if any fields get added at the server by our software (or someone else's
proxy!), the API would have to expand to match.

For federation purposes, we'd need to forward all these headers from upstream
to downstream.  And we'd like to get this data for an active transfer, not
really a historical one (don't want to have to save/cache), and not make an
extra query to a debuginfod server just to fetch this.

These considerations lead me back to suggesting an API oriented toward fetching
the headers of the current/last fetch made with a debuginfod_client, just like
the debuginfod_get_url(), returning some subset of what's currently stored by
the client code as ->winning_headers.  Specifically, I'd say save & return
those response headers with prefix "x-debuginfod-".

These ones would be the same ones that a hypothetical "debuginfod-find -d"
(describe?) option would want to print to stderr: a more concentrated output
than the -v (verbose) firehose we were talking about earlier.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Reply via email to