Bug 190532. Compute properly length when escaping SecretIDs

This commit is contained in:
Jim Norman 2006-07-06 18:06:31 +00:00
parent dfcdf3988a
commit 47d1509d82
2 changed files with 10 additions and 2 deletions

View File

@ -1,3 +1,7 @@
--------------------------------------------------------------------
Thu Jul 06 12:04:53 MST 2006 - jnorman@novell.com
- Bug 190532. Compute properly length when escaping SecretIDs
-------------------------------------------------------------------- --------------------------------------------------------------------
Mon Jul 05 12:22:53 MST 2006 - jnorman@novell.com Mon Jul 05 12:22:53 MST 2006 - jnorman@novell.com
- Bug 176460. Added a filewatcher on file in question - Bug 176460. Added a filewatcher on file in question

View File

@ -23,6 +23,7 @@
#include <stdlib.h> #include <stdlib.h>
#include <memory.h> #include <memory.h>
#include "micasa_types.h" #include "micasa_types.h"
#include "micasa.h" #include "micasa.h"
#include "sscs_lldefs.h" #include "sscs_lldefs.h"
@ -173,7 +174,7 @@ static void sscsshs_ChkEscapeString
{ /* beginning of the call */ { /* beginning of the call */
/* ########################## DECLARATIONS START HERE ######################### */ /* ########################## DECLARATIONS START HERE ######################### */
int len = 0, i, k = 0, tmplen = 0, escaped = 0; int len = 0, i, k = 0, tmplen = 0, escaped = 0, escapedAdded = 0;
SS_UTF8_T *tempBuf = NULL; SS_UTF8_T *tempBuf = NULL;
/* ############################## CODE STARTS HERE ############################ */ /* ############################## CODE STARTS HERE ############################ */
@ -201,18 +202,21 @@ static void sscsshs_ChkEscapeString
tempBuf[k++] = (SS_UTF8_T)'\\'; tempBuf[k++] = (SS_UTF8_T)'\\';
tempBuf[k++] = (SS_UTF8_T)'\\'; tempBuf[k++] = (SS_UTF8_T)'\\';
escaped = 1; escaped = 1;
escapedAdded++;
break; break;
case (SS_UTF8_T)':': case (SS_UTF8_T)':':
tempBuf[k++] = (SS_UTF8_T)'\\'; tempBuf[k++] = (SS_UTF8_T)'\\';
tempBuf[k++] = (SS_UTF8_T)':'; tempBuf[k++] = (SS_UTF8_T)':';
escaped = 1; escaped = 1;
escapedAdded++;
break; break;
case (SS_UTF8_T)'=': case (SS_UTF8_T)'=':
tempBuf[k++] = (SS_UTF8_T)'\\'; tempBuf[k++] = (SS_UTF8_T)'\\';
tempBuf[k++] = (SS_UTF8_T)'='; tempBuf[k++] = (SS_UTF8_T)'=';
escaped = 1; escaped = 1;
escapedAdded++;
break; break;
default: default:
@ -225,7 +229,7 @@ static void sscsshs_ChkEscapeString
memset(*entryBuf, 0, *entryBufLen); memset(*entryBuf, 0, *entryBufLen);
free (*entryBuf); free (*entryBuf);
*entryBuf = tempBuf; *entryBuf = tempBuf;
*entryBufLen = *entryBufLen + k; *entryBufLen = *entryBufLen + escapedAdded;
return; return;
} }