[Bug debuginfod/28034] client-side %-escape url characters

Noah Sanci nsanci@redhat.com
Thu Aug 26 19:27:45 GMT 2021


Hello,

When requesting some source files, some URL-inconvenient chars
sometimes pop up.  Example from f33 libstdc++:
/buildid/44d8485cb75512c2ca5c8f70afbd475cae30af4f/source/usr/src/debug/
gcc-10.3.1-1.fc33.x86_64/obj-x86_64-redhat-linux/x86_64-redhat-linux/
libstdc++-v3/src/c++11/../../../../../libstdc++-v3/src/c++11/
condition_variable.cc
As this URL is passed into debuginfod's handler_cb, it appears that the
+ signs are helpfully unescaped to spaces by libmicrohttpd, which
'course breaks everything.
In order to ensure the server properly parses urls such as this one,
%-escape characters on the client side so that the correct url
is preserved and properly processed on the server side.

This patch preserves '/'s in the url. Please find the patch attached.

-Noah Sanci
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-debuginfod-PR28034-client-side-escape-url-characters.patch
Type: text/x-patch
Size: 3869 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/elfutils-devel/attachments/20210826/8862197a/attachment.bin>


More information about the Elfutils-devel mailing list