TCP/IPプロトコルスタック(CPS) 機能一覧

初期化・終了

CPS_Startup CPSライブラリを使用可能にします。
CPS_Cleanup CPSライブラリの使用を終了します。

設定

CPS_GetThreadPriority CPSライブラリが内部で生成するスレッドの優先度を取得します。
CPS_SetThreadPriority CPSライブラリが内部で生成するスレッドの優先度を設定します。
CPS_SocRegister 現スレッドでCPSライブラリが使用するソケット構造体を設定します。
CPS_SocUnRegister 現スレッドでCPSライブラリが使用するソケット構造体を未登録にします。
CPS_SocUse 現スレッドが、TCP/IP受信機能のサービス(TCPステートマシン等)を受けられるようにします。
CPS_SocRelease 現スレッドが、TCP/IP受信機能のサービス(TCPステートマシン等)を受けられないようにします。
CPS_SocDup 指定したスレッドが、現スレッドのソケットに対して出力できるようにします。
CPS_SetUdpCallback UDPパケット受信の際に呼ばれるコールバック関数を設定します。

ソケット

CPS_SocBind ソケットに自ポート、相手ポート、相手アドレスを割り当てます。
CPS_SocDatagramMode ソケットをUDPモードにします。
CPS_SocPingMode ソケットをPINGモードにします。
CPS_SocRead PING/UDP/TCPの受信を行います。
CPS_SocConsume 受信バッファからデータを取り除きます。
CPS_SocGetLength 受信バッファ内のデータ数を返します。
CPS_SocWrite PING/UDP/TCPの出力を行います。
CPS_TcpConnect アクティブTCPコネクションを確立します。
CPS_TcpListen パッシブTCPコネクションを確立します。
CPS_SocWho 通信相手に関する情報を取得します。
CPS_TcpShutdown TCPコネクションをアクティブに切断します。
CPS_TcpClose TCPコネクションを終了します。
CPS_TcpAck ACKハンドシェークパケットを送信します。
CPS_SocGetEport 新しいエフェメラルポート番号を取得します。
CPS_GetProperSize その時点での最適なTCP送信パケットサイズを求めるのに使用される値を返します。

ソケット入出力補助

CPS_SocGetChar 一文字入力するまで待ち、それを返します。
CPS_SocGets 一行入力します。
CPS_SocPutChar 一文字出力します。
CPS_SocPuts 文字列を出力します。
CPS_SocPrintf 書式制御付きで文字列を出力します。
CPS_SocFlush ソケット入出力補助関数によってバッファに蓄積されたデータを実際に送信します。

名前解決

CPS_Resolve DNSサーバに対して問い合わせ、名前をIPアドレスに変えます。
CPS_RevResolve DNSサーバに対して問い合わせ、IPアドレスを名前に変えます。
CPS_NbResolve 同一ネットワーク内にあるNetBios名をIPアドレスに変えます。
CPS_EncodeNbName NetBios名をworkstationとして、NetBios Name query機能で使われる形式に変換します。

SSL

CPS_SetSsl SSLモードの有効・無効を設定します。
CPS_SetRootCa ルート証明書を設定します。
CPS_SetMyCert 自分のサーバ証明書と私有鍵情報を設定します。
CPS_SslAddRandomSeed SSL用乱数発生器が使用する乱数プールを設定します。
CPS_SetSslHandshakePriority SSLのハンドシェイク処理で、計算時間が長い部分の実行優先度を設定します。
CPS_GetSslHandshakePriority SSLのハンドシェイク処理で、計算時間が長い部分の実行優先度を取得します。

ユーティリティ

CPS_htons ホストバイトオーダーの値をネットワークバイトオーダの値に変換します。
CPS_htonl ホストバイトオーダーの値をネットワークバイトオーダの値に変換します。
CPS_MK_IPv4 u32のIPv4アドレスを作成します。
CPS_CV_IPv4 u32のIPv4アドレスを、文字列表現への変換を目的としたprintfのパラメータに使用できるようにします。

構造体・型

CPSSoc ソケットを定義する構造体です。
CPSSocBuf CPSSocに設定するバッファ構造体です。
CPSSslConnection SSLの接続を定義する構造体です。
CPSCaInfo 証明書に関する情報の定義する構造体です。
CPSCertificate 相手に提示する証明書の定義です。
CPSPrivateKey 証明書の私有鍵に関する情報の定義です。
CPSConfig CPS_Startup()に渡す構成情報を定義する構造体です。
CPS ライブラリ型 CPS ライブラリで使用される型についての解説です。

定数

CPS用の定数 CPS ライブラリで使用される定数についての解説です。
SSL用の定数 SSL ライブラリで使用される定数についての解説です。
CPS_STT_* CPS ライブラリでのソケットの状態を示す型についての解説です。
CPS_NOIP_REASON_* CPS ライブラリでのIPアドレスが設定されていない理由を示す定数についての解説です。
CPS_CERT_* 認証時に呼ばれるコールバック関数に渡されるエラー情報の定義についての解説です。

大域変数

CPS*(大域変数) CPS ライブラリで使用されている大域変数についての解説です。