Herunterfahren einer Schannel-Verbindung

Wenn ein Client oder Server mit einer Verbindung fertig ist, muss er ihn herunterfahren. Die andere Partei muss wiederum das Herunterfahren erkennen und die Verbindung löschen.

So fahren Sie eine Schannel-Verbindung herunter

  1. Rufen Sie die ApplyControlToken-Funktion auf, und geben Sie das SCHANNEL _ SHUTDOWN-Steuerelementtoken an.
  2. Rufen Sie nach dem Empfang eines SEC _ E _ OK-Rückgabewerts von ApplyControlTokendie Funktion InitializeSecurityContext (Schannel) (Clients) oder AcceptSecurityContext (Schannel) (Server) auf, und übergeben Sie leere Puffer.
  3. Fahren Sie so fort, als würde Ihre Anwendung eine neue Verbindung erstellen, bis die Funktion SEC _ I CONTEXT EXPIRED oder SEC E OK _ zurückgibt, um _ _ _ anzugeben, dass die Verbindung beendet wurde.
  4. Senden Sie ggf. die endgültigen Ausgabeinformationen an die Remotepartei.
  5. Rufen Sie DeleteSecurityContext auf, um ressourcenfrei zu machen, die von der Verbindung gehalten werden.

Erkennen eines Herunterfahrens

Die DecryptMessage (Schannel)-Funktion gibt SEC _ I CONTEXT EXPIRED _ _ zurück, wenn der Absender der Nachricht die Verbindung beendet hat. Nachdem Sie diesen Rückgabewert erhalten haben, befolgen Sie das Verfahren So fahren Sie eine Schannel-Verbindung weiter oben in diesem Thema herunter.