flowproof 0.12.2__tar.gz → 0.17.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {flowproof-0.12.2 → flowproof-0.17.0}/Cargo.lock +210 -44
- {flowproof-0.12.2 → flowproof-0.17.0}/Cargo.toml +14 -1
- {flowproof-0.12.2 → flowproof-0.17.0}/PKG-INFO +1 -1
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/egress_linux.rs +9 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/sap_com.rs +577 -88
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/web.rs +776 -53
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-agent/Cargo.toml +1 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-agent/src/author.rs +1105 -10
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-agent/src/clarify.rs +13 -0
- flowproof-0.17.0/crates/flowproof-agent/src/doc_author.rs +342 -0
- flowproof-0.17.0/crates/flowproof-agent/src/doc_formats/hp_alm.rs +224 -0
- flowproof-0.17.0/crates/flowproof-agent/src/doc_formats.rs +7 -0
- flowproof-0.17.0/crates/flowproof-agent/src/draft_assembly.rs +188 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-agent/src/heal.rs +5 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-agent/src/lib.rs +15 -2
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-agent/src/llm.rs +42 -8
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-agent/src/recorder.rs +1656 -31
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-agent/src/rules.rs +99 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-agent/src/spec.rs +868 -10
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-agent/tests/model_client_http.rs +30 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/src/lib.rs +671 -43
- flowproof-0.17.0/crates/flowproof-cli/tests/documented_flags.rs +113 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/llm_author_e2e.rs +152 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/notepad_author_e2e.rs +3 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/sap_e2e.rs +1 -1
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/sap_pipeline.rs +99 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/sap_sim_e2e.rs +34 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/support/sap_simulator.py +76 -30
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/web_e2e.rs +264 -2
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-driver/src/app.rs +144 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-driver/src/lib.rs +12 -9
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-driver/src/mock.rs +230 -3
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-driver/src/recording.rs +360 -10
- flowproof-0.17.0/crates/flowproof-driver/src/surface.rs +376 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-python/Cargo.toml +1 -1
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-python/src/lib.rs +58 -6
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-replay/src/lib.rs +211 -42
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-replay/src/report.rs +72 -5
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-replay/tests/replay_calc.rs +590 -1
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-trace/schema/trace-v1.schema.json +155 -94
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-trace/src/format.rs +46 -0
- flowproof-0.17.0/crates/flowproof-trace/tests/fixtures/multi.trace.jsonl +5 -0
- flowproof-0.17.0/crates/flowproof-trace/tests/schema_conformance.rs +141 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/flowproof/__init__.py +1 -1
- {flowproof-0.12.2 → flowproof-0.17.0}/flowproof/flow.py +62 -8
- {flowproof-0.12.2 → flowproof-0.17.0}/flowproof/mcp_server.py +29 -6
- {flowproof-0.12.2 → flowproof-0.17.0}/pyproject.toml +1 -1
- flowproof-0.12.2/crates/flowproof-trace/tests/schema_conformance.rs +0 -67
- {flowproof-0.12.2 → flowproof-0.17.0}/README.md +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/Cargo.toml +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/agent_proxy.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/agent_runner.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/egress.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/egress_windows/audit.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/egress_windows/capture.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/egress_windows/env_block.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/egress_windows/filters.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/egress_windows/identity.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/egress_windows/logon.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/egress_windows/netevents.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/egress_windows/run.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/egress_windows/spawn.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/egress_windows/wfp.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/egress_windows.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/fs_observe.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/lib.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/mcp_core.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/mcp_http.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/mcp_stdio.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/src/vision.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/tests/drag_spike.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/tests/fs_observation_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-adapters/tests/windows_containment_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-agent/src/agent_steps.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/Cargo.toml +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/src/agent_flow.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/src/capture.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/src/main.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/agent_flow_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/agent_url_record_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/api_pipeline.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/audit_record_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/calc_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/clock_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/cookie_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/doctor_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/egress_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/examples_resolve.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/falsifiability_arg_matchers.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/falsifiability_audit_since.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/falsifiability_call_order.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/falsifiability_capability_regression.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/falsifiability_control_verdict.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/falsifiability_mcp_kill.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/falsifiability_no_tool_call.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/falsifiability_reply_contains.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/grid_cell_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/iframe_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/mcp_http_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/mcp_stdio_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/notepad_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/page_title_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/pinned_random_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/scoped_container_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/select_missing_option_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/skip_unless_env.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/suite_env_from.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/suite_flow_isolation.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/suite_missing_trace.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/visibility_e2e.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-cli/tests/vision_pipeline.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-driver/Cargo.toml +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-driver/src/backend.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-driver/src/gdi.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-driver/src/oob.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-driver/src/redact.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-driver/src/visual.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-driver/src/window.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-replay/Cargo.toml +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-replay/src/runrecord.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-trace/Cargo.toml +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-trace/src/captures.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-trace/src/cassette.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-trace/src/cassette_diff.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-trace/src/egress.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-trace/src/lib.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-trace/src/secret.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-trace/src/secret_scan.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-trace/src/substitution.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-trace/src/toolcalls.rs +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/crates/flowproof-trace/tests/fixtures/sample.trace.jsonl +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/flowproof/cli.py +0 -0
- {flowproof-0.12.2 → flowproof-0.17.0}/flowproof/py.typed +0 -0
|
@@ -24,6 +24,26 @@ version = "2.0.1"
|
|
|
24
24
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
25
25
|
checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa"
|
|
26
26
|
|
|
27
|
+
[[package]]
|
|
28
|
+
name = "adobe-cmap-parser"
|
|
29
|
+
version = "0.4.1"
|
|
30
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
31
|
+
checksum = "ae8abfa9a4688de8fc9f42b3f013b6fffec18ed8a554f5f113577e0b9b3212a3"
|
|
32
|
+
dependencies = [
|
|
33
|
+
"pom",
|
|
34
|
+
]
|
|
35
|
+
|
|
36
|
+
[[package]]
|
|
37
|
+
name = "aes"
|
|
38
|
+
version = "0.8.4"
|
|
39
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
40
|
+
checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0"
|
|
41
|
+
dependencies = [
|
|
42
|
+
"cfg-if",
|
|
43
|
+
"cipher",
|
|
44
|
+
"cpufeatures 0.2.17",
|
|
45
|
+
]
|
|
46
|
+
|
|
27
47
|
[[package]]
|
|
28
48
|
name = "ahash"
|
|
29
49
|
version = "0.8.12"
|
|
@@ -209,6 +229,15 @@ dependencies = [
|
|
|
209
229
|
"hybrid-array",
|
|
210
230
|
]
|
|
211
231
|
|
|
232
|
+
[[package]]
|
|
233
|
+
name = "block-padding"
|
|
234
|
+
version = "0.3.3"
|
|
235
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
236
|
+
checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93"
|
|
237
|
+
dependencies = [
|
|
238
|
+
"generic-array",
|
|
239
|
+
]
|
|
240
|
+
|
|
212
241
|
[[package]]
|
|
213
242
|
name = "block2"
|
|
214
243
|
version = "0.6.2"
|
|
@@ -260,6 +289,15 @@ version = "1.12.1"
|
|
|
260
289
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
261
290
|
checksum = "fc652a48c352aef3ea3aed32080501cf3ef6ed5da78602a020c991775b0aff04"
|
|
262
291
|
|
|
292
|
+
[[package]]
|
|
293
|
+
name = "cbc"
|
|
294
|
+
version = "0.1.2"
|
|
295
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
296
|
+
checksum = "26b52a9543ae338f279b96b0b9fed9c8093744685043739079ce85cd58f289a6"
|
|
297
|
+
dependencies = [
|
|
298
|
+
"cipher",
|
|
299
|
+
]
|
|
300
|
+
|
|
263
301
|
[[package]]
|
|
264
302
|
name = "cc"
|
|
265
303
|
version = "1.2.67"
|
|
@@ -276,6 +314,12 @@ version = "1.1.0"
|
|
|
276
314
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
277
315
|
checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c"
|
|
278
316
|
|
|
317
|
+
[[package]]
|
|
318
|
+
name = "cff-parser"
|
|
319
|
+
version = "0.2.0"
|
|
320
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
321
|
+
checksum = "c5810ca1a2b5870df2aab1c03e11c40c361ba51d6e3e361e56310f1cb3b4e087"
|
|
322
|
+
|
|
279
323
|
[[package]]
|
|
280
324
|
name = "cfg-if"
|
|
281
325
|
version = "1.0.4"
|
|
@@ -318,6 +362,16 @@ version = "1.5.0"
|
|
|
318
362
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
319
363
|
checksum = "6e4de3bc4ea267985becf712dc6d9eed8b04c953b3fcfb339ebc87acd9804901"
|
|
320
364
|
|
|
365
|
+
[[package]]
|
|
366
|
+
name = "cipher"
|
|
367
|
+
version = "0.4.4"
|
|
368
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
369
|
+
checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad"
|
|
370
|
+
dependencies = [
|
|
371
|
+
"crypto-common 0.1.7",
|
|
372
|
+
"inout",
|
|
373
|
+
]
|
|
374
|
+
|
|
321
375
|
[[package]]
|
|
322
376
|
name = "clap"
|
|
323
377
|
version = "4.6.2"
|
|
@@ -669,6 +723,15 @@ dependencies = [
|
|
|
669
723
|
"litrs",
|
|
670
724
|
]
|
|
671
725
|
|
|
726
|
+
[[package]]
|
|
727
|
+
name = "ecb"
|
|
728
|
+
version = "0.1.2"
|
|
729
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
730
|
+
checksum = "1a8bfa975b1aec2145850fcaa1c6fe269a16578c44705a532ae3edc92b8881c7"
|
|
731
|
+
dependencies = [
|
|
732
|
+
"cipher",
|
|
733
|
+
]
|
|
734
|
+
|
|
672
735
|
[[package]]
|
|
673
736
|
name = "either"
|
|
674
737
|
version = "1.16.0"
|
|
@@ -684,6 +747,15 @@ dependencies = [
|
|
|
684
747
|
"serde",
|
|
685
748
|
]
|
|
686
749
|
|
|
750
|
+
[[package]]
|
|
751
|
+
name = "encoding_rs"
|
|
752
|
+
version = "0.8.35"
|
|
753
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
754
|
+
checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3"
|
|
755
|
+
dependencies = [
|
|
756
|
+
"cfg-if",
|
|
757
|
+
]
|
|
758
|
+
|
|
687
759
|
[[package]]
|
|
688
760
|
name = "equivalent"
|
|
689
761
|
version = "1.0.2"
|
|
@@ -700,6 +772,15 @@ dependencies = [
|
|
|
700
772
|
"windows-sys 0.61.2",
|
|
701
773
|
]
|
|
702
774
|
|
|
775
|
+
[[package]]
|
|
776
|
+
name = "euclid"
|
|
777
|
+
version = "0.20.14"
|
|
778
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
779
|
+
checksum = "2bb7ef65b3777a325d1eeefefab5b6d4959da54747e33bd6258e789640f307ad"
|
|
780
|
+
dependencies = [
|
|
781
|
+
"num-traits",
|
|
782
|
+
]
|
|
783
|
+
|
|
703
784
|
[[package]]
|
|
704
785
|
name = "fallible-iterator"
|
|
705
786
|
version = "0.2.0"
|
|
@@ -760,7 +841,7 @@ dependencies = [
|
|
|
760
841
|
|
|
761
842
|
[[package]]
|
|
762
843
|
name = "flowproof-adapters"
|
|
763
|
-
version = "0.
|
|
844
|
+
version = "0.17.0"
|
|
764
845
|
dependencies = [
|
|
765
846
|
"anyhow",
|
|
766
847
|
"flowproof-driver",
|
|
@@ -779,11 +860,12 @@ dependencies = [
|
|
|
779
860
|
|
|
780
861
|
[[package]]
|
|
781
862
|
name = "flowproof-agent"
|
|
782
|
-
version = "0.
|
|
863
|
+
version = "0.17.0"
|
|
783
864
|
dependencies = [
|
|
784
865
|
"chrono",
|
|
785
866
|
"flowproof-driver",
|
|
786
867
|
"flowproof-trace",
|
|
868
|
+
"pdf-extract",
|
|
787
869
|
"regex",
|
|
788
870
|
"serde",
|
|
789
871
|
"serde_json",
|
|
@@ -796,7 +878,7 @@ dependencies = [
|
|
|
796
878
|
|
|
797
879
|
[[package]]
|
|
798
880
|
name = "flowproof-cli"
|
|
799
|
-
version = "0.
|
|
881
|
+
version = "0.17.0"
|
|
800
882
|
dependencies = [
|
|
801
883
|
"ab_glyph",
|
|
802
884
|
"chrono",
|
|
@@ -817,7 +899,7 @@ dependencies = [
|
|
|
817
899
|
|
|
818
900
|
[[package]]
|
|
819
901
|
name = "flowproof-driver"
|
|
820
|
-
version = "0.
|
|
902
|
+
version = "0.17.0"
|
|
821
903
|
dependencies = [
|
|
822
904
|
"image",
|
|
823
905
|
"postgres",
|
|
@@ -831,7 +913,7 @@ dependencies = [
|
|
|
831
913
|
|
|
832
914
|
[[package]]
|
|
833
915
|
name = "flowproof-python"
|
|
834
|
-
version = "0.
|
|
916
|
+
version = "0.17.0"
|
|
835
917
|
dependencies = [
|
|
836
918
|
"flowproof-agent",
|
|
837
919
|
"flowproof-cli",
|
|
@@ -843,7 +925,7 @@ dependencies = [
|
|
|
843
925
|
|
|
844
926
|
[[package]]
|
|
845
927
|
name = "flowproof-replay"
|
|
846
|
-
version = "0.
|
|
928
|
+
version = "0.17.0"
|
|
847
929
|
dependencies = [
|
|
848
930
|
"chrono",
|
|
849
931
|
"flowproof-agent",
|
|
@@ -857,7 +939,7 @@ dependencies = [
|
|
|
857
939
|
|
|
858
940
|
[[package]]
|
|
859
941
|
name = "flowproof-trace"
|
|
860
|
-
version = "0.
|
|
942
|
+
version = "0.17.0"
|
|
861
943
|
dependencies = [
|
|
862
944
|
"jsonschema",
|
|
863
945
|
"regex",
|
|
@@ -985,9 +1067,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
985
1067
|
checksum = "300e883d756b2e4ec94e02791f39b04b522276138852cfc41d9fb7e904106099"
|
|
986
1068
|
dependencies = [
|
|
987
1069
|
"cfg-if",
|
|
1070
|
+
"js-sys",
|
|
988
1071
|
"libc",
|
|
989
1072
|
"r-efi 6.0.0",
|
|
990
1073
|
"rand_core 0.10.1",
|
|
1074
|
+
"wasm-bindgen",
|
|
991
1075
|
]
|
|
992
1076
|
|
|
993
1077
|
[[package]]
|
|
@@ -1009,8 +1093,7 @@ checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a"
|
|
|
1009
1093
|
[[package]]
|
|
1010
1094
|
name = "headless_chrome"
|
|
1011
1095
|
version = "1.0.22"
|
|
1012
|
-
source = "
|
|
1013
|
-
checksum = "5754ca220578ad74a5d5174c8ca2ff956fd3b94025f870844de1e910b47dfee5"
|
|
1096
|
+
source = "git+https://github.com/automators-com/flowproof?rev=eed7bc1873f6f2beac147d66f0df7a946329e6fe#eed7bc1873f6f2beac147d66f0df7a946329e6fe"
|
|
1014
1097
|
dependencies = [
|
|
1015
1098
|
"anyhow",
|
|
1016
1099
|
"auto_generate_cdp",
|
|
@@ -1257,12 +1340,13 @@ dependencies = [
|
|
|
1257
1340
|
]
|
|
1258
1341
|
|
|
1259
1342
|
[[package]]
|
|
1260
|
-
name = "
|
|
1261
|
-
version = "
|
|
1343
|
+
name = "inout"
|
|
1344
|
+
version = "0.1.4"
|
|
1262
1345
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1263
|
-
checksum = "
|
|
1346
|
+
checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01"
|
|
1264
1347
|
dependencies = [
|
|
1265
|
-
"
|
|
1348
|
+
"block-padding",
|
|
1349
|
+
"generic-array",
|
|
1266
1350
|
]
|
|
1267
1351
|
|
|
1268
1352
|
[[package]]
|
|
@@ -1427,6 +1511,33 @@ version = "0.4.33"
|
|
|
1427
1511
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1428
1512
|
checksum = "0ceec5bc11778974d1bcb055b18002eba7f4b3518b6a0081b3af5f21666da9ad"
|
|
1429
1513
|
|
|
1514
|
+
[[package]]
|
|
1515
|
+
name = "lopdf"
|
|
1516
|
+
version = "0.42.0"
|
|
1517
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1518
|
+
checksum = "25aab26d99567469098e64a02f42679f8965c6401263eefa31d8f2dcc37a221c"
|
|
1519
|
+
dependencies = [
|
|
1520
|
+
"aes",
|
|
1521
|
+
"bitflags 2.13.1",
|
|
1522
|
+
"cbc",
|
|
1523
|
+
"ecb",
|
|
1524
|
+
"encoding_rs",
|
|
1525
|
+
"flate2",
|
|
1526
|
+
"getrandom 0.4.3",
|
|
1527
|
+
"indexmap",
|
|
1528
|
+
"itoa",
|
|
1529
|
+
"log",
|
|
1530
|
+
"md-5 0.10.6",
|
|
1531
|
+
"nom",
|
|
1532
|
+
"rand 0.10.2",
|
|
1533
|
+
"rangemap",
|
|
1534
|
+
"sha2 0.10.9",
|
|
1535
|
+
"stringprep",
|
|
1536
|
+
"thiserror 2.0.18",
|
|
1537
|
+
"ttf-parser",
|
|
1538
|
+
"weezl",
|
|
1539
|
+
]
|
|
1540
|
+
|
|
1430
1541
|
[[package]]
|
|
1431
1542
|
name = "matrixmultiply"
|
|
1432
1543
|
version = "0.3.11"
|
|
@@ -1437,6 +1548,16 @@ dependencies = [
|
|
|
1437
1548
|
"rawpointer",
|
|
1438
1549
|
]
|
|
1439
1550
|
|
|
1551
|
+
[[package]]
|
|
1552
|
+
name = "md-5"
|
|
1553
|
+
version = "0.10.6"
|
|
1554
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1555
|
+
checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf"
|
|
1556
|
+
dependencies = [
|
|
1557
|
+
"cfg-if",
|
|
1558
|
+
"digest 0.10.7",
|
|
1559
|
+
]
|
|
1560
|
+
|
|
1440
1561
|
[[package]]
|
|
1441
1562
|
name = "md-5"
|
|
1442
1563
|
version = "0.11.0"
|
|
@@ -1453,15 +1574,6 @@ version = "2.8.3"
|
|
|
1453
1574
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1454
1575
|
checksum = "cf8baf1c55e62ffcace7a9f06f4bd9cd3f0c4beb022d3b367256b91b87513d98"
|
|
1455
1576
|
|
|
1456
|
-
[[package]]
|
|
1457
|
-
name = "memoffset"
|
|
1458
|
-
version = "0.9.1"
|
|
1459
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1460
|
-
checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
|
|
1461
|
-
dependencies = [
|
|
1462
|
-
"autocfg",
|
|
1463
|
-
]
|
|
1464
|
-
|
|
1465
1577
|
[[package]]
|
|
1466
1578
|
name = "miniz_oxide"
|
|
1467
1579
|
version = "0.8.9"
|
|
@@ -1520,6 +1632,15 @@ dependencies = [
|
|
|
1520
1632
|
"libc",
|
|
1521
1633
|
]
|
|
1522
1634
|
|
|
1635
|
+
[[package]]
|
|
1636
|
+
name = "nom"
|
|
1637
|
+
version = "8.0.0"
|
|
1638
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1639
|
+
checksum = "df9761775871bdef83bee530e60050f7e54b1105350d6884eb0fb4f46c2f9405"
|
|
1640
|
+
dependencies = [
|
|
1641
|
+
"memchr",
|
|
1642
|
+
]
|
|
1643
|
+
|
|
1523
1644
|
[[package]]
|
|
1524
1645
|
name = "num"
|
|
1525
1646
|
version = "0.4.3"
|
|
@@ -1725,6 +1846,23 @@ version = "1.0.15"
|
|
|
1725
1846
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1726
1847
|
checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a"
|
|
1727
1848
|
|
|
1849
|
+
[[package]]
|
|
1850
|
+
name = "pdf-extract"
|
|
1851
|
+
version = "0.12.0"
|
|
1852
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1853
|
+
checksum = "417e8fdc940f1d5bc62c5f89864c3a2255f74f69aa353c98509213d67df61e73"
|
|
1854
|
+
dependencies = [
|
|
1855
|
+
"adobe-cmap-parser",
|
|
1856
|
+
"cff-parser",
|
|
1857
|
+
"encoding_rs",
|
|
1858
|
+
"euclid",
|
|
1859
|
+
"log",
|
|
1860
|
+
"lopdf",
|
|
1861
|
+
"postscript",
|
|
1862
|
+
"type1-encoding-parser",
|
|
1863
|
+
"unicode-normalization",
|
|
1864
|
+
]
|
|
1865
|
+
|
|
1728
1866
|
[[package]]
|
|
1729
1867
|
name = "percent-encoding"
|
|
1730
1868
|
version = "2.3.2"
|
|
@@ -1769,6 +1907,12 @@ dependencies = [
|
|
|
1769
1907
|
"miniz_oxide",
|
|
1770
1908
|
]
|
|
1771
1909
|
|
|
1910
|
+
[[package]]
|
|
1911
|
+
name = "pom"
|
|
1912
|
+
version = "1.1.0"
|
|
1913
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1914
|
+
checksum = "60f6ce597ecdcc9a098e7fddacb1065093a3d66446fa16c675e7e71d1b5c28e6"
|
|
1915
|
+
|
|
1772
1916
|
[[package]]
|
|
1773
1917
|
name = "portable-atomic"
|
|
1774
1918
|
version = "1.14.0"
|
|
@@ -1800,10 +1944,10 @@ dependencies = [
|
|
|
1800
1944
|
"bytes",
|
|
1801
1945
|
"fallible-iterator",
|
|
1802
1946
|
"hmac",
|
|
1803
|
-
"md-5",
|
|
1947
|
+
"md-5 0.11.0",
|
|
1804
1948
|
"memchr",
|
|
1805
1949
|
"rand 0.10.2",
|
|
1806
|
-
"sha2",
|
|
1950
|
+
"sha2 0.11.0",
|
|
1807
1951
|
"stringprep",
|
|
1808
1952
|
]
|
|
1809
1953
|
|
|
@@ -1818,6 +1962,12 @@ dependencies = [
|
|
|
1818
1962
|
"postgres-protocol",
|
|
1819
1963
|
]
|
|
1820
1964
|
|
|
1965
|
+
[[package]]
|
|
1966
|
+
name = "postscript"
|
|
1967
|
+
version = "0.14.1"
|
|
1968
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1969
|
+
checksum = "78451badbdaebaf17f053fd9152b3ffb33b516104eacb45e7864aaa9c712f306"
|
|
1970
|
+
|
|
1821
1971
|
[[package]]
|
|
1822
1972
|
name = "potential_utf"
|
|
1823
1973
|
version = "0.1.5"
|
|
@@ -1859,35 +2009,32 @@ checksum = "d55d956fa96f5ec02be2e13af0e20391a5aa83d6a074e3ad368959d0fab299ea"
|
|
|
1859
2009
|
|
|
1860
2010
|
[[package]]
|
|
1861
2011
|
name = "pyo3"
|
|
1862
|
-
version = "0.
|
|
2012
|
+
version = "0.29.2"
|
|
1863
2013
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1864
|
-
checksum = "
|
|
2014
|
+
checksum = "4688ddedf473e32662b9b067670129a8afb8c18e351482c70d62ba4a88171e8b"
|
|
1865
2015
|
dependencies = [
|
|
1866
|
-
"indoc",
|
|
1867
2016
|
"libc",
|
|
1868
|
-
"memoffset",
|
|
1869
2017
|
"once_cell",
|
|
1870
2018
|
"portable-atomic",
|
|
1871
2019
|
"pyo3-build-config",
|
|
1872
2020
|
"pyo3-ffi",
|
|
1873
2021
|
"pyo3-macros",
|
|
1874
|
-
"unindent",
|
|
1875
2022
|
]
|
|
1876
2023
|
|
|
1877
2024
|
[[package]]
|
|
1878
2025
|
name = "pyo3-build-config"
|
|
1879
|
-
version = "0.
|
|
2026
|
+
version = "0.29.2"
|
|
1880
2027
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1881
|
-
checksum = "
|
|
2028
|
+
checksum = "f41027e41b4bd03f6e60f9f417fe24a6341a6bb744edd62b6f709f2a52ea30e9"
|
|
1882
2029
|
dependencies = [
|
|
1883
2030
|
"target-lexicon",
|
|
1884
2031
|
]
|
|
1885
2032
|
|
|
1886
2033
|
[[package]]
|
|
1887
2034
|
name = "pyo3-ffi"
|
|
1888
|
-
version = "0.
|
|
2035
|
+
version = "0.29.2"
|
|
1889
2036
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1890
|
-
checksum = "
|
|
2037
|
+
checksum = "e591a95526fead067432c3b3a33fc74770b87b1e04e73671090d9c2055a2b327"
|
|
1891
2038
|
dependencies = [
|
|
1892
2039
|
"libc",
|
|
1893
2040
|
"pyo3-build-config",
|
|
@@ -1895,9 +2042,9 @@ dependencies = [
|
|
|
1895
2042
|
|
|
1896
2043
|
[[package]]
|
|
1897
2044
|
name = "pyo3-macros"
|
|
1898
|
-
version = "0.
|
|
2045
|
+
version = "0.29.2"
|
|
1899
2046
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1900
|
-
checksum = "
|
|
2047
|
+
checksum = "73225868fc1cd84eef2c3c230ddb91273bf1de46aeb8a4248da76d32a0924a1c"
|
|
1901
2048
|
dependencies = [
|
|
1902
2049
|
"proc-macro2",
|
|
1903
2050
|
"pyo3-macros-backend",
|
|
@@ -1907,13 +2054,12 @@ dependencies = [
|
|
|
1907
2054
|
|
|
1908
2055
|
[[package]]
|
|
1909
2056
|
name = "pyo3-macros-backend"
|
|
1910
|
-
version = "0.
|
|
2057
|
+
version = "0.29.2"
|
|
1911
2058
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1912
|
-
checksum = "
|
|
2059
|
+
checksum = "571575aa3749fa6216757dd47d2a3e7ef360f329a40f0666a9fbd14889024952"
|
|
1913
2060
|
dependencies = [
|
|
1914
2061
|
"heck",
|
|
1915
2062
|
"proc-macro2",
|
|
1916
|
-
"pyo3-build-config",
|
|
1917
2063
|
"quote",
|
|
1918
2064
|
"syn 2.0.119",
|
|
1919
2065
|
]
|
|
@@ -2025,6 +2171,12 @@ dependencies = [
|
|
|
2025
2171
|
"rand 0.8.7",
|
|
2026
2172
|
]
|
|
2027
2173
|
|
|
2174
|
+
[[package]]
|
|
2175
|
+
name = "rangemap"
|
|
2176
|
+
version = "1.7.1"
|
|
2177
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2178
|
+
checksum = "973443cf09a9c8656b574a866ab68dfa19f0867d0340648c7d2f6a71b8a8ea68"
|
|
2179
|
+
|
|
2028
2180
|
[[package]]
|
|
2029
2181
|
name = "rawpointer"
|
|
2030
2182
|
version = "0.2.1"
|
|
@@ -2487,6 +2639,17 @@ dependencies = [
|
|
|
2487
2639
|
"digest 0.10.7",
|
|
2488
2640
|
]
|
|
2489
2641
|
|
|
2642
|
+
[[package]]
|
|
2643
|
+
name = "sha2"
|
|
2644
|
+
version = "0.10.9"
|
|
2645
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2646
|
+
checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283"
|
|
2647
|
+
dependencies = [
|
|
2648
|
+
"cfg-if",
|
|
2649
|
+
"cpufeatures 0.2.17",
|
|
2650
|
+
"digest 0.10.7",
|
|
2651
|
+
]
|
|
2652
|
+
|
|
2490
2653
|
[[package]]
|
|
2491
2654
|
name = "sha2"
|
|
2492
2655
|
version = "0.11.0"
|
|
@@ -2825,6 +2988,15 @@ dependencies = [
|
|
|
2825
2988
|
"thiserror 2.0.18",
|
|
2826
2989
|
]
|
|
2827
2990
|
|
|
2991
|
+
[[package]]
|
|
2992
|
+
name = "type1-encoding-parser"
|
|
2993
|
+
version = "0.1.1"
|
|
2994
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2995
|
+
checksum = "fa10c302f5a53b7ad27fd42a3996e23d096ba39b5b8dd6d9e683a05b01bee749"
|
|
2996
|
+
dependencies = [
|
|
2997
|
+
"pom",
|
|
2998
|
+
]
|
|
2999
|
+
|
|
2828
3000
|
[[package]]
|
|
2829
3001
|
name = "typeid"
|
|
2830
3002
|
version = "1.0.3"
|
|
@@ -2893,12 +3065,6 @@ version = "1.13.3"
|
|
|
2893
3065
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2894
3066
|
checksum = "c6f5d3c3b1bf09027a88a6bc961fc00497d651009560b5463668dc81b0fa87a8"
|
|
2895
3067
|
|
|
2896
|
-
[[package]]
|
|
2897
|
-
name = "unindent"
|
|
2898
|
-
version = "0.2.4"
|
|
2899
|
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2900
|
-
checksum = "7264e107f553ccae879d21fbea1d6724ac785e8c3bfc762137959b5802826ef3"
|
|
2901
|
-
|
|
2902
3068
|
[[package]]
|
|
2903
3069
|
name = "unsafe-libyaml"
|
|
2904
3070
|
version = "0.2.11"
|
|
@@ -22,7 +22,7 @@ members = ["crates/flowproof-driver", "crates/flowproof-trace", "crates/flowproo
|
|
|
22
22
|
exclude = ["spike/windows-containment"]
|
|
23
23
|
|
|
24
24
|
[workspace.package]
|
|
25
|
-
version = "0.
|
|
25
|
+
version = "0.17.0"
|
|
26
26
|
edition = "2021"
|
|
27
27
|
license = "Apache-2.0"
|
|
28
28
|
repository = "https://github.com/automators-com/flowproof"
|
|
@@ -40,6 +40,7 @@ flowproof-cli = { path = "crates/flowproof-cli" }
|
|
|
40
40
|
anyhow = "1"
|
|
41
41
|
chrono = { version = "0.4", default-features = false, features = ["clock"] }
|
|
42
42
|
clap = { version = "4", features = ["derive"] }
|
|
43
|
+
pdf-extract = "0.12"
|
|
43
44
|
serde = { version = "1", features = ["derive"] }
|
|
44
45
|
regex = "1"
|
|
45
46
|
serde_json = "1"
|
|
@@ -52,3 +53,15 @@ unwrap_used = "warn"
|
|
|
52
53
|
|
|
53
54
|
[profile.release]
|
|
54
55
|
lto = "thin"
|
|
56
|
+
|
|
57
|
+
# The published headless_chrome transport costs a CDP send up to 100ms waiting
|
|
58
|
+
# for the socket mutex the reader thread holds, which made typing a character
|
|
59
|
+
# cost 213ms (see docs/authoring.md). This pins a patched 1.0.22: the reader's
|
|
60
|
+
# read timeout drops to 1ms and responses are awaited by blocking on the channel
|
|
61
|
+
# rather than polling it. A git patch is viable because nothing in this
|
|
62
|
+
# workspace goes to crates.io — publish.yml builds the wheel and the npm package
|
|
63
|
+
# from here. The rev lives on an orphan branch of this repository, carries no
|
|
64
|
+
# flowproof code, and is not built by CI. Drop all of this once the upstream fix
|
|
65
|
+
# lands; the real fix is splitting the transport's read and write halves.
|
|
66
|
+
[patch.crates-io]
|
|
67
|
+
headless_chrome = { git = "https://github.com/automators-com/flowproof", rev = "eed7bc1873f6f2beac147d66f0df7a946329e6fe" }
|
|
@@ -1465,6 +1465,12 @@ fn notif_id_valid(fd: RawFd, id: u64) -> bool {
|
|
|
1465
1465
|
}
|
|
1466
1466
|
|
|
1467
1467
|
/// Extract `(msg_name, msg_namelen, msg_controllen)` from a raw msghdr copy.
|
|
1468
|
+
// `msg_controllen` is not the same type on every Linux target: `size_t` under
|
|
1469
|
+
// glibc, `socklen_t` under uclibc/arm and l4re. Clippy only ever sees the
|
|
1470
|
+
// target it is running on, so on x86_64-gnu it calls the cast redundant. It is
|
|
1471
|
+
// load-bearing everywhere else - libc writes the same `as usize` in its own
|
|
1472
|
+
// portable CMSG helpers. Removing it breaks those targets.
|
|
1473
|
+
#[allow(clippy::unnecessary_cast)]
|
|
1468
1474
|
fn msghdr_fields(hdr: &[u8]) -> (u64, u32, usize) {
|
|
1469
1475
|
let msg: libc::msghdr =
|
|
1470
1476
|
unsafe { std::ptr::read_unaligned(hdr.as_ptr() as *const libc::msghdr) };
|
|
@@ -1476,6 +1482,9 @@ fn msghdr_fields(hdr: &[u8]) -> (u64, u32, usize) {
|
|
|
1476
1482
|
}
|
|
1477
1483
|
|
|
1478
1484
|
/// Extract `(msg_iov ptr, msg_iovlen)` from a raw msghdr copy.
|
|
1485
|
+
// Same story as `msghdr_fields`: `msg_iovlen` is `size_t` under glibc and
|
|
1486
|
+
// `c_int` under uclibc/arm, uclibc/mips32, l4re and emscripten.
|
|
1487
|
+
#[allow(clippy::unnecessary_cast)]
|
|
1479
1488
|
fn msghdr_iov(hdr: &[u8]) -> (u64, usize) {
|
|
1480
1489
|
let msg: libc::msghdr =
|
|
1481
1490
|
unsafe { std::ptr::read_unaligned(hdr.as_ptr() as *const libc::msghdr) };
|