Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(161)

Unified Diff: nss/lib/util/utilpars.c

Issue 1504923011: Update NSS to 3.21 RTM and NSPR to 4.11 RTM (Closed) Base URL: http://src.chromium.org/svn/trunk/deps/third_party/nss
Patch Set: Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: nss/lib/util/utilpars.c
diff --git a/nss/lib/util/utilpars.c b/nss/lib/util/utilpars.c
index d2cd3e04ae76f722aa62d4e047cb481d5bc42af4..278f9c426dd8ab020651691f337b4ce1f9b22844 100644
--- a/nss/lib/util/utilpars.c
+++ b/nss/lib/util/utilpars.c
@@ -767,6 +767,31 @@ NSSUTIL_MkSlotString(unsigned long slotID, unsigned long defaultFlags,
* and NSS specifi parameters.
*/
SECStatus
+NSSUTIL_ArgParseModuleSpecEx(char *modulespec, char **lib, char **mod,
+ char **parameters, char **nss,
+ char **config)
+{
+ int next;
+ modulespec = NSSUTIL_ArgStrip(modulespec);
+
+ *lib = *mod = *parameters = *nss = *config = 0;
+
+ while (*modulespec) {
+ NSSUTIL_HANDLE_STRING_ARG(modulespec,*lib,"library=",;)
+ NSSUTIL_HANDLE_STRING_ARG(modulespec,*mod,"name=",;)
+ NSSUTIL_HANDLE_STRING_ARG(modulespec,*parameters,"parameters=",;)
+ NSSUTIL_HANDLE_STRING_ARG(modulespec,*nss,"nss=",;)
+ NSSUTIL_HANDLE_STRING_ARG(modulespec,*config,"config=",;)
+ NSSUTIL_HANDLE_FINAL_ARG(modulespec)
+ }
+ return SECSuccess;
+}
+
+/************************************************************************
+ * Parse Full module specs into: library, commonName, module parameters,
+ * and NSS specifi parameters.
+ */
+SECStatus
NSSUTIL_ArgParseModuleSpec(char *modulespec, char **lib, char **mod,
char **parameters, char **nss)
{
@@ -788,11 +813,12 @@ NSSUTIL_ArgParseModuleSpec(char *modulespec, char **lib, char **mod,
/************************************************************************
* make a new module spec from it's components */
char *
-NSSUTIL_MkModuleSpec(char *dllName, char *commonName, char *parameters,
- char *NSS)
+NSSUTIL_MkModuleSpecEx(char *dllName, char *commonName, char *parameters,
+ char *NSS,
+ char *config)
{
char *moduleSpec;
- char *lib,*name,*param,*nss;
+ char *lib,*name,*param,*nss,*conf;
/*
* now the final spec
@@ -801,7 +827,13 @@ NSSUTIL_MkModuleSpec(char *dllName, char *commonName, char *parameters,
name = nssutil_formatPair("name",commonName,'\"');
param = nssutil_formatPair("parameters",parameters,'\"');
nss = nssutil_formatPair("NSS",NSS,'\"');
- moduleSpec = PR_smprintf("%s %s %s %s", lib,name,param,nss);
+ if (config) {
+ conf = nssutil_formatPair("config",config,'\"');
+ moduleSpec = PR_smprintf("%s %s %s %s %s", lib,name,param,nss,conf);
+ nssutil_freePair(conf);
+ } else {
+ moduleSpec = PR_smprintf("%s %s %s %s", lib,name,param,nss);
+ }
nssutil_freePair(lib);
nssutil_freePair(name);
nssutil_freePair(param);
@@ -809,6 +841,15 @@ NSSUTIL_MkModuleSpec(char *dllName, char *commonName, char *parameters,
return (moduleSpec);
}
+/************************************************************************
+ * make a new module spec from it's components */
+char *
+NSSUTIL_MkModuleSpec(char *dllName, char *commonName, char *parameters,
+ char *NSS)
+{
+ return NSSUTIL_MkModuleSpecEx(dllName, commonName, parameters, NSS, NULL);
+}
+
#define NSSUTIL_ARG_FORTEZZA_FLAG "FORTEZZA"
/******************************************************************************
« nss/lib/util/pkcs11n.h ('K') | « nss/lib/util/utilpars.h ('k') | nss/lib/util/verref.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698