diff options
| author | citrons <citrons@mondecitronne.com> | 2025-06-09 12:58:52 -0500 |
|---|---|---|
| committer | citrons <citrons@mondecitronne.com> | 2025-06-09 12:58:52 -0500 |
| commit | dc957f6bb77c9d89b52f22b605f79f7be110f546 (patch) | |
| tree | d8956645e2926e4e649d1c8949b36c01158dfecf /server | |
| parent | 51a671c2687b8f67768efd1de82acd33e0579e2b (diff) | |
replies
Diffstat (limited to 'server')
| -rw-r--r-- | server/channel/command.go | 8 | ||||
| -rw-r--r-- | server/validate/validate.go | 2 |
2 files changed, 8 insertions, 2 deletions
diff --git a/server/channel/command.go b/server/channel/command.go index e645055..05a1c7a 100644 --- a/server/channel/command.go +++ b/server/channel/command.go @@ -17,9 +17,15 @@ func (c *Channel) SendRequest(r session.Request) { m := r.Cmd.Args[0] switch m.Kind { case "m": - for k, _ := range m.Fields { + for k, v := range m.Fields { switch k { case "": + case "reply": + _, ok := c.byId[v] + if !ok { + r.Reply(proto.Fail{"bad-reply", "", nil}.Cmd()) + return + } default: r.ReplyInvalid() return diff --git a/server/validate/validate.go b/server/validate/validate.go index 9b3ff0d..7aa7db0 100644 --- a/server/validate/validate.go +++ b/server/validate/validate.go @@ -6,7 +6,7 @@ import ( ) func Name(name string) bool { - if len(Fold(name)) == 0 || len(name) > 256 { + if len(Fold(name)) == 0 || len(name) > 64 { return false } for _, r := range name { |
