nsIPKCS11Slot.idl 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
  2. *
  3. * This Source Code Form is subject to the terms of the Mozilla Public
  4. * License, v. 2.0. If a copy of the MPL was not distributed with this
  5. * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
  6. #include "nsISupports.idl"
  7. interface nsIPK11Token;
  8. [scriptable, uuid(c2d4f296-ee60-11d4-998b-00b0d02354a0)]
  9. interface nsIPKCS11Slot : nsISupports {
  10. readonly attribute AUTF8String name;
  11. readonly attribute AUTF8String desc;
  12. /**
  13. * Manufacturer ID of the slot.
  14. */
  15. readonly attribute AUTF8String manID;
  16. /**
  17. * Hardware version of the slot.
  18. */
  19. readonly attribute AUTF8String HWVersion;
  20. /**
  21. * Firmware version of the slot.
  22. */
  23. readonly attribute AUTF8String FWVersion;
  24. const unsigned long SLOT_DISABLED = 0;
  25. const unsigned long SLOT_NOT_PRESENT = 1;
  26. const unsigned long SLOT_UNINITIALIZED = 2;
  27. const unsigned long SLOT_NOT_LOGGED_IN = 3;
  28. const unsigned long SLOT_LOGGED_IN = 4;
  29. const unsigned long SLOT_READY = 5;
  30. readonly attribute unsigned long status;
  31. /* This is really a workaround for now. All of the "slot" functions
  32. * (isTokenPresent(), etc.) are in nsIPK11Token. For now, return the
  33. * token and handle those things there.
  34. */
  35. nsIPK11Token getToken();
  36. /* more fun with workarounds - we're referring to everything by token name */
  37. readonly attribute AUTF8String tokenName;
  38. };