Skip to content

0.3.1

Latest

Choose a tag to compare

@leonlynch leonlynch released this 01 Mar 14:50
0.3.1
05a8092

Changes since 0.3.0:

  • emv-decode tool:
    • Update to use GPLv3 license instead of LGPLv2
    • Fix error paths for argp
    • Fix process exit codes
  • emv-tool tool:
    • Update to use GPLv3 license instead of LGPLv2
    • Use localtime_r() and gmtime_r() when available
    • Fix error paths for argp
    • Support Apple's PCSC.framework
    • Various other PC/SC improvements
  • emv-viewer application:
    • Implement clipboard actions
    • Implement search functionality
    • Improve selection and navigation of fields
  • emv and iso7816 libraries:
    • Improve memory allocation for better memory safety and platforms that have undefined behaviour for malloc(0)
    • Hardening of integer, bit shift and buffer operations
    • Fix emv_aid_get_info() for unknown scheme or product
    • Miscellaneous cleanups
  • emv_strings library:
    • Stringify various contactless fields
  • Build improvements:
    • Add Github Actions workflows for CodeQL analysis
    • Add build option EMV_UTILS_ENABLE_SANITIZERS for compiler sanitizers (-fsanitize)
    • Add build option EMV_UTILS_ENABLE_HARDENING for runtime security hardening (-fstack-protector-strong, _FORTIFY_SOURCE=2)
    • Use parallel builds for Github Actions
    • Remove builds for Fedora 41 and add builds for Fedora 43
    • Update all Fedora and MacOS release builds to use Qt6
  • Update to latest OpenEMV common crypto submodule:
    • Clear AES KCV ciphertext on error
    • Fix random data helper functions
    • Let FetchMbedTLS.cmake use MbedTLS 3.6.5 LTS
    • Update MbedTLS patch to remove unused 3rd party components
  • Update to latest libargp:
    • Fix C99 format specifiers when using MinGW
    • Add -Wall option for both Clang and AppleClang
    • Ensure that POSIX make is available
    • Reduce unnecessary reconfiguration of autotools

This is a maintenance and hardening release that includes various memory safety improvements, bug fixes, and new emv-viewer features.

Note

See README for installation instructions. MacOS users that already use Homebrew should favour using that to install this project using brew install openemv/tap/emv-utils instead of using the provided .dmg installer due to the lack of notarization.

Ubuntu release builds are provided as .deb files inside .zip files because Github mangles the file names.

This release is signed with key 4096R/27195F153817DAF955B0CF9FCA0466CD90C50572.