• ベストアンサー

SSL_read

GmailnBytesRead = SSL_read( ssl, // socket gbufRecv, // buffer sizeof(gbufRecv)-1 // max len to read //はみだしそう -1 付けた ); // recv flags SSL_read() での、読込バッファ(gbufRecv)の大きさは普通どのくらいでしょうか? よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.1

極端に小さいとか極端に大きいとかでなければ、適当でいいんじゃないですかね? ちなみに私はヒープから8kほど。 引き取った後は別にヒープで確保している領域にコピーしてます。 # プログラム起動時にヒープから確保しているので、「少なくとも」受信バッファが断片化することはないでしょう。 # まぁ、コピー先は頻繁にサイズ拡張とかしていたりするんで、実際にはガタガタなんだろうなぁ……。

uyama33
質問者

お礼

ありがとうございます。 いままでは、256バイトに設定していました。 極端に小さいですね。 修正します。 追加: 大きくしたら、Gメールが受け取れました。 ありがとうございました。

uyama33
質問者

補足

お世話になっています。 質問ですが? そちらのソフトでは、 ヒープサイズを256バイトにした場合でも順調に動きますか? よろしくお願いいたします。

その他の回答 (1)

回答No.2

こういうのを見るとヌル文字分を足して、1001 bytesくらいで十分そうな感じがしますが... RFC1939 Post Office Protocol - Version 3 http://www.ietf.org/rfc/rfc1939.txt > 3. Basic Operation > Responses may be up to 512 characters long, including the terminating CRLF. RFC2822 Internet Message Format http://www.ietf.org/rfc/rfc2822.txt > 3.5 Overall message syntax > A message consists of header fields, optionally followed by a message > body. Lines in a message MUST be a maximum of 998 characters > excluding the CRLF, but it is RECOMMENDED that lines be limited to 78 > characters excluding the CRLF.

uyama33
質問者

お礼

ありがとうございます。 理由は分かりませんが、 バッファの大きさが2048バイトなら 順調に動きます。1MBの添付ファイルを付けてもしっかりと受け取れました。 1024バイトでは、不安定です。 サイズに関係なく動くようにプログラムを書いたつもりですが、 簡単には動いてくれません。

関連するQ&A