TsgcTURNServerEventi › OnTURNMessageDiscarded

OnTURNMessageDiscarded Event

Generato quando un messaggio TURN ricevuto dal server viene scartato prima che venga prodotta qualsiasi risposta.

Sintassi

property OnTURNMessageDiscarded: TsgcTURNMessageDiscardedEvent;
// TsgcTURNMessageDiscardedEvent = procedure(Sender: TObject; const aSocket: TsgcSocketConnection; aMethod: TsgcStunMessageMethod; const aMessage: TsgcSTUN_Message; const aReason: string) of object

Valore predefinito

Note

Generato quando il server scarta un messaggio STUN/TURN in ingresso senza inviare una risposta o un errore. aMethod identifica il metodo (Allocate, Refresh, CreatePermission, ChannelBind, Send, Data) rilevato nell'intestazione, aMessage espone il messaggio STUN analizzato e aReason descrive il motivo per cui il datagramma è stato scartato — le cause tipiche includono allocazione mancante per le indicazioni Send, nessuna autorizzazione installata per il peer indirizzato da XOR-PEER-ADDRESS, intestazione malformata, metodo non supportato o sorgente soggetta a rate limiting. Utilizzare l'evento per diagnostica e rilevamento delle intrusioni; a differenza di OnSTUNRequestError, questo evento si attiva per il percorso di scarto silenzioso RFC dove non viene mai prodotta alcuna risposta. Viene eseguito sul thread listener a meno che NotifyEvents non lo reindirizzi.

Esempio

procedure TForm1.OnTURNMessageDiscarded(Sender: TObject;
  const aSocket: TsgcSocketConnection; aMethod: TsgcStunMessageMethod;
  const aMessage: TsgcSTUN_Message; const aReason: string);
begin
  Memo1.Lines.Add(Format('TURN message dropped from %s: %s',
    [aSocket.PeerIP, aReason]));
end;

Torna agli Eventi