libsoup vs. embedded webserver



Hi there,

I ran into a little protocol failure when trying to access an embedded device's web server with a libsoup-based client (http://openwsman.org). This is probably a very rare case, but I still think it should be fixed in libsoup for better RfC compliance:

- The client opens an asynchronous soup session (no idea why they do
  that, a synchrounous session would do just fine).
- The client synchronously sends a message (soup_session_send_message)
  through that connection.
- The server sends a "401 Unauthorized" response and closes its side
  of the connection. The response does not include a "Connection:
  close" header, though.
- The client asks for user credentials and resends the message, using
  the same (half-closed) connection.
- The client tries to read the server's response and receives an EOF,
  thus terminating the message transmission with an error condition.

The server seems to be a little misbehaved for closing the connection without adding "Connection: close", but if I read the RfC correctly he is not required to add that header. The main source of the failure seems to be libsoup not noticing the server-side close early enough.

Cheers,
Ingo





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]