public void DoSend(INbtOutput data) { if (!IsAlive) { throw new CifsIoException("NB504"); } int size = data.Size & 0xffff; // set packet header fSessionHeader[HDR_TYPE_1] = SPT_MESSAGE; fSessionHeader[HDR_FLAGS_1] = 0; SetShortAt(HDR_LENGTH_2, fSessionHeader, (short)size); try { fOutput.Write(fSessionHeader, 0, fSessionHeader.Length); data.WriteTo(fOutput, size); fOutput.Flush(); } catch (IOException e) { DoHangup(true); throw new CifsIoException("NB500").setDetail(e).setConnectionLost(); } }
public void DoSend(INbtOutput data) { if(!IsAlive) throw new CifsIoException("NB504"); int size = data.Size & 0xffff; // set packet header fSessionHeader[HDR_TYPE_1] = SPT_MESSAGE; fSessionHeader[HDR_FLAGS_1] = 0; SetShortAt(HDR_LENGTH_2, fSessionHeader, (short)size); try { fOutput.Write(fSessionHeader, 0, fSessionHeader.Length); data.WriteTo(fOutput, size); fOutput.Flush(); } catch(IOException e) { DoHangup(true); throw new CifsIoException("NB500").setDetail(e).setConnectionLost(); } }