2011-05-29から1日間の記事一覧

HTTP Client の動作フロー その9 : useragent.c

今まで勉強したことのまとめとして、指定ホストのトップページをGETで読み込み、HTTPレスポンスを標準出力に表示するツールをつくってみました。 /** * useragent.c **/ #include <sys/types.h> #include <sys/socket.h> #include <netdb.h> #include <stdio.h> #include <string.h> #include <arpa/inet.h> #include <unistd.h> #define BUF</unistd.h></arpa/inet.h></string.h></stdio.h></netdb.h></sys/socket.h></sys/types.h>…

日本語も勉強しないと...

ブログを書き始めて感じたこと。 伝えたい内容を簡潔にまとめる能力をもっとつけないといけない。特にソースコード中のコメントとか、バージョン管理システムにコミットするときのメッセージをもっとわかりやすく書けるようになりたい。昔はもっとちゃんとし…

libcurlが参考になるかも

HTTP Clientですが、libcurlが参考になりそう。MITラインセスってのがいいですね。

オープンソースのコードを取り込んだ時のライセンス表記について

GPLのコードを1行でも取り込んだ場合は、ソフトウェア全体をGPLで配布しなければいけませんが、BSDやMITライセンスのコードを一部取り込んだ場合のライセンス表記ってどうなってるんだろう?と思っていろいろ調べてみた。BSDライセンスに関しては、Wikipedi…

URLパーサをつくってみた

URLを「スキーム、ホスト、ポート、パス、クエリー」に分解するツールをつくってみました。 ソース /** * url_parser.c **/ #include <stdio.h> #include <stdlib.h> #include <string.h> #define URL_MAX_LEN 2083 /* IEの制限と同じ数値に設定 */ #define SCHEME_MAX_LEN 32 #define SCH</string.h></stdlib.h></stdio.h>…