//since NACK is al valid message for this state, it is implemented explicitly internal override void nackReceived(Session session, bool authentic = false) { session._tearDown(); }
internal override void securityStatusChanged(Session session) { //check if session has gone secure if (session.isSecure != true) { //this should never happen session._tearDown(); } session.changeState(Routing.Instance(session)); }
/// <summary> /// Called whenever the security status of a session has changed. /// </summary> /// <param name="session">The corresponding session.</param> internal virtual void securityStatusChanged(Session session) { session._tearDown(); }
/// <summary> /// Default handler for non protocol-conform events. /// Ends the respective protocol run. /// </summary> /// <param name="session">Corresponding Surface protocol run.</param> internal virtual void invalidMessage(Session session) { session._tearDown(); }
/// <summary> /// Ends a protocol run. /// </summary> /// <param name="session">The corresponding session.</param> internal void endProtocol(Session session) { session.sendCLOSING(); session._tearDown(); }
/// <summary> /// Called when a CLOSING message is received. /// </summary> /// <param name="session">The corresponding session.</param> /// <param name="authentic">Flag indicating whether the received message was properly signed.</param> internal virtual void closingReceived(Session session, bool authentic = false) { session._tearDown(); }