moved copy-initialization to copy constructor; refs #28
This commit is contained in:
		| @@ -572,6 +572,15 @@ namespace cryptoki { | |||||||
|       CK_FLAGS flags; |       CK_FLAGS flags; | ||||||
|       CK_VERSION hardwareVersion; |       CK_VERSION hardwareVersion; | ||||||
|       CK_VERSION firmwareVersion; |       CK_VERSION firmwareVersion; | ||||||
|  |  | ||||||
|  |       //! Convert C-Structure of Slot Information Into C++ | ||||||
|  |       SlotInfo(const CK_SLOT_INFO& cInfo): | ||||||
|  |           slotDescription(cInfo.slotDescription), | ||||||
|  |           manufacturerID(cInfo.manufacturerID), | ||||||
|  |           flags(cInfo.flags), | ||||||
|  |           hardwareVersion(cInfo.hardwareVersion), | ||||||
|  |           firmwareVersion(cInfo.firmwareVersion) { | ||||||
|  |       } | ||||||
|   }; |   }; | ||||||
|    |    | ||||||
|   struct TokenInfo { |   struct TokenInfo { | ||||||
| @@ -593,6 +602,28 @@ namespace cryptoki { | |||||||
|       CK_VERSION hardwareVersion; |       CK_VERSION hardwareVersion; | ||||||
|       CK_VERSION firmwareVersion; |       CK_VERSION firmwareVersion; | ||||||
|       FixString<16> utcTime; |       FixString<16> utcTime; | ||||||
|  |        | ||||||
|  |       //! Convert C-Structure of Token Information Into C++ | ||||||
|  |       TokenInfo(const CK_TOKEN_INFO& cInfo): | ||||||
|  |           label(cInfo.label), | ||||||
|  |           manufacturerID(cInfo.manufacturerID), | ||||||
|  |           model(cInfo.model), | ||||||
|  |           serialNumber(cInfo.serialNumber), | ||||||
|  |           flags(cInfo.flags), | ||||||
|  |           maxSessionCount(cInfo.ulMaxSessionCount), | ||||||
|  |           sessionCount(cInfo.ulSessionCount), | ||||||
|  |           maxRwSessionCount(cInfo.ulMaxRwSessionCount), | ||||||
|  |           rwSessionCount(cInfo.ulRwSessionCount), | ||||||
|  |           maxPinLen(cInfo.ulMaxPinLen), | ||||||
|  |           minPinLen(cInfo.ulMinPinLen), | ||||||
|  |           totalPublicMemory(cInfo.ulTotalPublicMemory), | ||||||
|  |           freePublicMemory(cInfo.ulFreePublicMemory), | ||||||
|  |           totalPrivateMemory(cInfo.ulTotalPrivateMemory), | ||||||
|  |           freePrivateMemory(cInfo.ulFreePrivateMemory), | ||||||
|  |           hardwareVersion(cInfo.hardwareVersion), | ||||||
|  |           firmwareVersion(cInfo.firmwareVersion), | ||||||
|  |           utcTime(cInfo.utcTime) { | ||||||
|  |       } | ||||||
|   }; |   }; | ||||||
|    |    | ||||||
|   struct Info { |   struct Info { | ||||||
| @@ -879,19 +910,7 @@ namespace cryptoki { | |||||||
|         //! calls @c C_GetSlotInfo |         //! calls @c C_GetSlotInfo | ||||||
|         if (!check(_library->C_GetSlotInfo(_slot, &cInfo), |         if (!check(_library->C_GetSlotInfo(_slot, &cInfo), | ||||||
|                    CRYPTOKI_FN_LOG("C_GetSlotInfo"))) |                    CRYPTOKI_FN_LOG("C_GetSlotInfo"))) | ||||||
|           return slotinfo(cInfo); |           return SlotInfo(cInfo); | ||||||
|       } |  | ||||||
|  |  | ||||||
|       //! Convert C-Structure of Slot Information Into C++ |  | ||||||
|       SlotInfo slotinfo(const CK_SLOT_INFO& cInfo) { |  | ||||||
|         CRYPTOLOG("log"); |  | ||||||
|         SlotInfo info; |  | ||||||
|         info.slotDescription = cInfo.slotDescription; |  | ||||||
|         info.manufacturerID = cInfo.manufacturerID; |  | ||||||
|         info.flags = cInfo.flags; |  | ||||||
|         info.hardwareVersion = cInfo.hardwareVersion; |  | ||||||
|         info.firmwareVersion = cInfo.firmwareVersion; |  | ||||||
|         return info; |  | ||||||
|       } |       } | ||||||
|  |  | ||||||
|       //! Read Token Information |       //! Read Token Information | ||||||
| @@ -901,31 +920,7 @@ namespace cryptoki { | |||||||
|         CK_TOKEN_INFO cInfo; |         CK_TOKEN_INFO cInfo; | ||||||
|         if (!check(_library->C_GetTokenInfo(_slot, &cInfo), |         if (!check(_library->C_GetTokenInfo(_slot, &cInfo), | ||||||
|                    CRYPTOKI_FN_LOG("C_GetTokenInfo"))) |                    CRYPTOKI_FN_LOG("C_GetTokenInfo"))) | ||||||
|           return tokeninfo(cInfo); |           return TokenInfo(cInfo); | ||||||
|       } |  | ||||||
|  |  | ||||||
|       //! Convert C-Structure of Token Information Into C++ |  | ||||||
|       TokenInfo tokeninfo(const CK_TOKEN_INFO cInfo) { |  | ||||||
|         TokenInfo info; |  | ||||||
|         info.label = cInfo.label; |  | ||||||
|         info.manufacturerID = cInfo.manufacturerID; |  | ||||||
|         info.model = cInfo.model; |  | ||||||
|         info.serialNumber = cInfo.serialNumber; |  | ||||||
|         info.flags = cInfo.flags; |  | ||||||
|         info.maxSessionCount = cInfo.ulMaxSessionCount; |  | ||||||
|         info.sessionCount = cInfo.ulSessionCount; |  | ||||||
|         info.maxRwSessionCount = cInfo.ulMaxRwSessionCount; |  | ||||||
|         info.rwSessionCount = cInfo.ulRwSessionCount; |  | ||||||
|         info.maxPinLen = cInfo.ulMaxPinLen; |  | ||||||
|         info.minPinLen = cInfo.ulMinPinLen; |  | ||||||
|         info.totalPublicMemory = cInfo.ulTotalPublicMemory; |  | ||||||
|         info.freePublicMemory = cInfo.ulFreePublicMemory; |  | ||||||
|         info.totalPrivateMemory = cInfo.ulTotalPrivateMemory; |  | ||||||
|         info.freePrivateMemory = cInfo.ulFreePrivateMemory; |  | ||||||
|         info.hardwareVersion = cInfo.hardwareVersion; |  | ||||||
|         info.firmwareVersion = cInfo.firmwareVersion; |  | ||||||
|         info.utcTime = cInfo.utcTime; |  | ||||||
|         return info; |  | ||||||
|       } |       } | ||||||
|  |  | ||||||
|       /*! @bug does not compile: |       /*! @bug does not compile: | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user