func (o RequestMessage) EncodeXDRInto(xw *xdr.Writer) (int, error) { if l := len(o.Folder); l > 64 { return xw.Tot(), xdr.ElementSizeExceeded("Folder", l, 64) } xw.WriteString(o.Folder) if l := len(o.Name); l > 8192 { return xw.Tot(), xdr.ElementSizeExceeded("Name", l, 8192) } xw.WriteString(o.Name) xw.WriteUint64(uint64(o.Offset)) xw.WriteUint32(uint32(o.Size)) if l := len(o.Hash); l > 64 { return xw.Tot(), xdr.ElementSizeExceeded("Hash", l, 64) } xw.WriteBytes(o.Hash) xw.WriteUint32(o.Flags) if l := len(o.Options); l > 64 { return xw.Tot(), xdr.ElementSizeExceeded("Options", l, 64) } xw.WriteUint32(uint32(len(o.Options))) for i := range o.Options { _, err := o.Options[i].EncodeXDRInto(xw) if err != nil { return xw.Tot(), err } } return xw.Tot(), xw.Error() }
func (o Device) EncodeXDRInto(xw *xdr.Writer) (int, error) { if l := len(o.ID); l > 32 { return xw.Tot(), xdr.ElementSizeExceeded("ID", l, 32) } xw.WriteBytes(o.ID) if l := len(o.Name); l > 64 { return xw.Tot(), xdr.ElementSizeExceeded("Name", l, 64) } xw.WriteString(o.Name) if l := len(o.Addresses); l > 64 { return xw.Tot(), xdr.ElementSizeExceeded("Addresses", l, 64) } xw.WriteUint32(uint32(len(o.Addresses))) for i := range o.Addresses { xw.WriteString(o.Addresses[i]) } xw.WriteUint32(o.Compression) if l := len(o.CertName); l > 64 { return xw.Tot(), xdr.ElementSizeExceeded("CertName", l, 64) } xw.WriteString(o.CertName) xw.WriteUint64(uint64(o.MaxLocalVersion)) xw.WriteUint32(o.Flags) if l := len(o.Options); l > 64 { return xw.Tot(), xdr.ElementSizeExceeded("Options", l, 64) } xw.WriteUint32(uint32(len(o.Options))) for i := range o.Options { _, err := o.Options[i].EncodeXDRInto(xw) if err != nil { return xw.Tot(), err } } return xw.Tot(), xw.Error() }
func (o FileInfo) EncodeXDRInto(xw *xdr.Writer) (int, error) { if l := len(o.Name); l > 8192 { return xw.Tot(), xdr.ElementSizeExceeded("Name", l, 8192) } xw.WriteString(o.Name) xw.WriteUint32(o.Flags) xw.WriteUint64(uint64(o.Modified)) _, err := o.Version.EncodeXDRInto(xw) if err != nil { return xw.Tot(), err } xw.WriteUint64(uint64(o.LocalVersion)) if l := len(o.Blocks); l > 1000000 { return xw.Tot(), xdr.ElementSizeExceeded("Blocks", l, 1000000) } xw.WriteUint32(uint32(len(o.Blocks))) for i := range o.Blocks { _, err := o.Blocks[i].EncodeXDRInto(xw) if err != nil { return xw.Tot(), err } } xw.WriteUint32(uint32(o.UID)) xw.WriteUint32(uint32(o.GID)) return xw.Tot(), xw.Error() }
func (o Device) encodeXDR(xw *xdr.Writer) (int, error) { if len(o.ID) > 32 { return xw.Tot(), xdr.ErrElementSizeExceeded } xw.WriteBytes(o.ID) xw.WriteUint32(o.Flags) xw.WriteUint64(o.MaxLocalVersion) return xw.Tot(), xw.Error() }
func (o RequestMessage) encodeXDR(xw *xdr.Writer) (int, error) { if len(o.Folder) > 64 { return xw.Tot(), xdr.ErrElementSizeExceeded } xw.WriteString(o.Folder) if len(o.Name) > 8192 { return xw.Tot(), xdr.ErrElementSizeExceeded } xw.WriteString(o.Name) xw.WriteUint64(o.Offset) xw.WriteUint32(o.Size) return xw.Tot(), xw.Error() }
func (o RequestMessage) encodeXDR(xw *xdr.Writer) (int, error) { if l := len(o.Folder); l > 64 { return xw.Tot(), xdr.ElementSizeExceeded("Folder", l, 64) } xw.WriteString(o.Folder) if l := len(o.Name); l > 8192 { return xw.Tot(), xdr.ElementSizeExceeded("Name", l, 8192) } xw.WriteString(o.Name) xw.WriteUint64(o.Offset) xw.WriteUint32(o.Size) return xw.Tot(), xw.Error() }
func (o XDRBenchStruct) EncodeXDRInto(xw *xdr.Writer) (int, error) { xw.WriteUint64(o.I1) xw.WriteUint32(o.I2) xw.WriteUint16(o.I3) xw.WriteUint8(o.I4) if l := len(o.Bs0); l > 128 { return xw.Tot(), xdr.ElementSizeExceeded("Bs0", l, 128) } xw.WriteBytes(o.Bs0) xw.WriteBytes(o.Bs1) if l := len(o.S0); l > 128 { return xw.Tot(), xdr.ElementSizeExceeded("S0", l, 128) } xw.WriteString(o.S0) xw.WriteString(o.S1) return xw.Tot(), xw.Error() }
func (o XDRBenchStruct) encodeXDR(xw *xdr.Writer) (int, error) { xw.WriteUint64(o.I1) xw.WriteUint32(o.I2) xw.WriteUint16(o.I3) xw.WriteUint8(o.I4) if len(o.Bs0) > 128 { return xw.Tot(), xdr.ErrElementSizeExceeded } xw.WriteBytes(o.Bs0) xw.WriteBytes(o.Bs1) if len(o.S0) > 128 { return xw.Tot(), xdr.ErrElementSizeExceeded } xw.WriteString(o.S0) xw.WriteString(o.S1) return xw.Tot(), xw.Error() }
func (o TestStruct) EncodeXDRInto(xw *xdr.Writer) (int, error) { xw.WriteUint64(uint64(o.I)) xw.WriteUint8(uint8(o.I8)) xw.WriteUint8(o.UI8) xw.WriteUint16(uint16(o.I16)) xw.WriteUint16(o.UI16) xw.WriteUint32(uint32(o.I32)) xw.WriteUint32(o.UI32) xw.WriteUint64(uint64(o.I64)) xw.WriteUint64(o.UI64) if l := len(o.BS); l > 1024 { return xw.Tot(), xdr.ElementSizeExceeded("BS", l, 1024) } xw.WriteBytes(o.BS) if l := len(o.S); l > 1024 { return xw.Tot(), xdr.ElementSizeExceeded("S", l, 1024) } xw.WriteString(o.S) _, err := o.C.EncodeXDRInto(xw) if err != nil { return xw.Tot(), err } if l := len(o.SS); l > 1024 { return xw.Tot(), xdr.ElementSizeExceeded("SS", l, 1024) } xw.WriteUint32(uint32(len(o.SS))) for i := range o.SS { xw.WriteString(o.SS[i]) } return xw.Tot(), xw.Error() }
func (o FileInfoTruncated) encodeXDR(xw *xdr.Writer) (int, error) { if len(o.Name) > 8192 { return xw.Tot(), xdr.ErrElementSizeExceeded } xw.WriteString(o.Name) xw.WriteUint32(o.Flags) xw.WriteUint64(uint64(o.Modified)) xw.WriteUint64(o.Version) xw.WriteUint64(o.LocalVersion) xw.WriteUint32(o.NumBlocks) return xw.Tot(), xw.Error() }
func (o FileInfo) encodeXDR(xw *xdr.Writer) (int, error) { if len(o.Name) > 8192 { return xw.Tot(), xdr.ErrElementSizeExceeded } xw.WriteString(o.Name) xw.WriteUint32(o.Flags) xw.WriteUint64(uint64(o.Modified)) xw.WriteUint64(o.Version) xw.WriteUint64(o.LocalVersion) xw.WriteUint32(uint32(len(o.Blocks))) for i := range o.Blocks { _, err := o.Blocks[i].encodeXDR(xw) if err != nil { return xw.Tot(), err } } return xw.Tot(), xw.Error() }
func (o TestStruct) encodeXDR(xw *xdr.Writer) (int, error) { xw.WriteUint64(uint64(o.I)) xw.WriteUint8(uint8(o.I8)) xw.WriteUint8(o.UI8) xw.WriteUint16(uint16(o.I16)) xw.WriteUint16(o.UI16) xw.WriteUint32(uint32(o.I32)) xw.WriteUint32(o.UI32) xw.WriteUint64(uint64(o.I64)) xw.WriteUint64(o.UI64) xw.WriteBytes(o.BS) xw.WriteString(o.S) _, err := o.C.encodeXDR(xw) if err != nil { return xw.Tot(), err } return xw.Tot(), xw.Error() }
func (o fileVersion) encodeXDR(xw *xdr.Writer) (int, error) { xw.WriteUint64(uint64(o.version)) xw.WriteBytes(o.device) return xw.Tot(), xw.Error() }
func (o address) encodeXDR(xw *xdr.Writer) (int, error) { xw.WriteBytes(o.ip) xw.WriteUint16(o.port) xw.WriteUint64(uint64(o.seen)) return xw.Tot(), xw.Error() }