＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
　HTLIB 組み込み向けHTTPライブラリ
　COPYRIGHT (C) 2009 西村英樹
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝

１．はじめに

HTLIBは、組み込み向けのHTTPライブラリです。
開発はLinuxで行っています。

２．ライブラリの特長

このライブラリは以下の特長があります。

・C言語による記述
　ポータビリティを重視し、C言語により記述されています。
　（但し、一部GCCの機能を使っている部分があります。）

・malloc/freeなし
　処理に必要なデータ領域は原則外部から与えることで、
　malloc/freeを全く使わずに実現されます。
　また、複数接続なども制限なく実現できます。

・クライアント側、サーバー側両方対応

・HTTP1.1準拠
　このライブラリは、HTTP1.1準拠を目標に開発されています。
　サポートされている主な機能：
　・持続的接続（Keep-Alive）
　　Connection: closeヘッダを正しく解釈し、
　　必要なときには再接続を実施します。
　・100-continueサポート
　　ヘッダに「Expect: 100-continue」を付加すると、
　　100ステータスが受け取れます。
　・まだ実装されていないものあり

　ライブラリではサポートされない機能：
　・ヘッダフィールドについて、出来る限り上位アプリと
　　情報をやりとりできるAPIのため、上位アプリ内で
　　対応できる場合はライブラリ内で対応しません。
　　（ユーティリティ的な機能を提供することはあります。）

３．ビルド

基本的にmakeのみ。

以下のファイルが出来ます。
・htlib.h
　ヘッダファイル
・libhtlib.a
　ライブラリファイル
・src/sampleclient
　サンプルクライアント
・src/sampleserver
　サンプルサーバ
・test/testserver
　テスト用サーバー（自動テスト用）

４．今後

今後、以下の項目について作業していきたいと考えています。
（いつできるかは保証できませんが。。。）

・自動テストコードの追加
・日時フォーマットのサポート
・認証サポート（Basic/Digest）
・HTTP1.1準拠関連
　・chunked転送のサポート
　・multipart/byterangeのサポート
　・HTTP1.0など後方互換性
・その他
　・記法についての説明
　　NOTATION.jp

以上。