前のページ次のページ上に戻るホーム SophiaFramework UNIVERSE 5.3

18.5. SFXSSLSocket クラス

SFXSSLSocket クラスによる SSL ソケット通信は、 接続の確立後のコールバック関数内で SFXSSLSocket::Negotiate 関数を呼び出してサーバーとネゴシエートする点以外は、 TCP ソケット通信と同様の方法でデータを送受信できます。

この場合、データの送受信はネゴシエートの完了が通知されるコールバック関数内で行います。

参照: ネットワーク: SSL ソケット通信

以下に、 TCP ソケット通信から追加で必要になるネゴシエート処理のコードだけを示します。

例 18.5. SSL ソケット通信

// 接続要求の結果が通知されるコールバック関数
XALLBACK_IMPLEMENT_SFXSSLSOCKET(MyClass, OnConnect, error)
{
    // ネゴシエートする(ネゴシエートの結果は OnNegotiate 関数に通知される)
    _socket.Negotiate(XALLBACK_INTERNAL(OnNegotiate));
}

// ネゴシエートの結果が通知されるコールバック関数
XALLBACK_IMPLEMENT_SFXSSLSOCKET(MyClass, OnNegotiate, error)
{

    if (error == SFERR_NO_ERROR) {  

        // エラーが発生していないとき

        // データ受信用ストリームとデータ送信用ストリームを取得し、
        // ストリームを使用してデータを送受信する
        ...

    } else { 

        // エラーが発生していないとき
        ...
    }

}