Skip to main content

Crate arwen_codesign

Crate arwen_codesign 

Source
Expand description

Ad-hoc code signing for Mach-O binaries

This module implements ad-hoc code signing for Mach-O binaries, matching Apple’s codesign behavior for linker-signed binaries.

§Example

use arwen_codesign::{adhoc_sign, AdhocSignOptions, Entitlements};

// Simple signing with just an identifier
let signed = adhoc_sign(data, &AdhocSignOptions::new("com.example.myapp"))?;

// With hardened runtime and preserved entitlements
let options = AdhocSignOptions::new("com.example.myapp")
    .with_hardened_runtime()
    .with_entitlements(Entitlements::Preserve);
let signed = adhoc_sign(data, &options)?;

Modules§

constants
Code signature magic numbers and constants

Structs§

AdhocSignOptions
Options for ad-hoc code signing

Enums§

Entitlements
How to handle entitlements during ad-hoc signing

Functions§

adhoc_sign
Sign a Mach-O binary with an ad-hoc signature
adhoc_sign_file
extract_entitlements
Extract entitlements from a Mach-O binary’s code signature
generate_adhoc_signature
Generate an ad-hoc code signature for a Mach-O binary
is_linker_signed
Check if a Mach-O binary has a linker-signed code signature