cmd/devp2p: add 'links' to enrtree-info.json even when empty

This commit is contained in:
Felix Lange 2019-09-19 15:13:52 +02:00
parent 00f4484df5
commit bd6e705799

View file

@ -239,8 +239,8 @@ type dnsDefinition struct {
type dnsMetaJSON struct {
URL string `json:"url,omitempty"`
Seq uint `json:"seq"`
Sig string `json:"signature"`
Links []string `json:"links,omitempty"`
Sig string `json:"signature,omitempty"`
Links []string `json:"links"`
LastModified time.Time `json:"lastModified"`
}
@ -251,6 +251,9 @@ func treeToDefinition(url string, t *dnsdisc.Tree) *dnsDefinition {
Sig: t.Signature(),
Links: t.Links(),
}
if meta.Links == nil {
meta.Links = []string{}
}
return &dnsDefinition{Meta: meta, Nodes: t.Nodes()}
}
@ -262,6 +265,9 @@ func loadTreeDefinition(directory string) *dnsDefinition {
if err != nil && !os.IsNotExist(err) {
exit(err)
}
if def.Meta.Links == nil {
def.Meta.Links = []string{}
}
// Check link syntax.
for _, link := range def.Meta.Links {
if _, _, err := dnsdisc.ParseURL(link); err != nil {