"log"
"os"
- "git.fd.io/govpp.git"
- "git.fd.io/govpp.git/adapter/socketclient"
- "git.fd.io/govpp.git/api"
- interfaces "git.fd.io/govpp.git/binapi/interface"
- "git.fd.io/govpp.git/binapi/interface_types"
- "git.fd.io/govpp.git/binapi/ip"
- "git.fd.io/govpp.git/binapi/ip_types"
- "git.fd.io/govpp.git/binapi/vpe"
- "git.fd.io/govpp.git/core"
+ "go.fd.io/govpp"
+ "go.fd.io/govpp/adapter/socketclient"
+ "go.fd.io/govpp/api"
+ interfaces "go.fd.io/govpp/binapi/interface"
+ "go.fd.io/govpp/binapi/interface_types"
+ "go.fd.io/govpp/binapi/ip"
+ "go.fd.io/govpp/binapi/ip_types"
+ "go.fd.io/govpp/binapi/vpe"
+ "go.fd.io/govpp/core"
)
var (
// process errors encountered during the example
defer func() {
- if len(Errors) > 0 {
- fmt.Printf("finished with %d errors\n", len(Errors))
+ if len(errors) > 0 {
+ fmt.Printf("finished with %d errors\n", len(errors))
os.Exit(1)
} else {
fmt.Println("finished successfully")
// use request/reply (channel API)
getVppVersion(ch)
+ getSystemTime(ch)
idx := createLoopback(ch)
interfaceDump(ch)
addIPAddress(ch, idx)
fmt.Println()
}
+func getSystemTime(ch api.Channel) {
+ fmt.Println("Retrieving system time..")
+
+ req := &vpe.ShowVpeSystemTime{}
+ reply := &vpe.ShowVpeSystemTimeReply{}
+
+ if err := ch.SendRequest(req).ReceiveReply(reply); err != nil {
+ logError(err, "retrieving system time")
+ return
+ }
+
+ fmt.Printf("system time: %v\n", reply.VpeSystemTime)
+ fmt.Println("OK")
+ fmt.Println()
+}
+
func createLoopback(ch api.Channel) interface_types.InterfaceIndex {
fmt.Println("Creating loopback interface..")
fmt.Printf("JSON: %s\n", b)
}
-var Errors []error
+var errors []error
func logError(err error, msg string) {
fmt.Printf("ERROR: %s: %v\n", msg, err)
- Errors = append(Errors, err)
+ errors = append(errors, err)
}