mirror of
https://github.com/cwinfo/yggdrasil-go.git
synced 2024-11-21 21:50:29 +00:00
Fix getself, gettuntap etc
This commit is contained in:
parent
31c1c9b586
commit
058dec0cca
@ -10,22 +10,28 @@ import (
|
||||
type GetSelfRequest struct{}
|
||||
|
||||
type GetSelfResponse struct {
|
||||
Self map[string]SelfEntry `json:"self"`
|
||||
}
|
||||
|
||||
type SelfEntry struct {
|
||||
BuildName string `json:"build_name"`
|
||||
BuildVersion string `json:"build_version"`
|
||||
PublicKey string `json:"key"`
|
||||
Coords []uint64 `json:"coords"`
|
||||
IPAddress string `json:"address"`
|
||||
Subnet string `json:"subnet"`
|
||||
}
|
||||
|
||||
func (a *AdminSocket) getSelfHandler(req *GetSelfRequest, res *GetSelfResponse) error {
|
||||
res.BuildName = version.BuildName()
|
||||
res.BuildVersion = version.BuildVersion()
|
||||
res.Self = make(map[string]SelfEntry)
|
||||
public := a.core.PrivateKey().Public().(ed25519.PublicKey)
|
||||
res.PublicKey = hex.EncodeToString(public[:])
|
||||
res.IPAddress = a.core.Address().String()
|
||||
addr := a.core.Address().String()
|
||||
snet := a.core.Subnet()
|
||||
res.Subnet = snet.String()
|
||||
// TODO: res.coords
|
||||
res.Self[addr] = SelfEntry{
|
||||
BuildName: version.BuildName(),
|
||||
BuildVersion: version.BuildVersion(),
|
||||
PublicKey: hex.EncodeToString(public[:]),
|
||||
Subnet: snet.String(),
|
||||
// TODO: coords
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
@ -7,11 +7,17 @@ import (
|
||||
)
|
||||
|
||||
type GetTUNRequest struct{}
|
||||
type GetTUNResponse map[string]uint64
|
||||
type GetTUNResponse map[string]TUNEntry
|
||||
|
||||
type TUNEntry struct {
|
||||
MTU uint64 `json:"mtu"`
|
||||
}
|
||||
|
||||
func (t *TunAdapter) getTUNHandler(req *GetTUNRequest, res *GetTUNResponse) error {
|
||||
res = &GetTUNResponse{
|
||||
t.Name(): t.MTU(),
|
||||
*res = GetTUNResponse{
|
||||
t.Name(): TUNEntry{
|
||||
MTU: t.MTU(),
|
||||
},
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user