| Index: nss/mozilla/security/nss/lib/softoken/sftkpars.c
|
| ===================================================================
|
| --- nss/mozilla/security/nss/lib/softoken/sftkpars.c (revision 55475)
|
| +++ nss/mozilla/security/nss/lib/softoken/sftkpars.c (working copy)
|
| @@ -52,6 +52,8 @@
|
| #define SFTK_HANDLE_STRING_ARG(param,target,value,command) \
|
| if (PORT_Strncasecmp(param,value,sizeof(value)-1) == 0) { \
|
| param += sizeof(value)-1; \
|
| + if (target) \
|
| + PORT_Free(target); \
|
| target = sftk_argFetchValue(param,&next); \
|
| param += next; \
|
| command ;\
|
| @@ -338,7 +340,7 @@
|
| sftk_parseTokenParameters(char *param, sftk_token_parameters *parsed)
|
| {
|
| int next;
|
| - char *tmp;
|
| + char *tmp = NULL;
|
| char *index;
|
| index = sftk_argStrip(param);
|
|
|
| @@ -355,9 +357,9 @@
|
| "updateTokenDescription=",;)
|
| SFTK_HANDLE_STRING_ARG(index,parsed->slotdes,"slotDescription=",;)
|
| SFTK_HANDLE_STRING_ARG(index,tmp,"minPWLen=",
|
| - if(tmp) { parsed->minPW=atoi(tmp); PORT_Free(tmp); })
|
| + if(tmp) { parsed->minPW=atoi(tmp); PORT_Free(tmp); tmp = NULL; })
|
| SFTK_HANDLE_STRING_ARG(index,tmp,"flags=",
|
| - if(tmp) { sftk_parseTokenFlags(param,parsed); PORT_Free(tmp); })
|
| + if(tmp) { sftk_parseTokenFlags(param,parsed); PORT_Free(tmp); tmp = NULL; })
|
| SFTK_HANDLE_FINAL_ARG(index)
|
| }
|
| return CKR_OK;
|
| @@ -413,7 +415,7 @@
|
| sftk_parseParameters(char *param, sftk_parameters *parsed, PRBool isFIPS)
|
| {
|
| int next;
|
| - char *tmp;
|
| + char *tmp = NULL;
|
| char *index;
|
| char *certPrefix = NULL, *keyPrefix = NULL;
|
| char *tokdes = NULL, *ptokdes = NULL, *pupdtokdes = NULL;
|
| @@ -444,9 +446,9 @@
|
| SFTK_HANDLE_STRING_ARG(index,minPW,"minPWLen=",;)
|
|
|
| SFTK_HANDLE_STRING_ARG(index,tmp,"flags=",
|
| - if(tmp) { sftk_parseFlags(param,parsed); PORT_Free(tmp); })
|
| + if(tmp) { sftk_parseFlags(param,parsed); PORT_Free(tmp); tmp = NULL; })
|
| SFTK_HANDLE_STRING_ARG(index,tmp,"tokens=",
|
| - if(tmp) { sftk_parseTokens(tmp,parsed); PORT_Free(tmp); })
|
| + if(tmp) { sftk_parseTokens(tmp,parsed); PORT_Free(tmp); tmp = NULL; })
|
| SFTK_HANDLE_FINAL_ARG(index)
|
| }
|
| if (parsed->tokens == NULL) {
|
|
|