TsgcSTUNServerEventi › OnSTUNRequestError

OnSTUNRequestError Evento

Generato prima che il server invii una risposta di errore STUN; consente al gestore di esaminare o sopprimere la risposta.

Sintassi

property OnSTUNRequestError: TsgcSTUNRequestErrorEvent;
// TsgcSTUNRequestErrorEvent = procedure(Sender: TObject; const aSocket: TsgcSocketConnection; const aRequest: TsgcSTUN_Message; const aResponse: TsgcSTUN_Message; var Accept: Boolean) of object

Valore predefinito

Note

Generato quando il server ha costruito una Binding Error Response (ad esempio 400 Bad Request, 401 Unauthorized, 420 Unknown Attribute o 438 Stale Nonce) e sta per rinviarla al client. Esamini aRequest / aResponse — in particolare l'attributo ERROR-CODE di aResponse — per registrare il motivo dell'errore. Imposti Accept := False per scartare il datagramma e lasciare il client senza risposta, cosa che può essere utile per evitare l'amplificazione quando dalla stessa origine arrivano ripetute richieste non valide. Il gestore viene eseguito nel thread del listener, a meno che NotifyEvents non selezioni un'altra modalità.

Esempio

procedure TForm1.OnSTUNRequestError(Sender: TObject;
  const aSocket: TsgcSocketConnection; const aRequest: TsgcSTUN_Message;
  const aResponse: TsgcSTUN_Message; var Accept: Boolean);
begin
  Memo1.Lines.Add('STUN error for ' + aSocket.PeerIP);
  Accept := True;
end;

Torna agli Eventi