| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958 |
- // ************************************************************
- // This file is automatically generated by genxdr. Do not edit.
- // ************************************************************
- package protocol
- import (
- "bytes"
- "io"
- "github.com/calmh/xdr"
- )
- /*
- IndexMessage Structure:
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Length of Folder |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Folder (variable length) \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Number of Files |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Zero or more FileInfo Structures \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- struct IndexMessage {
- string Folder<64>;
- FileInfo Files<>;
- }
- */
- func (o IndexMessage) EncodeXDR(w io.Writer) (int, error) {
- var xw = xdr.NewWriter(w)
- return o.encodeXDR(xw)
- }
- func (o IndexMessage) MarshalXDR() []byte {
- return o.AppendXDR(make([]byte, 0, 128))
- }
- func (o IndexMessage) AppendXDR(bs []byte) []byte {
- var aw = xdr.AppendWriter(bs)
- var xw = xdr.NewWriter(&aw)
- o.encodeXDR(xw)
- return []byte(aw)
- }
- func (o IndexMessage) encodeXDR(xw *xdr.Writer) (int, error) {
- if len(o.Folder) > 64 {
- return xw.Tot(), xdr.ErrElementSizeExceeded
- }
- xw.WriteString(o.Folder)
- xw.WriteUint32(uint32(len(o.Files)))
- for i := range o.Files {
- _, err := o.Files[i].encodeXDR(xw)
- if err != nil {
- return xw.Tot(), err
- }
- }
- return xw.Tot(), xw.Error()
- }
- func (o *IndexMessage) DecodeXDR(r io.Reader) error {
- xr := xdr.NewReader(r)
- return o.decodeXDR(xr)
- }
- func (o *IndexMessage) UnmarshalXDR(bs []byte) error {
- var br = bytes.NewReader(bs)
- var xr = xdr.NewReader(br)
- return o.decodeXDR(xr)
- }
- func (o *IndexMessage) decodeXDR(xr *xdr.Reader) error {
- o.Folder = xr.ReadStringMax(64)
- _FilesSize := int(xr.ReadUint32())
- o.Files = make([]FileInfo, _FilesSize)
- for i := range o.Files {
- (&o.Files[i]).decodeXDR(xr)
- }
- return xr.Error()
- }
- /*
- FileInfo Structure:
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Length of Name |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Name (variable length) \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Flags |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | |
- + Modified (64 bits) +
- | |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | |
- + Version (64 bits) +
- | |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | |
- + Local Version (64 bits) +
- | |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Number of Blocks |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Zero or more BlockInfo Structures \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- struct FileInfo {
- string Name<8192>;
- unsigned int Flags;
- hyper Modified;
- unsigned hyper Version;
- unsigned hyper LocalVersion;
- BlockInfo Blocks<>;
- }
- */
- func (o FileInfo) EncodeXDR(w io.Writer) (int, error) {
- var xw = xdr.NewWriter(w)
- return o.encodeXDR(xw)
- }
- func (o FileInfo) MarshalXDR() []byte {
- return o.AppendXDR(make([]byte, 0, 128))
- }
- func (o FileInfo) AppendXDR(bs []byte) []byte {
- var aw = xdr.AppendWriter(bs)
- var xw = xdr.NewWriter(&aw)
- o.encodeXDR(xw)
- return []byte(aw)
- }
- 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 *FileInfo) DecodeXDR(r io.Reader) error {
- xr := xdr.NewReader(r)
- return o.decodeXDR(xr)
- }
- func (o *FileInfo) UnmarshalXDR(bs []byte) error {
- var br = bytes.NewReader(bs)
- var xr = xdr.NewReader(br)
- return o.decodeXDR(xr)
- }
- func (o *FileInfo) decodeXDR(xr *xdr.Reader) error {
- o.Name = xr.ReadStringMax(8192)
- o.Flags = xr.ReadUint32()
- o.Modified = int64(xr.ReadUint64())
- o.Version = xr.ReadUint64()
- o.LocalVersion = xr.ReadUint64()
- _BlocksSize := int(xr.ReadUint32())
- o.Blocks = make([]BlockInfo, _BlocksSize)
- for i := range o.Blocks {
- (&o.Blocks[i]).decodeXDR(xr)
- }
- return xr.Error()
- }
- /*
- FileInfoTruncated Structure:
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Length of Name |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Name (variable length) \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Flags |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | |
- + Modified (64 bits) +
- | |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | |
- + Version (64 bits) +
- | |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | |
- + Local Version (64 bits) +
- | |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Num Blocks |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- struct FileInfoTruncated {
- string Name<8192>;
- unsigned int Flags;
- hyper Modified;
- unsigned hyper Version;
- unsigned hyper LocalVersion;
- unsigned int NumBlocks;
- }
- */
- func (o FileInfoTruncated) EncodeXDR(w io.Writer) (int, error) {
- var xw = xdr.NewWriter(w)
- return o.encodeXDR(xw)
- }
- func (o FileInfoTruncated) MarshalXDR() []byte {
- return o.AppendXDR(make([]byte, 0, 128))
- }
- func (o FileInfoTruncated) AppendXDR(bs []byte) []byte {
- var aw = xdr.AppendWriter(bs)
- var xw = xdr.NewWriter(&aw)
- o.encodeXDR(xw)
- return []byte(aw)
- }
- 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 *FileInfoTruncated) DecodeXDR(r io.Reader) error {
- xr := xdr.NewReader(r)
- return o.decodeXDR(xr)
- }
- func (o *FileInfoTruncated) UnmarshalXDR(bs []byte) error {
- var br = bytes.NewReader(bs)
- var xr = xdr.NewReader(br)
- return o.decodeXDR(xr)
- }
- func (o *FileInfoTruncated) decodeXDR(xr *xdr.Reader) error {
- o.Name = xr.ReadStringMax(8192)
- o.Flags = xr.ReadUint32()
- o.Modified = int64(xr.ReadUint64())
- o.Version = xr.ReadUint64()
- o.LocalVersion = xr.ReadUint64()
- o.NumBlocks = xr.ReadUint32()
- return xr.Error()
- }
- /*
- BlockInfo Structure:
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Size |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Length of Hash |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Hash (variable length) \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- struct BlockInfo {
- unsigned int Size;
- opaque Hash<64>;
- }
- */
- func (o BlockInfo) EncodeXDR(w io.Writer) (int, error) {
- var xw = xdr.NewWriter(w)
- return o.encodeXDR(xw)
- }
- func (o BlockInfo) MarshalXDR() []byte {
- return o.AppendXDR(make([]byte, 0, 128))
- }
- func (o BlockInfo) AppendXDR(bs []byte) []byte {
- var aw = xdr.AppendWriter(bs)
- var xw = xdr.NewWriter(&aw)
- o.encodeXDR(xw)
- return []byte(aw)
- }
- func (o BlockInfo) encodeXDR(xw *xdr.Writer) (int, error) {
- xw.WriteUint32(o.Size)
- if len(o.Hash) > 64 {
- return xw.Tot(), xdr.ErrElementSizeExceeded
- }
- xw.WriteBytes(o.Hash)
- return xw.Tot(), xw.Error()
- }
- func (o *BlockInfo) DecodeXDR(r io.Reader) error {
- xr := xdr.NewReader(r)
- return o.decodeXDR(xr)
- }
- func (o *BlockInfo) UnmarshalXDR(bs []byte) error {
- var br = bytes.NewReader(bs)
- var xr = xdr.NewReader(br)
- return o.decodeXDR(xr)
- }
- func (o *BlockInfo) decodeXDR(xr *xdr.Reader) error {
- o.Size = xr.ReadUint32()
- o.Hash = xr.ReadBytesMax(64)
- return xr.Error()
- }
- /*
- RequestMessage Structure:
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Length of Folder |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Folder (variable length) \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Length of Name |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Name (variable length) \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | |
- + Offset (64 bits) +
- | |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Size |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- struct RequestMessage {
- string Folder<64>;
- string Name<8192>;
- unsigned hyper Offset;
- unsigned int Size;
- }
- */
- func (o RequestMessage) EncodeXDR(w io.Writer) (int, error) {
- var xw = xdr.NewWriter(w)
- return o.encodeXDR(xw)
- }
- func (o RequestMessage) MarshalXDR() []byte {
- return o.AppendXDR(make([]byte, 0, 128))
- }
- func (o RequestMessage) AppendXDR(bs []byte) []byte {
- var aw = xdr.AppendWriter(bs)
- var xw = xdr.NewWriter(&aw)
- o.encodeXDR(xw)
- return []byte(aw)
- }
- 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) DecodeXDR(r io.Reader) error {
- xr := xdr.NewReader(r)
- return o.decodeXDR(xr)
- }
- func (o *RequestMessage) UnmarshalXDR(bs []byte) error {
- var br = bytes.NewReader(bs)
- var xr = xdr.NewReader(br)
- return o.decodeXDR(xr)
- }
- func (o *RequestMessage) decodeXDR(xr *xdr.Reader) error {
- o.Folder = xr.ReadStringMax(64)
- o.Name = xr.ReadStringMax(8192)
- o.Offset = xr.ReadUint64()
- o.Size = xr.ReadUint32()
- return xr.Error()
- }
- /*
- ResponseMessage Structure:
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Length of Data |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Data (variable length) \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- struct ResponseMessage {
- opaque Data<>;
- }
- */
- func (o ResponseMessage) EncodeXDR(w io.Writer) (int, error) {
- var xw = xdr.NewWriter(w)
- return o.encodeXDR(xw)
- }
- func (o ResponseMessage) MarshalXDR() []byte {
- return o.AppendXDR(make([]byte, 0, 128))
- }
- func (o ResponseMessage) AppendXDR(bs []byte) []byte {
- var aw = xdr.AppendWriter(bs)
- var xw = xdr.NewWriter(&aw)
- o.encodeXDR(xw)
- return []byte(aw)
- }
- func (o ResponseMessage) encodeXDR(xw *xdr.Writer) (int, error) {
- xw.WriteBytes(o.Data)
- return xw.Tot(), xw.Error()
- }
- func (o *ResponseMessage) DecodeXDR(r io.Reader) error {
- xr := xdr.NewReader(r)
- return o.decodeXDR(xr)
- }
- func (o *ResponseMessage) UnmarshalXDR(bs []byte) error {
- var br = bytes.NewReader(bs)
- var xr = xdr.NewReader(br)
- return o.decodeXDR(xr)
- }
- func (o *ResponseMessage) decodeXDR(xr *xdr.Reader) error {
- o.Data = xr.ReadBytes()
- return xr.Error()
- }
- /*
- ClusterConfigMessage Structure:
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Length of Client Name |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Client Name (variable length) \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Length of Client Version |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Client Version (variable length) \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Number of Folders |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Zero or more Folder Structures \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Number of Options |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Zero or more Option Structures \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- struct ClusterConfigMessage {
- string ClientName<64>;
- string ClientVersion<64>;
- Folder Folders<64>;
- Option Options<64>;
- }
- */
- func (o ClusterConfigMessage) EncodeXDR(w io.Writer) (int, error) {
- var xw = xdr.NewWriter(w)
- return o.encodeXDR(xw)
- }
- func (o ClusterConfigMessage) MarshalXDR() []byte {
- return o.AppendXDR(make([]byte, 0, 128))
- }
- func (o ClusterConfigMessage) AppendXDR(bs []byte) []byte {
- var aw = xdr.AppendWriter(bs)
- var xw = xdr.NewWriter(&aw)
- o.encodeXDR(xw)
- return []byte(aw)
- }
- func (o ClusterConfigMessage) encodeXDR(xw *xdr.Writer) (int, error) {
- if len(o.ClientName) > 64 {
- return xw.Tot(), xdr.ErrElementSizeExceeded
- }
- xw.WriteString(o.ClientName)
- if len(o.ClientVersion) > 64 {
- return xw.Tot(), xdr.ErrElementSizeExceeded
- }
- xw.WriteString(o.ClientVersion)
- if len(o.Folders) > 64 {
- return xw.Tot(), xdr.ErrElementSizeExceeded
- }
- xw.WriteUint32(uint32(len(o.Folders)))
- for i := range o.Folders {
- _, err := o.Folders[i].encodeXDR(xw)
- if err != nil {
- return xw.Tot(), err
- }
- }
- if len(o.Options) > 64 {
- return xw.Tot(), xdr.ErrElementSizeExceeded
- }
- xw.WriteUint32(uint32(len(o.Options)))
- for i := range o.Options {
- _, err := o.Options[i].encodeXDR(xw)
- if err != nil {
- return xw.Tot(), err
- }
- }
- return xw.Tot(), xw.Error()
- }
- func (o *ClusterConfigMessage) DecodeXDR(r io.Reader) error {
- xr := xdr.NewReader(r)
- return o.decodeXDR(xr)
- }
- func (o *ClusterConfigMessage) UnmarshalXDR(bs []byte) error {
- var br = bytes.NewReader(bs)
- var xr = xdr.NewReader(br)
- return o.decodeXDR(xr)
- }
- func (o *ClusterConfigMessage) decodeXDR(xr *xdr.Reader) error {
- o.ClientName = xr.ReadStringMax(64)
- o.ClientVersion = xr.ReadStringMax(64)
- _FoldersSize := int(xr.ReadUint32())
- if _FoldersSize > 64 {
- return xdr.ErrElementSizeExceeded
- }
- o.Folders = make([]Folder, _FoldersSize)
- for i := range o.Folders {
- (&o.Folders[i]).decodeXDR(xr)
- }
- _OptionsSize := int(xr.ReadUint32())
- if _OptionsSize > 64 {
- return xdr.ErrElementSizeExceeded
- }
- o.Options = make([]Option, _OptionsSize)
- for i := range o.Options {
- (&o.Options[i]).decodeXDR(xr)
- }
- return xr.Error()
- }
- /*
- Folder Structure:
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Length of ID |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ ID (variable length) \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Number of Devices |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Zero or more Device Structures \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- struct Folder {
- string ID<64>;
- Device Devices<>;
- }
- */
- func (o Folder) EncodeXDR(w io.Writer) (int, error) {
- var xw = xdr.NewWriter(w)
- return o.encodeXDR(xw)
- }
- func (o Folder) MarshalXDR() []byte {
- return o.AppendXDR(make([]byte, 0, 128))
- }
- func (o Folder) AppendXDR(bs []byte) []byte {
- var aw = xdr.AppendWriter(bs)
- var xw = xdr.NewWriter(&aw)
- o.encodeXDR(xw)
- return []byte(aw)
- }
- func (o Folder) encodeXDR(xw *xdr.Writer) (int, error) {
- if len(o.ID) > 64 {
- return xw.Tot(), xdr.ErrElementSizeExceeded
- }
- xw.WriteString(o.ID)
- xw.WriteUint32(uint32(len(o.Devices)))
- for i := range o.Devices {
- _, err := o.Devices[i].encodeXDR(xw)
- if err != nil {
- return xw.Tot(), err
- }
- }
- return xw.Tot(), xw.Error()
- }
- func (o *Folder) DecodeXDR(r io.Reader) error {
- xr := xdr.NewReader(r)
- return o.decodeXDR(xr)
- }
- func (o *Folder) UnmarshalXDR(bs []byte) error {
- var br = bytes.NewReader(bs)
- var xr = xdr.NewReader(br)
- return o.decodeXDR(xr)
- }
- func (o *Folder) decodeXDR(xr *xdr.Reader) error {
- o.ID = xr.ReadStringMax(64)
- _DevicesSize := int(xr.ReadUint32())
- o.Devices = make([]Device, _DevicesSize)
- for i := range o.Devices {
- (&o.Devices[i]).decodeXDR(xr)
- }
- return xr.Error()
- }
- /*
- Device Structure:
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Length of ID |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ ID (variable length) \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Flags |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | |
- + Max Local Version (64 bits) +
- | |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- struct Device {
- opaque ID<32>;
- unsigned int Flags;
- unsigned hyper MaxLocalVersion;
- }
- */
- func (o Device) EncodeXDR(w io.Writer) (int, error) {
- var xw = xdr.NewWriter(w)
- return o.encodeXDR(xw)
- }
- func (o Device) MarshalXDR() []byte {
- return o.AppendXDR(make([]byte, 0, 128))
- }
- func (o Device) AppendXDR(bs []byte) []byte {
- var aw = xdr.AppendWriter(bs)
- var xw = xdr.NewWriter(&aw)
- o.encodeXDR(xw)
- return []byte(aw)
- }
- 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 *Device) DecodeXDR(r io.Reader) error {
- xr := xdr.NewReader(r)
- return o.decodeXDR(xr)
- }
- func (o *Device) UnmarshalXDR(bs []byte) error {
- var br = bytes.NewReader(bs)
- var xr = xdr.NewReader(br)
- return o.decodeXDR(xr)
- }
- func (o *Device) decodeXDR(xr *xdr.Reader) error {
- o.ID = xr.ReadBytesMax(32)
- o.Flags = xr.ReadUint32()
- o.MaxLocalVersion = xr.ReadUint64()
- return xr.Error()
- }
- /*
- Option Structure:
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Length of Key |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Key (variable length) \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Length of Value |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Value (variable length) \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- struct Option {
- string Key<64>;
- string Value<1024>;
- }
- */
- func (o Option) EncodeXDR(w io.Writer) (int, error) {
- var xw = xdr.NewWriter(w)
- return o.encodeXDR(xw)
- }
- func (o Option) MarshalXDR() []byte {
- return o.AppendXDR(make([]byte, 0, 128))
- }
- func (o Option) AppendXDR(bs []byte) []byte {
- var aw = xdr.AppendWriter(bs)
- var xw = xdr.NewWriter(&aw)
- o.encodeXDR(xw)
- return []byte(aw)
- }
- func (o Option) encodeXDR(xw *xdr.Writer) (int, error) {
- if len(o.Key) > 64 {
- return xw.Tot(), xdr.ErrElementSizeExceeded
- }
- xw.WriteString(o.Key)
- if len(o.Value) > 1024 {
- return xw.Tot(), xdr.ErrElementSizeExceeded
- }
- xw.WriteString(o.Value)
- return xw.Tot(), xw.Error()
- }
- func (o *Option) DecodeXDR(r io.Reader) error {
- xr := xdr.NewReader(r)
- return o.decodeXDR(xr)
- }
- func (o *Option) UnmarshalXDR(bs []byte) error {
- var br = bytes.NewReader(bs)
- var xr = xdr.NewReader(br)
- return o.decodeXDR(xr)
- }
- func (o *Option) decodeXDR(xr *xdr.Reader) error {
- o.Key = xr.ReadStringMax(64)
- o.Value = xr.ReadStringMax(1024)
- return xr.Error()
- }
- /*
- CloseMessage Structure:
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Length of Reason |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- / /
- \ Reason (variable length) \
- / /
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- struct CloseMessage {
- string Reason<1024>;
- }
- */
- func (o CloseMessage) EncodeXDR(w io.Writer) (int, error) {
- var xw = xdr.NewWriter(w)
- return o.encodeXDR(xw)
- }
- func (o CloseMessage) MarshalXDR() []byte {
- return o.AppendXDR(make([]byte, 0, 128))
- }
- func (o CloseMessage) AppendXDR(bs []byte) []byte {
- var aw = xdr.AppendWriter(bs)
- var xw = xdr.NewWriter(&aw)
- o.encodeXDR(xw)
- return []byte(aw)
- }
- func (o CloseMessage) encodeXDR(xw *xdr.Writer) (int, error) {
- if len(o.Reason) > 1024 {
- return xw.Tot(), xdr.ErrElementSizeExceeded
- }
- xw.WriteString(o.Reason)
- return xw.Tot(), xw.Error()
- }
- func (o *CloseMessage) DecodeXDR(r io.Reader) error {
- xr := xdr.NewReader(r)
- return o.decodeXDR(xr)
- }
- func (o *CloseMessage) UnmarshalXDR(bs []byte) error {
- var br = bytes.NewReader(bs)
- var xr = xdr.NewReader(br)
- return o.decodeXDR(xr)
- }
- func (o *CloseMessage) decodeXDR(xr *xdr.Reader) error {
- o.Reason = xr.ReadStringMax(1024)
- return xr.Error()
- }
- /*
- EmptyMessage Structure:
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- struct EmptyMessage {
- }
- */
- func (o EmptyMessage) EncodeXDR(w io.Writer) (int, error) {
- var xw = xdr.NewWriter(w)
- return o.encodeXDR(xw)
- }
- func (o EmptyMessage) MarshalXDR() []byte {
- return o.AppendXDR(make([]byte, 0, 128))
- }
- func (o EmptyMessage) AppendXDR(bs []byte) []byte {
- var aw = xdr.AppendWriter(bs)
- var xw = xdr.NewWriter(&aw)
- o.encodeXDR(xw)
- return []byte(aw)
- }
- func (o EmptyMessage) encodeXDR(xw *xdr.Writer) (int, error) {
- return xw.Tot(), xw.Error()
- }
- func (o *EmptyMessage) DecodeXDR(r io.Reader) error {
- xr := xdr.NewReader(r)
- return o.decodeXDR(xr)
- }
- func (o *EmptyMessage) UnmarshalXDR(bs []byte) error {
- var br = bytes.NewReader(bs)
- var xr = xdr.NewReader(br)
- return o.decodeXDR(xr)
- }
- func (o *EmptyMessage) decodeXDR(xr *xdr.Reader) error {
- return xr.Error()
- }
|