dialog: parse headers for request and transfer reply for errors
(cherry picked from commit 4e1ebc6b446e6264f91c96deaed0548de353d731)
(cherry picked from commit b4df4fc4b0401b522b7fce516e286aec85d4ad96)
(cherry picked from commit 5e7201ef86ab6152034989728272204ef02a4685)