把 includes 下 64 个 .vp 的文件头注释(含 traceback.vp 第 13-427 行的整块文件级说明)以及 2 处漏网的正文中文注释(ast/lexer.vp、json/__writer.vp)与 1 处中文 docstring(memhub.vp)逐行译为英文;同步把 fltk/gen_ffi.py 的生成模板与其自身注释英文化,使重新生成仍为英文。 只改注释/文档串文字:行数与代码逐字节不变(骨架比对 140 文件漂移 0),运行时中文字符串字面量 305 处保持原样。验证:三重重编 SUCCESS(170.21s)+ 全量 77/77 顺序回归通过 + VET 编译 SUCCESS / --search-paths 7 条 exit 0。
76 lines
3.3 KiB
Plaintext
76 lines
3.3 KiB
Plaintext
import t, c
|
|
from openssl.types import *
|
|
|
|
# ============================================================
|
|
# openssl/crypto.vp — OpenSSL global initialization / version / memory utilities
|
|
# Corresponding headers: crypto.h / opensslv.h
|
|
# ============================================================
|
|
|
|
# ---- Version query types (type arg of OpenSSL_version(type)) ----
|
|
define OpenSslVersion = 0# OPENSSL_VERSION full version text
|
|
define OpenSslBuiltOn = 2# OPENSSL_BUILT_ON build time
|
|
define OpenSslPlatform = 3# OPENSSL_PLATFORM platform
|
|
define OpenSslDir = 4# OPENSSL_DIR
|
|
define OpenSslEnginesDir = 5# OPENSSL_ENGINES_DIR
|
|
define OpenSslVersionString = 6# OPENSSL_VERSION_STRING "3.x.y"
|
|
define OpenSslModulesDir = 8# OPENSSL_MODULES_DIR
|
|
define OpenSslCpuInfo = 9# OPENSSL_CPU_INFO
|
|
|
|
# ---- OPENSSL_init_crypto / OPENSSL_init_ssl option bits ----
|
|
define OpenSslInitNoLoadCryptoStrings = 0x00000001
|
|
define OpenSslInitNoLoadConfig = 0x00000004
|
|
define OpenSslInitNoAddAllCiphers = 0x00000008
|
|
define OpenSslInitNoAddAllDigests = 0x00000010
|
|
define OpenSslInitLoadConfig = 0x00000040
|
|
define OpenSslInitAsync = 0x00000080
|
|
define OpenSslInitDebugFile = 0x00010000
|
|
define OpenSslInitAtFork = 0x00020000
|
|
define OpenSslInitNoLoadSslStrings = 0x00100000
|
|
define OpenSslInitNoAtomics = 0x00200000
|
|
|
|
# ---- Version numbers (3.6.2, depends on the linked library) ----
|
|
define OpenSslVersionMajor = 3
|
|
define OpenSslVersionMinor = 6
|
|
define OpenSslVersionPatch = 2
|
|
|
|
# ---- Global init / cleanup ----
|
|
# int OPENSSL_init_crypto(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings)
|
|
extern def OPENSSL_init_crypto(opts: uint64, settings: bytes) -> int
|
|
# int OPENSSL_init_ssl(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings)
|
|
extern def OPENSSL_init_ssl(opts: uint64, settings: bytes) -> int
|
|
extern def OPENSSL_cleanup()
|
|
|
|
# ---- Version query ----
|
|
# const char *OpenSSL_version(int type)
|
|
extern def OpenSSL_version(type: int) -> str
|
|
# unsigned long OpenSSL_version_num(void)
|
|
extern def OpenSSL_version_num() -> uint32
|
|
extern def OPENSSL_version_pre_release() -> str
|
|
extern def OPENSSL_version_build_metadata() -> str
|
|
|
|
# ---- Memory / secure erase ----
|
|
# void OPENSSL_cleanse(void *ptr, size_t len)
|
|
extern def OPENSSL_cleanse(ptr: bytes, len: sizet)
|
|
# void CRYPTO_free(void *ptr, const char *file, int line)
|
|
extern def CRYPTO_free(ptr: bytes, file: str, line: int)
|
|
# void *CRYPTO_malloc(size_t num, const char *file, int line)
|
|
extern def CRYPTO_malloc(num: sizet, file: str, line: int) -> bytes
|
|
# int CRYPTO_memcmp(const void *in_a, const void *in_b, size_t len)
|
|
extern def CRYPTO_memcmp(in_a: bytes, in_b: bytes, len: sizet) -> int
|
|
# char *OPENSSL_buf2hexstr(const unsigned char *buf, long buflen) -> free with ossl_free
|
|
extern def OPENSSL_buf2hexstr(buf: bytes, buflen: int32) -> str
|
|
# int OPENSSL_hexchar2int(unsigned char c)
|
|
extern def OPENSSL_hexchar2int(c: uint8) -> int
|
|
# int OPENSSL_strcasecmp(const char *s1, const char *s2)
|
|
extern def OPENSSL_strcasecmp(s1: str, s2: str) -> int
|
|
# int OPENSSL_strncasecmp(const char *s1, const char *s2, size_t n)
|
|
extern def OPENSSL_strncasecmp(s1: str, s2: str, n: sizet) -> int
|
|
|
|
# ---- Convenience wrappers (CRYPTO_free/CRYPTO_malloc macros take file/line; wrapped as single-arg) ----
|
|
def ossl_free(ptr: bytes):
|
|
CRYPTO_free(ptr, "", 0)
|
|
|
|
|
|
def ossl_malloc(num: sizet) -> bytes:
|
|
return CRYPTO_malloc(num, "", 0)
|