mirror of
https://github.com/octoleo/syncthing.git
synced 2025-01-10 18:24:44 +00:00
8f3effed32
New node ID:s contain four Luhn check digits and are grouped differently. Code uses NodeID type instead of string, so it's formatted homogenously everywhere.
54 lines
1.0 KiB
Go
54 lines
1.0 KiB
Go
// Copyright (C) 2014 Jakob Borg and other contributors. All rights reserved.
|
|
// Use of this source code is governed by an MIT-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
package protocol
|
|
|
|
type IndexMessage struct {
|
|
Repository string // max:64
|
|
Files []FileInfo // max:1000000
|
|
}
|
|
|
|
type FileInfo struct {
|
|
Name string // max:1024
|
|
Flags uint32
|
|
Modified int64
|
|
Version uint64
|
|
Blocks []BlockInfo // max:100000
|
|
}
|
|
|
|
type BlockInfo struct {
|
|
Size uint32
|
|
Hash []byte // max:64
|
|
}
|
|
|
|
type RequestMessage struct {
|
|
Repository string // max:64
|
|
Name string // max:1024
|
|
Offset uint64
|
|
Size uint32
|
|
}
|
|
|
|
type ClusterConfigMessage struct {
|
|
ClientName string // max:64
|
|
ClientVersion string // max:64
|
|
Repositories []Repository // max:64
|
|
Options []Option // max:64
|
|
}
|
|
|
|
type Repository struct {
|
|
ID string // max:64
|
|
Nodes []Node // max:64
|
|
}
|
|
|
|
type Node struct {
|
|
ID []byte // max:32
|
|
Flags uint32
|
|
MaxVersion uint64
|
|
}
|
|
|
|
type Option struct {
|
|
Key string // max:64
|
|
Value string // max:1024
|
|
}
|