From a02f26a025bb941136daf1d3602288125568c5c6 Mon Sep 17 00:00:00 2001 From: aymeric Date: Tue, 3 Mar 2009 16:21:17 +0000 Subject: [PATCH] Fix padding for error-code attribute git-svn-id: svn+ssh://svn.savannah.nongnu.org/linphone/trunk@288 3f6dc0c8-ddfe-455d-9043-3cd528dc4637 --- linphone/oRTP/src/stun.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/linphone/oRTP/src/stun.c b/linphone/oRTP/src/stun.c index e995e06bb..cee879874 100644 --- a/linphone/oRTP/src/stun.c +++ b/linphone/oRTP/src/stun.c @@ -844,12 +844,24 @@ encodeAtrChangeRequest(char* ptr, const StunAtrChangeRequest *atr) static char* encodeAtrError(char* ptr, const StunAtrError *atr) { + int padding; + int i; + ptr = encode16(ptr, SA_ERRORCODE); ptr = encode16(ptr, 4 + atr->sizeReason); ptr = encode16(ptr, atr->pad); *ptr++ = atr->errorClass; *ptr++ = atr->number; ptr = encode(ptr, atr->reason, atr->sizeReason); + + padding = (atr->sizeReason+4) % 4; + if (padding>0) + { + for (i=0;i<4-padding;i++) + { + *ptr++ = 0; + } + } return ptr; }