sdk: integrate libvuptsdk (renamed libzuptsdk); decouple --pq-box
libvuptsdk (git.securityops.co/cristiancmoises/libvuptsdk) is the renamed libzuptsdk: only the .so filename/SONAME changed (libzuptsdk.so.2 -> libvuptsdk.so.2); the C API (zuptsdk_* symbols, zuptsdk.h) is unchanged. - Rename vendor/zuptsdk -> vendor/vuptsdk with libvuptsdk's headers. - Makefile WITH_SDK=1 now links -lvuptsdk (+ its transitive libcrypto/libargon2 deps via SDK_DEPLIBS) instead of -lzuptsdk, and installs libvuptsdk.so.*. - DECOUPLE --pq-box: it needs the SEPARATE libpqvaptvupt, which libvuptsdk does NOT provide, so gate it behind a new WITH_PQBOX=1 (was folded into WITH_SDK). zupt_crypto_pqbox.c now keys on ZUPT_WITH_PQBOX; WITH_SDK=1 alone builds and links cleanly with just libvuptsdk and enables --pq-sdk + Argon2id. - Banner/help renamed libzuptsdk -> libvuptsdk; the machine-readable 'Build:' line lists --pq-box only under WITH_PQBOX. GUI _get_caps matches on 'vuptsdk'. Validated on Guix: WITH_SDK=1 links libvuptsdk + libcrypto + libargon2, runs, banner 'Build: full (libvuptsdk: Argon2id, --pq-sdk available)', keygen --sdk + --pq-sdk encrypt/decrypt byte-exact roundtrip. Default source-only build unchanged (make check 16/16).
This commit is contained in:
parent
59f9ebc59e
commit
51fa068f50
14 changed files with 81 additions and 41 deletions
|
|
@ -194,7 +194,7 @@ ZUPT_VER_SHORT, ZUPT_VER_NUMBER, ZUPT_VER_FULL = _get_version()
|
|||
|
||||
# ── Detect build capabilities from `version` (and `help` as fallback) ──
|
||||
#
|
||||
# The default build is SOURCE-ONLY: the libzuptsdk-backed modes (Argon2id
|
||||
# The default build is SOURCE-ONLY: the libvuptsdk-backed modes (Argon2id
|
||||
# KDF, --pq-sdk, --pq-box) are absent and fail with exit 1. Offering them in
|
||||
# the UI is the #1 reason "functions don't work". We detect what THIS binary
|
||||
# actually supports and build the encryption UI around it:
|
||||
|
|
@ -212,7 +212,7 @@ def _get_caps():
|
|||
for line in blob.splitlines():
|
||||
low = line.lower()
|
||||
if low.startswith("build:"):
|
||||
sdk = ("full" in low) and ("libzuptsdk" in low)
|
||||
sdk = ("full" in low) and ("vuptsdk" in low)
|
||||
elif low.startswith("kdf:"):
|
||||
default_kdf = "Argon2id" if "argon2id (default)" in low else "PBKDF2-SHA256"
|
||||
if "--pq-only" in line:
|
||||
|
|
|
|||
Loading…
Reference in a new issue