nuxx.net
Making, baking, and (un-)breaking things in Southeast Michigan.

lighttpd? Nokia Image Upload API?

So it seems that my choice of webserver for rowla.nuxx.net, lighttpd, isn’t working out so well. It seems that the Nokia 6600 (and I’d imagine others), as part of implementing the Nokia Image Upload Server API v1.1 sends an Expect: 100-continue, but lighttpd always returns 417 Expectation Failed. As can be seen here, the ‘100 – Continue’ part of HTTP/1.1 simply hasn’t been implemented.

A bug report (#377 – Incorrect handling of the 100 (Continue) Status) has been submitted, but it looks like there hasn’t been any work done on it in quite a while.

I presume that Nokia uses that because then the client will only send another chunk of image after the server has received the last, helping ensure data doesn’t get lost somewhere in the high latency / flaky world of GPRS. Or maybe because they anticipate the Image Upload feature of the phones to be used on potentially overloaded ISP / telco servers and they don’t want the phones sending data faster than the server can handle it.

As is stated in RFC2068, 10.1.1 – 100 Continue:

The client may continue with its request. This interim response is used to inform the client that the initial part of the request has been received and has not yet been rejected by the server. The client SHOULD continue by sending the remainder of the request or, if the request has already been completed, ignore this response. The server MUST send a final response after the request has been completed.

I don’t think I can use some sort of proxy for it either, because it seems that Expect headers need to be forwarded by proxies. (RFC2616, 14.20)

So, back to Apache, or I can try to find another way around this… At least I know what’s causing it. Until then, no from-phone updating of my moblog can occur.

Leave a reply