summaryrefslogtreecommitdiff
path: root/internal/clients
diff options
context:
space:
mode:
authorPaul Buetow <pbuetow@mimecast.com>2021-11-02 17:53:29 +0200
committerPaul Buetow <pbuetow@mimecast.com>2021-11-02 17:53:29 +0200
commit69b4659b2e644506476a7285970121b3fc98c15b (patch)
tree6cd6032d564b40c05dbfcfd0c755f20950e17c75 /internal/clients
parent479a1c1bff839f40d980fdbedcab80e2e73aeb58 (diff)
Make it so that DTail 3 incompatibility error is printed when trying to connect to it via a DTail client 4.x
Diffstat (limited to 'internal/clients')
-rw-r--r--internal/clients/handlers/basehandler.go5
1 files changed, 5 insertions, 0 deletions
diff --git a/internal/clients/handlers/basehandler.go b/internal/clients/handlers/basehandler.go
index 3ffea82..6f637a7 100644
--- a/internal/clients/handlers/basehandler.go
+++ b/internal/clients/handlers/basehandler.go
@@ -60,6 +60,11 @@ func (h *baseHandler) SendMessage(command string) error {
func (h *baseHandler) Write(p []byte) (n int, err error) {
for _, b := range p {
switch b {
+ case '\n':
+ // Backwards compatible with DTail 3 (e.g. get error message from server
+ // about protocol missmatch.
+ h.receiveBuf.WriteByte(b)
+ fallthrough
case protocol.MessageDelimiter:
message := h.receiveBuf.String()
h.handleMessage(message)