public NTStatus Logoff() { if (!m_isConnected) { throw new InvalidOperationException("A login session must be successfully established before attempting logoff"); } LogoffAndXRequest request = new LogoffAndXRequest(); TrySendMessage(request); SMB1Message reply = WaitForMessage(CommandName.SMB_COM_LOGOFF_ANDX); if (reply != null) { m_isLoggedIn = (reply.Header.Status != NTStatus.STATUS_SUCCESS); return(reply.Header.Status); } return(NTStatus.STATUS_INVALID_SMB); }
public void Logoff() { if (!IsConnected) { throw new InvalidOperationException("A session must be successfully established before attempting logoff"); } if (!m_isLoggedIn) { throw new InvalidOperationException("A login session must be successfully established before attempting logoff"); } LogoffAndXRequest request = new LogoffAndXRequest(); SendMessage(request); SMB1Message reply = WaitForMessage(CommandName.SMB_COM_LOGOFF_ANDX); if (reply.Header.Status == NTStatus.STATUS_SUCCESS) { m_isLoggedIn = false; } reply.IsSuccessElseThrow(); }