crates.io / libsqlite3-sys / 0.39.0
libsqlite3-sys 0.39.0
- Source
- https://github.com/rusqlite/rusqlite
- Artifact scanned
libsqlite3-sys-0.39.0.crate- Compared with
libsqlite3-sys-0.38.2.crate(0 signals introduced since)- Files
- 16 scanned, 6 skipped (binary, oversized, or unrecognised)
- Signals
- 0 critical · 0 warn · 14 info
- Scan time
- 14.8 s
- LLM review
- Reviewed by claude-haiku-5-5 (Anthropic): 13 of 13 warn and critical signals; 13 demoted to info.
- Disclude version
- 4.3.0
- Scanned (UTC)
- 2026-10-26 07:28
Signals
Ordered by severity, then signals introduced in this release. Hidden characters are shown as ⟨U+…⟩.
-
// the bundled sqlite on android also uses `SQLITE_TEMP_STORE=3`. // https://android.googlesource.com/platform/external/sqlite/+/2c8c9ae3b7e6f340a19a0001c2a889a211c9d8b2/dist/Android.mk if android_target -
likely benign Conditional macro that maps the double keyword to sqlite3_int64 when floating point is omitted.
Reasoning
This is the standard SQLite pattern for building without floating point. The rebinding sits under SQLITE_OMIT_FLOATING_POINT and maps double to an integer type, which is a deliberate configuration choice, not an attack.
-
SQLITE_API int ;dismissed Parameter names p1 and p2 in sqlite3_snapshot_cmp, flagged only because the skeleton collapses digits and letters.Reasoning
The parameters p1 and p2 are ordinary names that only look alike under the digit-to-letter confusable skeleton. This is a false positive from the token pass's confusable heuristic.
-
likely benign Conditional macro mapping double to sqlite_int64 when floating point is omitted, with companion fabs and float macros.
Reasoning
Same SQLite no-floating-point configuration block, mapping double to sqlite_int64 under SQLITE_OMIT_FLOATING_POINT. It is a legitimate build option.
-
likely benign Conditional macro mapping float to sqlite_int64 when floating point is omitted.
Reasoning
The float macro is part of the same SQLITE_OMIT_FLOATING_POINT block, a standard way to build SQLite without floating point support.
-
SQLITE_PRIVATE Expr *; SQLITE_PRIVATE void ; SQLITE_PRIVATE const char *; SQLITE_PRIVATE void ;dismissed Function prototypes whose identifiers collapse to the same visual skeleton under the heuristic.Reasoning
The flagged names are ordinary prototype identifiers such as zColl and Column that collide only under the confusable skeleton. No malicious content is present.
-
static const char aHex = "0123456789abcdef"; static const char aPrefix = "-x0\000X0"; static const et_info fmtinfo =likely benign Static printf prefix string literal containing an intentional embedded NUL used by the formatter.Reasoning
aPrefix is a printf prefix table in SQLite's formatter. The embedded NUL is an intentional terminator in the string table, and the flagged bytes are data, not executable payload.
-
; return ; }likely benign Unix sqlite3OsDlOpen wrapper that loads an extension library from a runtime filename.Reasoning
This is SQLite's unix extension loader, which calls dlopen on a filename the caller supplies. Loading extensions at a runtime path is a documented, user-invoked feature, and the snippet shows no hidden or encoded behaviour.
-
)dismissed Local integer variables i1 and i2 in a comparison routine, flagged by the confusable heuristic.Reasoning
The variables i1 and i2 are ordinary local integers. The confusable collision is a heuristic false positive.
-
iflikely benign Static UTF-16-style affinity string with intentional NUL bytes used in SQLite's affinity code.Reasoning
zAff is a UTF-16 affinity string literal, where the NUL bytes are intentional encoding padding. The assertions around it confirm the intent is affinity-character handling.
-
int nKey; /* Number of sorting key columns, including OP_Sequence */ KeyInfo *pKI; /* Original KeyInfo on the sorter table */ regRecord = ;dismissed Ordinary sorter variables pKI and related names, flagged by the confusable heuristic.Reasoning
The names nKey, pKI and pK are ordinary sorter-related identifiers. The collision comes only from the confusable heuristic.
-
*/ static intdismissed Parameter p0 and related names in sameSrcAlias, flagged by the confusable heuristic.Reasoning
p0 and the nearby pointer names are plain parameters and locals in an alias-comparison helper. The collision is a heuristic false positive.
-
LogEst rLogEst = ; int *pI1 = ; u64 *pU64 = ; int *pI2 = ;dismissed Pointer locals pI1, pU64 and pI2 fetched via va_arg, flagged by the confusable heuristic.Reasoning
The variables pI1, pU64 and pI2 are ordinary pointer locals that read va_arg values in a variadic handler. The collision is a heuristic false positive.
-
likely benign Public header conditional that maps double to sqlite3_int64 when floating point is omitted.
Reasoning
This is the same SQLITE_OMIT_FLOATING_POINT conditional in the public header, mapping double to sqlite3_int64 for builds without floating point. It is a documented configuration mechanism.
Reproduce This Scan
Run disclude locally to verify. These commands scan the published file; the "new in this release" marks come from comparing it with the previous release's file, which they don't repeat. Add --format sarif for SARIF output. Add --llm (with an API key in the environment) to include the LLM review.
|
&&