utilpars.h 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. /* This Source Code Form is subject to the terms of the Mozilla Public
  2. * License, v. 2.0. If a copy of the MPL was not distributed with this
  3. * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
  4. #ifndef _UTILPARS_H_
  5. #define _UTILPARS_H_ 1
  6. #include "utilparst.h"
  7. #include "plarena.h"
  8. /* handle a module db request */
  9. char **NSSUTIL_DoModuleDBFunction(unsigned long function, char *parameters, void *args);
  10. /* parsing functions */
  11. char *NSSUTIL_ArgFetchValue(const char *string, int *pcount);
  12. const char *NSSUTIL_ArgStrip(const char *c);
  13. char *NSSUTIL_ArgGetParamValue(const char *paramName, const char *parameters);
  14. const char *NSSUTIL_ArgSkipParameter(const char *string);
  15. char *NSSUTIL_ArgGetLabel(const char *inString, int *next);
  16. long NSSUTIL_ArgDecodeNumber(const char *num);
  17. PRBool NSSUTIL_ArgIsBlank(char c);
  18. PRBool NSSUTIL_ArgHasFlag(const char *label, const char *flag,
  19. const char *parameters);
  20. long NSSUTIL_ArgReadLong(const char *label, const char *params, long defValue,
  21. PRBool *isdefault);
  22. /* quoting functions */
  23. int NSSUTIL_EscapeSize(const char *string, char quote);
  24. char *NSSUTIL_Escape(const char *string, char quote);
  25. int NSSUTIL_QuoteSize(const char *string, char quote);
  26. char *NSSUTIL_Quote(const char *string, char quote);
  27. int NSSUTIL_DoubleEscapeSize(const char *string, char quote1, char quote2);
  28. char *NSSUTIL_DoubleEscape(const char *string, char quote1, char quote2);
  29. unsigned long NSSUTIL_ArgParseSlotFlags(const char *label, const char *params);
  30. struct NSSUTILPreSlotInfoStr *NSSUTIL_ArgParseSlotInfo(PLArenaPool *arena,
  31. const char *slotParams, int *retCount);
  32. char *NSSUTIL_MkSlotString(unsigned long slotID, unsigned long defaultFlags,
  33. unsigned long timeout, unsigned char askpw_in,
  34. PRBool hasRootCerts, PRBool hasRootTrust);
  35. SECStatus NSSUTIL_ArgParseModuleSpec(const char *modulespec, char **lib,
  36. char **mod, char **parameters, char **nss);
  37. SECStatus NSSUTIL_ArgParseModuleSpecEx(const char *modulespec, char **lib,
  38. char **mod, char **parameters, char **nss, char **config);
  39. char *NSSUTIL_MkModuleSpec(char *dllName, char *commonName,
  40. char *parameters, char *NSS);
  41. char *NSSUTIL_MkModuleSpecEx(char *dllName, char *commonName,
  42. char *parameters, char *NSS, char *config);
  43. char *NSSUTIL_AddNSSFlagToModuleSpec(char *spec, char *addFlag);
  44. void NSSUTIL_ArgParseCipherFlags(unsigned long *newCiphers,
  45. const char *cipherList);
  46. char *NSSUTIL_MkNSSString(char **slotStrings, int slotCount, PRBool internal,
  47. PRBool isFIPS, PRBool isModuleDB, PRBool isModuleDBOnly,
  48. PRBool isCritical, unsigned long trustOrder,
  49. unsigned long cipherOrder, unsigned long ssl0, unsigned long ssl1);
  50. /*
  51. * private functions for softoken.
  52. */
  53. char *_NSSUTIL_GetSecmodName(const char *param, NSSDBType *dbType,
  54. char **appName, char **filename, PRBool *rw);
  55. const char *_NSSUTIL_EvaluateConfigDir(const char *configdir, NSSDBType *dbType, char **app);
  56. #if defined(_WIN32)
  57. wchar_t *_NSSUTIL_UTF8ToWide(const char *buf);
  58. PRStatus _NSSUTIL_Access(const char *path, PRAccessHow how);
  59. #else
  60. #define _NSSUTIL_Access(path, how) PR_Access((path), (how))
  61. #endif
  62. #endif /* _UTILPARS_H_ */