Skip to content

@jariq jariq released this Mar 12, 2020

  • Support alternative "empty" value of CK_DATE
  • #143 - Use LoadLibraryEx instead of LoadLibrary
  • #144 - Fixed reading of array attributes in HighLevelAPI
Assets 6

@jariq jariq released this Jun 2, 2019 · 19 commits to master since this release

  • #69 - Improved error message in UnmanagedException
  • #70 - Introduced managed logging
  • #75 - Removed Silverlight 5 support
  • #76 - Introduced automatic code generation
  • #80 - Replaced the topmost HighLevelAPI with interfaces
  • #93 - Added support for signing with context specific PIN
  • #94 - Added SourceLink and SNUPKG support
  • #104 - Removed xamarinios1.0 target from NuGet package because Xamarin.iOS uses netstandard2.0 target
  • #105 - Removed monoandroid2.3 target from NuGet package because Xamarin.Android uses netstandard2.0 target
  • #107 - Removed xamarinmac2.0 target from NuGet package because Xamarin.Mac uses netstandard2.0 target
  • #108 - Moved to a single solution with a multitargeting SDK style project
  • #124 - Removed .NET Standard 1.3 support
Assets 6

@jariq jariq released this Mar 31, 2019

  • #115 - Fixed automatic platform detection on new versions of Android and updated Android TargetFrameworkVersion to v8.0 (API level 26)
  • #116 - LibraryArchitectureException won't be thrown on macOS for errors unrelated to unmanaged library platform
Assets 5

@jariq jariq released this Jan 24, 2019 · 5 commits to 4.x-maintenance since this release

  • #68 - Unified assembly name for all platforms to Pkcs11Interop.dll
  • #88 - Adopted NuGet package signing
  • #99 - Removed support for Coverity Scan service
  • #101 - Added netstandard20 target to NuGet package
  • #102 - Added support for Travis CI builds on Linux and macOS
  • #103 - Added support for Xamarin.Mac
Assets 5

@jariq jariq released this Aug 23, 2017 · 60 commits to master since this release

  • #43 - Updated to PKCS#11 v2.40 errata01
  • #44 - Updated to Visual Studio 2017
  • #49 - Projects in new Pkcs11Interop.NetStandard solution have been created from scratch in Visual Studio 2017. This solution replaces old Pkcs11Interop.DotNetCore solution.
  • Renamed COREFX symbol to NETSTANDARD1_3 symbol
  • #50 - Included PKCS11-MOCK 1.0.0 library in test projects
  • #51 - Tests are executed during automated AppVeyor builds
  • Build scripts now support "--with-tests" parameter
  • #52 - Strongly named assemblies are generated by default
  • #53 - All StrongName projects/libs/packages were dropped
  • #54 - Introduced five new enums - AppType, InitType, SlotsType, WaitType and SessionType - that replaced several most annoying occurrences of bool type in public API. These changes break backwards API compatibility.
Assets 6

@jariq jariq released this Jan 24, 2017 · 86 commits to master since this release

  • AppVeyor continuous integration service setup contributed by Peter Polačko
  • Added Session::CloseWhenDisposed property which brings more control over the session lifetime to HighLevelAPIs
  • #41 - Added *.StrongName projects that produce strongly named assemblies which are published in a separate nuget package
  • Introduced AttributeValueException that should provide more useful information when reading or conversion of attribute value fails
Assets 6

@jariq jariq released this Jul 17, 2016 · 105 commits to master since this release

  • Added support for .NET Core 1.0 RTM / .NET Standard 1.3
  • Refreshed Xamarin.Android and Xamarin.iOS solutions for VS 2015
  • Xamarin.Android targets Android 2.3 API 10 as a minimum SDK version
  • Added build scripts for convenient releasing and NuGet packaging
  • #28 - Introduced Net.Pkcs11Interop.Common.LibraryArchitectureException which indicates an attempt to load unmanaged PKCS#11 library designated for a different architecture
  • Fixed reading of empty CK_DATE attributes
  • Fixed pointer arithmetics in the processing of array attributes
  • Unified runtime OS detection in Net.Pkcs11Interop.Common.Platform class
  • Net.Pkcs11Interop.Common.CK, Net.Pkcs11Interop.Common.CKF and Net.Pkcs11Interop.Common.CKZ classes are now static
  • Improved HexString conversions
  • Improved return value marshaling of all unmanaged PKCS#11 functions by using uint/ulong types instead of Net.Pkcs11Interop.Common.CKR type
  • Improved return value marshaling of FreeLibrary() function
  • Improved marshaling of C_GetSLotList() function parameters in cases when it is being invoked directly instead of being invoked via the pointer returned by C_GetFunctionList() function
Assets 5

@jariq jariq released this Mar 29, 2016 · 154 commits to master since this release

  • License changed to the Apache License, Version 2.0
Assets 6

@jariq jariq released this Mar 20, 2016 · 167 commits to master since this release

  • Added support for PKCS#11 URI scheme defined in RFC 7512
  • Added support for Silverlight 5, Xamarin.Android and Xamarin.iOS
  • PKCS11-MOCK module can be used for testing on all supported platforms
  • APIs can now be easily extended to support vendor specific unmanaged functions
  • Value of array attributes (e.g. CKA_WRAP_TEMPLATE and CKA_UNWRAP_TEMPLATE) can now be read also in HighLevelAPIs
  • Fixed GetAttributeValue() method in HighLevelAPIs
  • Fixed marshalling of unmanaged CK_BBOOL type in C_GetSlotList() function and in CK_KEA_DERIVE_PARAMS, CK_SSL3_KEY_MAT_PARAMS and CK_WTLS_KEY_MAT_PARAMS structs
  • Fixed marshalling of PasswordLen member in CK_PKCS5_PBKD2_PARAMS struct
  • Class Net.Pkcs11Interop.Common.UnmanagedLong has been replaced with UnmanagedLongSize property of Net.Pkcs11Interop.Common.Platform class
  • PKCS#11 libraries which are not using structs packed with 1-byte alignment are now supported via LowLevelAPI40 and HighLevelAPI40 on platforms where C 'long' type is 4 bytes long and via LowLevelAPI80 and HighLevelAPI80 on platforms where C 'long' type is 8 bytes long
  • LowLevelAPI4 and HighLevelAPI4 known from previous versions support only PKCS#11 libraries which are using structs packed with 1-byte alignment on platforms where C 'long' type is 4 bytes long and therefore they have been renamed to LowLevelAPI41 and HighLevelAPI41
  • LowLevelAPI8 and HighLevelAPI8 known from previous versions support only PKCS#11 libraries which are using structs packed with 1-byte alignment on platforms where C 'long' type is 8 bytes long and therefore they have been renamed to LowLevelAPI81 and HighLevelAPI81
  • Multiplatform HighLevelAPI is now built on top of HighLevelAPI40, HighLevelAPI41, HighLevelAPI80 and HighLevelAPI81 and it automatically uses correct set of platform dependent APIs
Assets 6

@jariq jariq released this Mar 20, 2016 · 266 commits to master since this release

  • Fixed DecryptDigest() method in HighLevelAPI
  • Calls C_GetSlotList() only once with no slots present
  • Added CK_UNAVAILABLE_INFORMATION and CK_EFFECTIVELY_INFINITE constants
Assets 5
You can’t perform that action at this time.