Commit ddc0fec
fix(string): restrict encryption to C strings only
Replace isString() with isCString() in both the global-variable and
struct-field encoding paths. isString() matches any [N x i8] array,
including binary data arrays (bitmasks, protocol constants, numeric
byte tables) that happen to have no embedded null bytes. isCString()
restricts encryption to proper null-terminated C strings only.
This prevents the pass from encrypting arrays like QUIC crypto labels,
DTLS bitmask tables, and test data arrays such as {1,1,...,1}, which
caused memory corruption and test failures in the OpenSSL QUIC ACK
manager test (75-test_quic_ackm.t).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>1 parent cba95f8 commit ddc0fec
1 file changed
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
109 | 109 | | |
110 | 110 | | |
111 | 111 | | |
112 | | - | |
| 112 | + | |
113 | 113 | | |
114 | 114 | | |
115 | 115 | | |
| |||
118 | 118 | | |
119 | 119 | | |
120 | 120 | | |
121 | | - | |
| 121 | + | |
122 | 122 | | |
123 | 123 | | |
124 | 124 | | |
| |||
0 commit comments