syncthing/internal/discover/packets_xdr.go

352 lines
9.1 KiB
Go
Raw Normal View History

2014-07-13 07:24:25 +00:00
// ************************************************************
// This file is automatically generated by genxdr. Do not edit.
// ************************************************************
2014-02-20 16:40:15 +00:00
package discover
import (
"bytes"
"io"
2014-08-01 11:12:54 +00:00
"github.com/calmh/xdr"
2014-02-20 16:40:15 +00:00
)
2014-07-13 07:24:25 +00:00
/*
Query Structure:
2014-07-13 07:24:25 +00:00
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Magic |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Length of Device ID |
2014-07-13 07:24:25 +00:00
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
/ /
\ Device ID (variable length) \
2014-07-13 07:24:25 +00:00
/ /
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
struct Query {
2014-07-13 07:24:25 +00:00
unsigned int Magic;
opaque DeviceID<32>;
2014-07-13 07:24:25 +00:00
}
*/
func (o Query) EncodeXDR(w io.Writer) (int, error) {
2014-02-20 16:40:15 +00:00
var xw = xdr.NewWriter(w)
2015-03-25 21:37:35 +00:00
return o.EncodeXDRInto(xw)
2014-02-20 16:40:15 +00:00
}
2014-10-21 06:40:05 +00:00
func (o Query) MarshalXDR() ([]byte, error) {
return o.AppendXDR(make([]byte, 0, 128))
}
2014-10-21 06:40:05 +00:00
func (o Query) MustMarshalXDR() []byte {
bs, err := o.MarshalXDR()
if err != nil {
panic(err)
}
return bs
}
func (o Query) AppendXDR(bs []byte) ([]byte, error) {
var aw = xdr.AppendWriter(bs)
2014-06-30 11:33:52 +00:00
var xw = xdr.NewWriter(&aw)
2015-03-25 21:37:35 +00:00
_, err := o.EncodeXDRInto(xw)
2014-10-21 06:40:05 +00:00
return []byte(aw), err
2014-02-20 16:40:15 +00:00
}
2015-03-25 21:37:35 +00:00
func (o Query) EncodeXDRInto(xw *xdr.Writer) (int, error) {
2014-02-20 16:40:15 +00:00
xw.WriteUint32(o.Magic)
2014-10-21 06:40:05 +00:00
if l := len(o.DeviceID); l > 32 {
return xw.Tot(), xdr.ElementSizeExceeded("DeviceID", l, 32)
2014-02-20 16:40:15 +00:00
}
xw.WriteBytes(o.DeviceID)
2014-02-20 16:40:15 +00:00
return xw.Tot(), xw.Error()
}
func (o *Query) DecodeXDR(r io.Reader) error {
2014-02-20 16:40:15 +00:00
xr := xdr.NewReader(r)
2015-03-25 21:37:35 +00:00
return o.DecodeXDRFrom(xr)
2014-02-20 16:40:15 +00:00
}
func (o *Query) UnmarshalXDR(bs []byte) error {
2014-06-30 11:33:52 +00:00
var br = bytes.NewReader(bs)
var xr = xdr.NewReader(br)
2015-03-25 21:37:35 +00:00
return o.DecodeXDRFrom(xr)
2014-02-20 16:40:15 +00:00
}
2015-03-25 21:37:35 +00:00
func (o *Query) DecodeXDRFrom(xr *xdr.Reader) error {
2014-02-20 16:40:15 +00:00
o.Magic = xr.ReadUint32()
o.DeviceID = xr.ReadBytesMax(32)
2014-02-20 16:40:15 +00:00
return xr.Error()
}
2014-07-13 07:24:25 +00:00
/*
Announce Structure:
2014-07-13 07:24:25 +00:00
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Magic |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
2015-03-25 21:37:35 +00:00
/ /
\ Device Structure \
/ /
2014-07-13 07:24:25 +00:00
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Number of Extra |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
/ /
\ Zero or more Device Structures \
2014-07-13 07:24:25 +00:00
/ /
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
struct Announce {
2014-07-13 07:24:25 +00:00
unsigned int Magic;
Device This;
Device Extra<16>;
2014-07-13 07:24:25 +00:00
}
*/
func (o Announce) EncodeXDR(w io.Writer) (int, error) {
2014-02-20 16:40:15 +00:00
var xw = xdr.NewWriter(w)
2015-03-25 21:37:35 +00:00
return o.EncodeXDRInto(xw)
2014-02-20 16:40:15 +00:00
}
2014-10-21 06:40:05 +00:00
func (o Announce) MarshalXDR() ([]byte, error) {
return o.AppendXDR(make([]byte, 0, 128))
}
2014-10-21 06:40:05 +00:00
func (o Announce) MustMarshalXDR() []byte {
bs, err := o.MarshalXDR()
if err != nil {
panic(err)
}
return bs
}
func (o Announce) AppendXDR(bs []byte) ([]byte, error) {
var aw = xdr.AppendWriter(bs)
2014-06-30 11:33:52 +00:00
var xw = xdr.NewWriter(&aw)
2015-03-25 21:37:35 +00:00
_, err := o.EncodeXDRInto(xw)
2014-10-21 06:40:05 +00:00
return []byte(aw), err
2014-02-20 16:40:15 +00:00
}
2015-03-25 21:37:35 +00:00
func (o Announce) EncodeXDRInto(xw *xdr.Writer) (int, error) {
2014-02-20 16:40:15 +00:00
xw.WriteUint32(o.Magic)
2015-03-25 21:37:35 +00:00
_, err := o.This.EncodeXDRInto(xw)
if err != nil {
return xw.Tot(), err
}
2014-10-21 06:40:05 +00:00
if l := len(o.Extra); l > 16 {
return xw.Tot(), xdr.ElementSizeExceeded("Extra", l, 16)
2014-02-20 16:40:15 +00:00
}
2014-05-11 22:55:43 +00:00
xw.WriteUint32(uint32(len(o.Extra)))
for i := range o.Extra {
2015-03-25 21:37:35 +00:00
_, err := o.Extra[i].EncodeXDRInto(xw)
if err != nil {
return xw.Tot(), err
}
2014-05-11 22:55:43 +00:00
}
return xw.Tot(), xw.Error()
}
func (o *Announce) DecodeXDR(r io.Reader) error {
2014-05-11 22:55:43 +00:00
xr := xdr.NewReader(r)
2015-03-25 21:37:35 +00:00
return o.DecodeXDRFrom(xr)
2014-05-11 22:55:43 +00:00
}
func (o *Announce) UnmarshalXDR(bs []byte) error {
2014-06-30 11:33:52 +00:00
var br = bytes.NewReader(bs)
var xr = xdr.NewReader(br)
2015-03-25 21:37:35 +00:00
return o.DecodeXDRFrom(xr)
2014-05-11 22:55:43 +00:00
}
2015-03-25 21:37:35 +00:00
func (o *Announce) DecodeXDRFrom(xr *xdr.Reader) error {
2014-05-11 22:55:43 +00:00
o.Magic = xr.ReadUint32()
2015-03-25 21:37:35 +00:00
(&o.This).DecodeXDRFrom(xr)
2014-05-11 22:55:43 +00:00
_ExtraSize := int(xr.ReadUint32())
if _ExtraSize > 16 {
2014-10-21 06:40:05 +00:00
return xdr.ElementSizeExceeded("Extra", _ExtraSize, 16)
2014-05-11 22:55:43 +00:00
}
o.Extra = make([]Device, _ExtraSize)
2014-05-11 22:55:43 +00:00
for i := range o.Extra {
2015-03-25 21:37:35 +00:00
(&o.Extra[i]).DecodeXDRFrom(xr)
2014-05-11 22:55:43 +00:00
}
return xr.Error()
}
2014-07-13 07:24:25 +00:00
/*
Device Structure:
2014-07-13 07:24:25 +00:00
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 Addresses |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
/ /
\ Zero or more Address Structures \
/ /
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
struct Device {
2014-07-13 07:24:25 +00:00
opaque ID<32>;
Address Addresses<16>;
}
*/
func (o Device) EncodeXDR(w io.Writer) (int, error) {
2014-05-11 22:55:43 +00:00
var xw = xdr.NewWriter(w)
2015-03-25 21:37:35 +00:00
return o.EncodeXDRInto(xw)
2014-05-11 22:55:43 +00:00
}
2014-10-21 06:40:05 +00:00
func (o Device) MarshalXDR() ([]byte, error) {
return o.AppendXDR(make([]byte, 0, 128))
}
2014-10-21 06:40:05 +00:00
func (o Device) MustMarshalXDR() []byte {
bs, err := o.MarshalXDR()
if err != nil {
panic(err)
}
return bs
}
func (o Device) AppendXDR(bs []byte) ([]byte, error) {
var aw = xdr.AppendWriter(bs)
2014-06-30 11:33:52 +00:00
var xw = xdr.NewWriter(&aw)
2015-03-25 21:37:35 +00:00
_, err := o.EncodeXDRInto(xw)
2014-10-21 06:40:05 +00:00
return []byte(aw), err
2014-05-11 22:55:43 +00:00
}
2015-03-25 21:37:35 +00:00
func (o Device) EncodeXDRInto(xw *xdr.Writer) (int, error) {
2014-10-21 06:40:05 +00:00
if l := len(o.ID); l > 32 {
return xw.Tot(), xdr.ElementSizeExceeded("ID", l, 32)
2014-05-11 22:55:43 +00:00
}
xw.WriteBytes(o.ID)
2014-10-21 06:40:05 +00:00
if l := len(o.Addresses); l > 16 {
return xw.Tot(), xdr.ElementSizeExceeded("Addresses", l, 16)
2014-02-20 16:40:15 +00:00
}
xw.WriteUint32(uint32(len(o.Addresses)))
for i := range o.Addresses {
2015-03-25 21:37:35 +00:00
_, err := o.Addresses[i].EncodeXDRInto(xw)
if err != nil {
return xw.Tot(), err
}
2014-02-20 16:40:15 +00:00
}
return xw.Tot(), xw.Error()
}
func (o *Device) DecodeXDR(r io.Reader) error {
2014-02-20 16:40:15 +00:00
xr := xdr.NewReader(r)
2015-03-25 21:37:35 +00:00
return o.DecodeXDRFrom(xr)
2014-02-20 16:40:15 +00:00
}
func (o *Device) UnmarshalXDR(bs []byte) error {
2014-06-30 11:33:52 +00:00
var br = bytes.NewReader(bs)
var xr = xdr.NewReader(br)
2015-03-25 21:37:35 +00:00
return o.DecodeXDRFrom(xr)
2014-02-20 16:40:15 +00:00
}
2015-03-25 21:37:35 +00:00
func (o *Device) DecodeXDRFrom(xr *xdr.Reader) error {
o.ID = xr.ReadBytesMax(32)
2014-02-20 16:40:15 +00:00
_AddressesSize := int(xr.ReadUint32())
if _AddressesSize > 16 {
2014-10-21 06:40:05 +00:00
return xdr.ElementSizeExceeded("Addresses", _AddressesSize, 16)
2014-02-20 16:40:15 +00:00
}
o.Addresses = make([]Address, _AddressesSize)
for i := range o.Addresses {
2015-03-25 21:37:35 +00:00
(&o.Addresses[i]).DecodeXDRFrom(xr)
2014-02-20 16:40:15 +00:00
}
return xr.Error()
}
2014-07-13 07:24:25 +00:00
/*
Address 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 IP |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
/ /
\ IP (variable length) \
/ /
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 0x0000 | Port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
struct Address {
opaque IP<16>;
unsigned int Port;
}
*/
2014-02-20 16:40:15 +00:00
func (o Address) EncodeXDR(w io.Writer) (int, error) {
var xw = xdr.NewWriter(w)
2015-03-25 21:37:35 +00:00
return o.EncodeXDRInto(xw)
2014-02-20 16:40:15 +00:00
}
2014-10-21 06:40:05 +00:00
func (o Address) MarshalXDR() ([]byte, error) {
return o.AppendXDR(make([]byte, 0, 128))
}
2014-10-21 06:40:05 +00:00
func (o Address) MustMarshalXDR() []byte {
bs, err := o.MarshalXDR()
if err != nil {
panic(err)
}
return bs
}
func (o Address) AppendXDR(bs []byte) ([]byte, error) {
var aw = xdr.AppendWriter(bs)
2014-06-30 11:33:52 +00:00
var xw = xdr.NewWriter(&aw)
2015-03-25 21:37:35 +00:00
_, err := o.EncodeXDRInto(xw)
2014-10-21 06:40:05 +00:00
return []byte(aw), err
2014-02-20 16:40:15 +00:00
}
2015-03-25 21:37:35 +00:00
func (o Address) EncodeXDRInto(xw *xdr.Writer) (int, error) {
2014-10-21 06:40:05 +00:00
if l := len(o.IP); l > 16 {
return xw.Tot(), xdr.ElementSizeExceeded("IP", l, 16)
2014-02-20 16:40:15 +00:00
}
xw.WriteBytes(o.IP)
xw.WriteUint16(o.Port)
return xw.Tot(), xw.Error()
}
func (o *Address) DecodeXDR(r io.Reader) error {
xr := xdr.NewReader(r)
2015-03-25 21:37:35 +00:00
return o.DecodeXDRFrom(xr)
2014-02-20 16:40:15 +00:00
}
func (o *Address) UnmarshalXDR(bs []byte) error {
2014-06-30 11:33:52 +00:00
var br = bytes.NewReader(bs)
var xr = xdr.NewReader(br)
2015-03-25 21:37:35 +00:00
return o.DecodeXDRFrom(xr)
2014-02-20 16:40:15 +00:00
}
2015-03-25 21:37:35 +00:00
func (o *Address) DecodeXDRFrom(xr *xdr.Reader) error {
2014-02-20 16:40:15 +00:00
o.IP = xr.ReadBytesMax(16)
o.Port = xr.ReadUint16()
return xr.Error()
}