From f4dd746e142cb3430e70538f2c4c60cb12e08299 Mon Sep 17 00:00:00 2001 From: Miek Gieben Date: Fri, 27 Jan 2012 08:46:41 +0100 Subject: [PATCH] return error if the buffer is to large --- server.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/server.go b/server.go index 8911a81e..5c0e86fa 100644 --- a/server.go +++ b/server.go @@ -313,13 +313,14 @@ func (c *conn) serve() { func (w *response) Write(data []byte) (n int, err error) { switch { case w.conn._UDP != nil: + // I should check the clients, udp message size here TODO(mg) n, err = w.conn._UDP.WriteTo(data, w.conn.remoteAddr) if err != nil { return 0, err } case w.conn._TCP != nil: - if len(data) > MaxMsgSize) { - return ErrBuf + if len(data) > MaxMsgSize { + return 0, ErrBuf } l := make([]byte, 2) l[0], l[1] = packUint16(uint16(len(data)))