TsgcSTUNServerメソッド › RemoveBinding

RemoveBinding メソッド

以前に追加されたリッスンエンドポイントを削除し、STUNサーバーを停止せずにソケットを閉じます。

構文

function RemoveBinding(const aIPAddress: string; aPort: Integer): Boolean;

パラメータ

名前タイプ説明
aIPAddressconst string削除するバインディングのローカル IP アドレス。AddBinding に以前渡した値(またはデフォルト バインディングの Host)と一致する必要があります。
aPortInteger削除するバインディングのローカル UDP ポート。

戻り値

一致するエンドポイントが見つかり削除された場合は True、指定された IP/ポートのバインディングが存在しない場合は False。(Boolean

解説

RemoveBinding は AddBinding のランタイム対応です。一致するエンドポイントにアタッチされたリスナースレッドを停止し、その UDP ソケットを閉じて内部バインディングコレクションからエントリを削除します。残りのエンドポイントは STUN リクエストの処理を継続します。通常、冗長なインターフェースを削除したり、ReStart を呼び出さずにリッスンポートをローテーションしたり、不要になったセカンダリアドレスを切り離したりするために使用します。指定された IP/ポートに一致するエントリがない場合、サーバーは変更されず、メソッドは False を返します。

使用例

if not oSTUN.RemoveBinding('0.0.0.0', 3478) then
  ShowMessage('STUN binding not found');

メソッドに戻る