Shammer's Philosophy

My private adversaria

HTTP Client ver 0.22

HTTP Client ver 0.21 - Shammerismで、応答受信時に処理が停滞してしまう事象はインチキくさいが Connection: close を付与することで一時的に回避。Connection: keep-alive 時には、Content-Length をカウントして受信しきったらクローズするようにしないといけない。これは後日。とりあえず、骨格だけでも早く作ってしまわないと。

	    send( sock, "GET / HTTP/1.1\r\n", strlen("GET / HTTP/1.1\r\n"), 0);
	    send( sock, "Host: ", strlen("Host: "), 0);
	    send( sock, args[1], strlen(args[1]), 0);
	    send( sock, "\r\n\r\n", strlen("\r\n\r\n"), 0);

の部分を、

    send(sock, "GET / HTTP/1.1\r\n", strlen("GET / HTTP/1.1\r\n"), 0);
    send(sock, "Host: ", strlen("Host: "), 0);
    send(sock, ipaddr, strlen(ipaddr), 0);
    send(sock, "\r\n", strlen("\r\n"), 0);
    send(sock, "Connection: close\r\n", strlen("Connection: close\r\n"), 0);
    send(sock, "\r\n", strlen("\r\n"), 0);

に変更。どうやってデータの送受信をするかはいろいろありそうなので、この部分は関数にしてみるのがいいかも。