改版履歴

改版履歴

Cente HTTPd/c


改版日 2009.05.01
バージョン Ver1.52

【HTTPd修正】

受信したヘッダのパースに失敗する事があるバグを修正。
受信したヘッダが、someheader: str=valueのように、"が無くかつ改行が続く場合に、パースに失敗するバグを修正。
(http_common_get_data_from_headerの修正)

 

【HTTPc修正】

プロキシサーバ対応。
プロキシサーバ経由で通信を行えるようにした。(認証、SSLにも対応) 

 

受信したヘッダのパースに失敗する事があるバグを修正。
受信したヘッダが、someheader: str=valueのように、"が無くかつ改行が続く場合に、パースに失敗するバグを修正。
(http_common_get_data_from_headerの修正) 

 

Basic認証が失敗した時に、1回余分にアクセスする事があるバグを修正。
Basicに認証に失敗すると、同じユーザー名・パスワードで再度アクセスを行い、計2回の失敗アクセスを行ってしまう。

 

queryがあった時に、Digest認証できないバグを修正。
queryがあった時のDigest値の計算ルーチンのバグ修正。それにともない、Digest値計算用のテンポラリバッファとして、T_HTTPSOCKETにdigest_uriを追加。

 

use_total_tmoを1にしても、指定した時間でリターンしないバグを修正。
httpc_send_dat()で、タイムアウト値を正しく減算していなかった。

 

httpc_get/post/get_with_sock/post_with_sockの引数チェックを強化。
・引数のヌルポインタチェックを追加。
・T_HTTPC_REQHEADERのuriが空文字列かどうかのチェックを追加。 

 

queryの文字として、0x80-0xffの範囲の文字を使えなかったのを修正。
http_common_url_encode()で、0x80-0xffの範囲の文字を正しく変換できるように修正。

 

queryが内部バッファより長くなると、正しく送信できないバグを修正。
queryのトータル長がT_HTTPSOCKET->tmp_bufのサイズより大きくなると 正しくqueryが送られない。(httpc_url_encode_send()の修正) 

 

Cookieを正しくパースできない事があるバグを修正。
httpc_parse_setcookie()の以下の不具合を修正。
・一行に複数のcookieが,で連結されている場合にパースできない。
・expiresの値を正しく取得できない

 

keepalive可能な場合でも、通信を切ってしまう事があるのを修正。
サーバがHTTP1.1でConnectionヘッダを送ってこない場合には、keep-aliveと見なすべきだが、HTTPc側でkeep-aliveを行わずに通信を切っていた。

 

httpc_get_with_sock()/post_with_sock()で認証方法をAUTH_DIGESTからAUTH_BASIC_ONCEに変更すると、アクセスに失敗する。
最初Digest認証を行った後にAUTH_BASIC_ONCEを指定すると、送られるべきAuthorizationヘッダが送られず、アクセスにに失敗する。

 

送信するCookieの後ろに余分な;が付く。
動作に支障は無いと考えられるが、最後の;を送らないように修正。