symbol Asset 1

RNP 0.13.0 released

Author’s picture Nickolay Olshevsky on 03 Jan 2020

General

Next version of the RNP library extends FFI and CLI interfaces, giving more flexibility and control to the user.

  • Fixed a double-free on invalid armor headers.

  • Fixed broken versioning when used as a git submodule.

  • Fixed an infinite loop on parsing truncated armored keys.

  • Fixed armored stream parsing to be more flexible and allow blank lines before trailer.

  • Fixed the armor header for detached signatures (previously MESSAGE, now SIGNATURE).

  • Improved setting of default qbits for DSA.

  • Fixed a crash when retrieving signature revocation reason.

  • Stop using expensive tests for key material validation.

CLI

  • rnpkeys: Removed a few redundant commands (--get-key, --print-sigs, --trusted-keys, …​).

  • rnpkeys: Added --secret option.

  • rnpkeys: Display 'ssb' for secret subkeys.

  • rnp: Added --list-packets parameters (--json, etc.).

  • rnp: Removed --show-keys.

FFI

  • Added rnp_version_commit_timestamp to retrieve the commit timestamp (for non-release builds).

  • Added a new (non-JSON) key generation API (rnp_op_generate_create etc.).

  • Added rnp_unload_keys function to unload all keys.

  • Added rnp_key_remove to unload a single key.

  • Expanded bit length support for JSON key generation.

  • Added rnp_key_get_subkey_count/rnp_key_get_subkey_at.

  • Added various key property accessors (rnp_key_get_bits, rnp_key_get_curve).

  • Added rnp_op_generate_set_protection_password.

  • Added rnp_key_packets_to_json/rnp_dump_packets_to_json.

  • Added rnp_key_get_creation, rnp_key_get_expiration.

  • Added rnp_key_get_uid_handle_at, rnp_uid_is_revoked, etc.

  • Added rnp_key_is_revoked and related functions to check for revocation.

  • Added rnp_output_to_path and rnp_output_finish.

  • Added rnp_import_keys.

  • Added rnp_calculate_iterations.

  • Added rnp_supports_feature/rnp_supported_features.

  • Added rnp_enable_debug/rnp_disable_debug.

  • Added rnp_key_get_primary_grip.

  • Added rnp_output_to_armor.

  • Added rnp_op_generate_set_request_password.

  • Added rnp_dump_packets_to_output.

  • Added rnp_output_write.

  • Added rnp_guess_contents.

  • Implemented rnp_op_set_file_name/rnp_op_set_file_mtime.

  • Added rnp_op_encrypt_set_aead_bits.

  • Added rnp_op_verify_signature_get_handle.

  • Added rnp_signature_packet_to_json.

Packaging

  • RPM: Split packages into librnp0, librnp0-devel, and rnp0.