internal virtual OtpInputStream getOtpInputStream(int offset) { return new OtpInputStream(buf, offset, _count - offset); }
// used by the other message types protected internal virtual void do_send(OtpOutputStream header) { lock(this) { try { if (traceLevel >= OtpTrace.Type.ctrlThreshold) { try { Erlang.Object h = (header.getOtpInputStream(5)).read_any(); OtpTrace.TraceEvent("-> " + headerType(h) + " " + h); } catch (Erlang.Exception e) { OtpTrace.TraceEvent(" " + "can't decode output buffer: " + e); } } header.writeTo((System.IO.Stream) socket.GetStream()); } catch (System.Net.Sockets.SocketException e) { close(); throw e; } catch (System.IO.IOException e) { close(); throw e; } } }