X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=lib%2Fsflow_receiver.c;h=e6fc9a7f9bfe49048532595f5063dfeed5aa7ed5;hb=28c5588e8e1a8d091c5d2275232c35f2968a97fa;hp=3e5a67a064fa66c0e8baab8c06d45f5d7a6b77d1;hpb=7dd32dffd770a9a3107890836096cfecc9854e01;p=sliver-openvswitch.git diff --git a/lib/sflow_receiver.c b/lib/sflow_receiver.c index 3e5a67a06..e6fc9a7f9 100644 --- a/lib/sflow_receiver.c +++ b/lib/sflow_receiver.c @@ -198,6 +198,10 @@ inline static void putString(SFLReceiver *receiver, SFLString *s) putNet32(receiver, s->len); memcpy(receiver->sampleCollector.datap, s->str, s->len); receiver->sampleCollector.datap += (s->len + 3) / 4; /* pad to 4-byte boundary */ + if ((s->len % 4) != 0){ + u_int8_t padding = 4 - (s->len % 4); + memset(((u_int8_t*)receiver->sampleCollector.datap)-padding, 0, padding); + } } inline static u_int32_t stringEncodingLength(SFLString *s) {