nssckfwt.h 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  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 NSSCKFWT_H
  5. #define NSSCKFWT_H
  6. /*
  7. * nssckfwt.h
  8. *
  9. * This file declares the public types used by the NSS Cryptoki Framework.
  10. */
  11. /*
  12. * NSSCKFWInstance
  13. *
  14. */
  15. struct NSSCKFWInstanceStr;
  16. typedef struct NSSCKFWInstanceStr NSSCKFWInstance;
  17. /*
  18. * NSSCKFWSlot
  19. *
  20. */
  21. struct NSSCKFWSlotStr;
  22. typedef struct NSSCKFWSlotStr NSSCKFWSlot;
  23. /*
  24. * NSSCKFWToken
  25. *
  26. */
  27. struct NSSCKFWTokenStr;
  28. typedef struct NSSCKFWTokenStr NSSCKFWToken;
  29. /*
  30. * NSSCKFWMechanism
  31. *
  32. */
  33. struct NSSCKFWMechanismStr;
  34. typedef struct NSSCKFWMechanismStr NSSCKFWMechanism;
  35. /*
  36. * NSSCKFWCryptoOperation
  37. *
  38. */
  39. struct NSSCKFWCryptoOperationStr;
  40. typedef struct NSSCKFWCryptoOperationStr NSSCKFWCryptoOperation;
  41. /*
  42. * NSSCKFWSession
  43. *
  44. */
  45. struct NSSCKFWSessionStr;
  46. typedef struct NSSCKFWSessionStr NSSCKFWSession;
  47. /*
  48. * NSSCKFWObject
  49. *
  50. */
  51. struct NSSCKFWObjectStr;
  52. typedef struct NSSCKFWObjectStr NSSCKFWObject;
  53. /*
  54. * NSSCKFWFindObjects
  55. *
  56. */
  57. struct NSSCKFWFindObjectsStr;
  58. typedef struct NSSCKFWFindObjectsStr NSSCKFWFindObjects;
  59. /*
  60. * NSSCKFWMutex
  61. *
  62. */
  63. struct NSSCKFWMutexStr;
  64. typedef struct NSSCKFWMutexStr NSSCKFWMutex;
  65. typedef enum {
  66. SingleThreaded,
  67. MultiThreaded
  68. } CryptokiLockingState;
  69. /* used as an index into an array, make sure it starts at '0' */
  70. typedef enum {
  71. NSSCKFWCryptoOperationState_EncryptDecrypt = 0,
  72. NSSCKFWCryptoOperationState_SignVerify,
  73. NSSCKFWCryptoOperationState_Digest,
  74. NSSCKFWCryptoOperationState_Max
  75. } NSSCKFWCryptoOperationState;
  76. typedef enum {
  77. NSSCKFWCryptoOperationType_Encrypt,
  78. NSSCKFWCryptoOperationType_Decrypt,
  79. NSSCKFWCryptoOperationType_Digest,
  80. NSSCKFWCryptoOperationType_Sign,
  81. NSSCKFWCryptoOperationType_Verify,
  82. NSSCKFWCryptoOperationType_SignRecover,
  83. NSSCKFWCryptoOperationType_VerifyRecover
  84. } NSSCKFWCryptoOperationType;
  85. #endif /* NSSCKFWT_H */