TsgcTURNServerEreignisse › OnTURNChannelDataDiscarded

OnTURNChannelDataDiscarded Ereignis

Wird ausgelöst, wenn eine ChannelData-Nachricht verworfen wird, weil die Kanalnummer ungültig ist oder keine Berechtigung hat.

Syntax

property OnTURNChannelDataDiscarded: TsgcTURNChannelDataDiscardedEvent;
// TsgcTURNChannelDataDiscardedEvent = procedure(Sender: TObject; const aSocket: TsgcSocketConnection; const aChannelData: TsgcTURNChannelData; const aReason: string) of object

Standardwert

Hinweise

Wird ausgelöst, wenn der Server ein eingehendes ChannelData-Datagramm stillschweigend verwirft, ohne es weiterzuleiten. Typische Gründe, die in aReason getragen werden, sind: Kanalnummer außerhalb des zulässigen Bereichs 0x4000–0x7FFF, kein Channel-Binding auf der Allocation, Channel-Binding ist abgelaufen, keine passende Permission für die gebundene Peer-Adresse installiert oder das Datagramm ist kürzer als die im 4-Byte-Header angekündigte Länge. aChannelData stellt die Kanalnummer und die verworfene Roh-Payload bereit. Gemäß RFC 5766 wird keine Fehlerantwort an den Client zurückgesendet; verwenden Sie dieses Ereignis für Diagnose oder Intrusion Detection, wenn unerwartete Verwerfungen auftreten. Läuft auf dem Listener-Thread, es sei denn, NotifyEvents leitet es um.

Beispiel

procedure TForm1.OnTURNChannelDataDiscarded(Sender: TObject;
  const aSocket: TsgcSocketConnection; const aChannelData: TsgcTURNChannelData;
  const aReason: string);
begin
  Memo1.Lines.Add(Format('ChannelData dropped from %s: %s',
    [aSocket.PeerIP, aReason]));
end;

Zurück zu Ereignissen