type recType …
const typeBeginRequest …
const typeAbortRequest …
const typeEndRequest …
const typeParams …
const typeStdin …
const typeStdout …
const typeStderr …
const typeData …
const typeGetValues …
const typeGetValuesResult …
const typeUnknownType …
const flagKeepConn …
const maxWrite …
const maxPad …
const roleResponder …
const roleAuthorizer …
const roleFilter …
const statusRequestComplete …
const statusCantMultiplex …
const statusOverloaded …
const statusUnknownRole …
type header …
type beginRequest …
func (br *beginRequest) read(content []byte) error { … }
var pad …
func (h *header) init(recType recType, reqId uint16, contentLength int) { … }
type conn …
func newConn(rwc io.ReadWriteCloser) *conn { … }
func (c *conn) Close() error { … }
type record …
func (rec *record) read(r io.Reader) (err error) { … }
func (r *record) content() []byte { … }
func (c *conn) writeRecord(recType recType, reqId uint16, b []byte) error { … }
func (c *conn) writeEndRequest(reqId uint16, appStatus int, protocolStatus uint8) error { … }
func (c *conn) writePairs(recType recType, reqId uint16, pairs map[string]string) error { … }
func readSize(s []byte) (uint32, int) { … }
func readString(s []byte, size uint32) string { … }
func encodeSize(b []byte, size uint32) int { … }
type bufWriter …
func (w *bufWriter) Close() error { … }
func newWriter(c *conn, recType recType, reqId uint16) *bufWriter { … }
type streamWriter …
func (w *streamWriter) Write(p []byte) (int, error) { … }
func (w *streamWriter) Close() error { … }