summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/stream.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/stream.c b/lib/stream.c
index ee2920e6..ccd4623f 100644
--- a/lib/stream.c
+++ b/lib/stream.c
@@ -700,13 +700,13 @@ stream_put_prefix (struct stream *s, struct prefix *p)
psize = PSIZE (p->prefixlen);
- if (STREAM_WRITEABLE (s) < psize)
+ if (STREAM_WRITEABLE (s) < (psize + sizeof (u_char)))
{
STREAM_BOUND_WARN (s, "put");
return 0;
}
- stream_putc (s, p->prefixlen);
+ s->data[s->endp++] = p->prefixlen;
memcpy (s->data + s->endp, &p->u.prefix, psize);
s->endp += psize;