mirror of
https://github.com/ZeroTier/ZeroTierOne
synced 2025-08-14 02:27:38 -07:00
.
This commit is contained in:
parent
63e6693255
commit
1711cced3e
3 changed files with 50 additions and 2 deletions
|
@ -13,6 +13,51 @@
|
|||
|
||||
package cli
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"os"
|
||||
|
||||
"zerotier/pkg/zerotier"
|
||||
)
|
||||
|
||||
// Roots CLI command
|
||||
func Roots(basePath, authToken string, args []string) {
|
||||
func Roots(basePath, authToken string, args []string, jsonOutput bool) {
|
||||
var roots []zerotier.Root
|
||||
apiGet(basePath, authToken, "/root", &roots)
|
||||
|
||||
if jsonOutput {
|
||||
fmt.Println(jsonDump(roots))
|
||||
} else {
|
||||
fmt.Printf("%32s <ztaddr> <address(es)>\n", "<name>")
|
||||
for _, r := range roots {
|
||||
rn := r.Name
|
||||
if len(rn) > 32 {
|
||||
rn = rn[len(rn)-32:]
|
||||
}
|
||||
if r.Locator != nil {
|
||||
if len(r.Locator.Physical) == 0 && len(r.Locator.Virtual) == 0 {
|
||||
fmt.Printf("%32s %.10x -\n", rn, uint64(r.Locator.Identity.Address()))
|
||||
} else {
|
||||
fmt.Printf("%32s %.10x ", rn, uint64(r.Locator.Identity.Address()))
|
||||
for i, a := range r.Locator.Physical {
|
||||
if i > 0 {
|
||||
fmt.Print(',')
|
||||
}
|
||||
fmt.Print(a.String())
|
||||
}
|
||||
for i, a := range r.Locator.Virtual {
|
||||
if i > 0 || len(r.Locator.Physical) > 0 {
|
||||
fmt.Print(',')
|
||||
}
|
||||
fmt.Print(a.String())
|
||||
}
|
||||
fmt.Printf("\n")
|
||||
}
|
||||
} else {
|
||||
fmt.Printf("%32s - -\n", rn)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
os.Exit(0)
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue