据说要关闭一个schannel连接需要遵循以下步骤: 1)调用ApplyControlToken函数,指定SCHANNEL_SHUTDOWN控制令牌。
2)从ApplyControlToken收到SEC_E_OK返回值后,调用InitializeSecurityContext(Schannel)(客户端)或AcceptSecurityContext(Schannel)(服务器)函数,传入空缓冲区。
3) 就好像您的应用程序正在创建一个新连接一样继续进行,直到函数返回 SEC_I_CONTEXT_EXPIRED 或 SEC_E_OK 以指示连接已关闭。将最终输出信息(如果有)发送给远程方。
4)Call DeleteSecurityContext to free resources held by the connection.
从链接Shutting Down an Schannel Connection 但是,我们是否需要从客户端和服务器传递信息。传递信息后,我们需要在远程端如何处理该信息。