From 69a7dad72e9eaefbb54022b6e3354ba112fc34ff Mon Sep 17 00:00:00 2001 From: lwch Date: Tue, 28 Sep 2021 11:48:14 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9server=E5=A4=84=E7=90=86?= =?UTF-8?q?=E9=80=BB=E8=BE=91=EF=BC=8C=E6=94=AF=E6=8C=81shell=5Fcreated?= =?UTF-8?q?=E6=B6=88=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- code/server/handler/handler.go | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/code/server/handler/handler.go b/code/server/handler/handler.go index 019ada4..716af6a 100644 --- a/code/server/handler/handler.go +++ b/code/server/handler/handler.go @@ -126,6 +126,7 @@ func (h *Handler) onMessage(from *client, conn *network.Conn, msg *network.Msg) case network.Msg_disconnect: case network.Msg_forward: case network.Msg_shell_create: + case network.Msg_shell_created: case network.Msg_shell_resize: case network.Msg_shell_data: case network.Msg_shell_close: @@ -172,6 +173,17 @@ func (h *Handler) removeLink(id string, from, to *client) { id, from.parent.id, from.idx, to.parent.id, to.idx) } +func (h *Handler) responseLink(id string, ok bool, msg string, from, to *client) { + if ok { + logging.Info("link %s from %s-%d to %s-%d connect successed", + id, from.parent.id, from.idx, to.parent.id, to.idx) + } else { + logging.Info("link %s from %s-%d to %s-%d connect failed, %s", + id, from.parent.id, from.idx, to.parent.id, to.idx, msg) + // TODO: remove link? + } +} + // msgHook hook from on message func (h *Handler) msgHook(msg *network.Msg, from, to *client) { switch msg.GetXType() { @@ -184,16 +196,13 @@ func (h *Handler) msgHook(msg *network.Msg, from, to *client) { case network.Msg_disconnect, network.Msg_shell_close: h.removeLink(msg.GetLinkId(), from, to) - // connect response + // response link case network.Msg_connect_rep: rep := msg.GetCrep() - if rep.GetOk() { - logging.Info("link %s from %s-%d to %s-%d connect successed", - msg.GetLinkId(), from.parent.id, from.idx, to.parent.id, to.idx) - } else { - logging.Info("link %s from %s-%d to %s-%d connect failed, %s", - msg.GetLinkId(), from.parent.id, from.idx, to.parent.id, to.idx, rep.GetMsg()) - } + h.responseLink(msg.GetLinkId(), rep.GetOk(), rep.GetMsg(), from, to) + case network.Msg_shell_created: + rep := msg.GetScreated() + h.responseLink(msg.GetLinkId(), rep.GetOk(), rep.GetMsg(), from, to) // forward data case network.Msg_forward: data := msg.GetXData()