diff --git a/internal/server/handler.go b/internal/server/handler.go index b0af816..8301d7d 100644 --- a/internal/server/handler.go +++ b/internal/server/handler.go @@ -97,7 +97,9 @@ func (h *Handler) handleModeReader(s *Session, arguments []string) error { } (&s.capabilities).Remove(protocol.ModeReaderCapability) + (&s.capabilities).Remove(protocol.ListCapability) (&s.capabilities).Add(protocol.Capability{Type: protocol.ReaderCapability}) + (&s.capabilities).Add(protocol.Capability{Type: protocol.ListCapability, Params: "ACTIVE NEWSGROUPS"}) s.mode = SessionModeReader return s.tconn.PrintfLine(protocol.MessageReaderModePostingProhibited) // TODO vary on auth status diff --git a/internal/server/nntp_server.go b/internal/server/nntp_server.go index e82eca0..bc2f2a4 100644 --- a/internal/server/nntp_server.go +++ b/internal/server/nntp_server.go @@ -21,7 +21,6 @@ var ( {Type: protocol.VersionCapability, Params: "2"}, {Type: protocol.ImplementationCapability, Params: fmt.Sprintf("%s %s", common.ServerName, common.ServerVersion)}, {Type: protocol.ModeReaderCapability}, - {Type: protocol.ListCapability, Params: "ACTIVE NEWSGROUPS"}, } )