

#include <nitroWiFi/soc.h>
int SOC_EnableSsl ( int s, SOCSslConnection* con );
| s | SSL を有効にする対象のソケット記述子。 |
| con | SSL 接続の設定と状態を保持する SOCSslConnection 構造体へのポインタ。 |
| 0以上 | 成功。 |
SOC_EINVAL |
無効な処理。(ソケットが TCP でない、など) |
SOC_EMFILE |
ソケット記述子をこれ以上作れません。 |
SOC_ENETRESET |
ソケットライブラリが初期化されていません。 |
SOC_ENOBUFS |
リソース不足。 |
注意:追加のエラーが今後のライブラリリリースで生じたり返されることがあります。すべての負の返り値は汎用のエラーとして扱ってください。
対象のソケットを使った通信を SSL で暗号化します。bind 前の TCP のソケットにしか使用できません。なお、実装上の制限により、SSL を有効にしたソケット記述子に対しては非同期の読み書きを行うことができませんので注意して下さい。
引数に渡した SOCSslConnection 構造体は、引数 s が示すソケットが完全に終了するまでメモリ領域を確保しておく必要があります。具体的には、SOC_Close()が2回目の0を返すまではメモリ領域を他の用途で使用しないようにしてください。
SSL で通信するための設定の詳細については SOCSslConnection 構造体の解説を参照してください。
なお、SSL 通信を安全に行うためには、必ず定期的に SOC_AddRandomSeed() を呼び出す必要があります。
2007/1/19 SOCSslConnection 構造体を保持するべき期間について追記
2005/12/21 初版