package frontend
import (
+ "fmt"
+
"ruderich.org/simon/safcm"
"ruderich.org/simon/safcm/rpc"
)
return x, nil
}
}
+
+// HostInfoMsg sends a MsgInfoReq for host via conn and returns the resulting
+// MsgInfoResp.
+func (l *Loop) HostInfoMsg(host Host, conn *rpc.Conn, req safcm.MsgInfoReq) (
+ safcm.MsgInfoResp, error) {
+
+ var empty safcm.MsgInfoResp
+ x, err := l.SendRecv(host, conn, req)
+ if err != nil {
+ return empty, err
+ }
+ resp, ok := x.(safcm.MsgInfoResp)
+ if !ok {
+ return empty, fmt.Errorf("unexpected response %v", x)
+ }
+ return resp, nil
+}
+
+// HostSyncMsg sends a MsgSyncReq for host via conn and returns the resulting
+// MsgSyncResp.
+func (l *Loop) HostSyncMsg(host Host, conn *rpc.Conn, req safcm.MsgSyncReq) (
+ safcm.MsgSyncResp, error) {
+
+ var empty safcm.MsgSyncResp
+ x, err := l.SendRecv(host, conn, req)
+ if err != nil {
+ return empty, err
+ }
+ resp, ok := x.(safcm.MsgSyncResp)
+ if !ok {
+ return empty, fmt.Errorf("unexpected response %v", x)
+ }
+ return resp, nil
+}