Commit 226c925
authored
docs: add deployment assumptions, security model, and build troubleshooting steps (#54)
* docs: add pip --break-system-packages and nasm troubleshooting steps
* docs: frame virtual-display packages as optional example, not a dependency
* docs: add deployment assumptions and security model
Document the dedicated-switch trust boundary raised in the SDLE review:
- New docs/assumptions.md covering the TX host / dedicated L2 switch /
receiver topology inside the locked cabinet, the deployment assumptions
the security model depends on, the security properties the toolkit does
not provide (security follows MTL and ST 2110, offloaded to physical and
L2 isolation), and the residual risk with mitigations.
- Link the new document from the README overview and from Security.md,
which now also states the in-scope and out-of-scope components.
* docs: pin MTL references to the merged commit id
Replace the ffmpeg-plugin-extra-pixel-format tag with commit
7bee24231c864d12da6db2c2ffbfd3986717af5a in the clone instructions and in
all MTL documentation links, so the build steps reference a fixed commit
rather than a movable tag.
Addresses PR review feedback.
* ci: pin MTL build to a commit id and extend daily libFuzzer run
- environment-check: rename the mtl-version input to mtl-commit and default
it to 7bee24231c864d12da6db2c2ffbfd3986717af5a, matching the commit the
README now documents. The env cache key picks up the new value
automatically, so runners rebuild instead of restoring a stale MTL.
- daily_build: raise the libFuzzer run from 300s to 7200s per sanitizer
mode and extend the job timeout to 300 minutes to cover both modes plus
the builds.
* ci: set libFuzzer timeout to 2.3h; docs: 12-bit and multi-NIC build notes
- daily_build: libFuzzer runs 3600s per sanitizer mode (~2h total) with a
138 minute job timeout.
- README: 12-bit pix_fmts require MTL and FFmpeg to both be built from the
pinned commit, since the plugin sources are compiled into libavdevice.
- README: drop the stale instruction to hand-patch mtl_common.h for
p2_port..p7_port; those AVOptions are present at the pinned commit, so
8 NICs work with the default FFmpeg TX path unpatched.
* ci: run daily AFL fuzzing for 2h and refresh the fuzz corpus
- afl-fuzz job: max-seconds 300 -> 7200 (single AFL run, so 2h total) and
timeout-minutes 25 -> 138 to leave headroom for install and build.
- Corpus seeds were written against an older schema: fps/fmt were placed in
the video object but the parser reads them from tx_video, so the tx_video
branch was never exercised. Moved them and added scale_width/scale_height.
- Added nic_index to interfaces[] and tx_sessions[].
- New seeds for parameters with no coverage: ptp_config.json (ptp enable/pi/
unicast booleans), screen_capture.json (input_mode/screen_input) and
multi_nic.json (multiple interfaces, 12-bit fmt, session-to-NIC mapping).
* fuzz: add corpus seeds for the remaining supported pixel formats
The corpus covered only 4 of the 7 fmt values accepted by validate_tx_config,
so the yuv444p10le, gbrp10le and yuv422p12le branches (and their AV_PIX_FMT
mappings) were never reached from a seed. Adds one seed per missing format;
the yuv422p12le seed also covers ptp.unicast=true and payload_type at its
upper bound (255).1 parent 60bfb92 commit 226c925
13 files changed
Lines changed: 288 additions & 33 deletions
File tree
- .github
- actions/environment-check
- workflows
- docs
- fuzz/corpus
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
14 | | - | |
15 | | - | |
| 14 | + | |
| 15 | + | |
16 | 16 | | |
17 | | - | |
| 17 | + | |
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
| |||
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
40 | | - | |
| 40 | + | |
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
| |||
165 | 165 | | |
166 | 166 | | |
167 | 167 | | |
168 | | - | |
| 168 | + | |
169 | 169 | | |
170 | 170 | | |
171 | 171 | | |
| |||
177 | 177 | | |
178 | 178 | | |
179 | 179 | | |
180 | | - | |
| 180 | + | |
181 | 181 | | |
182 | 182 | | |
183 | 183 | | |
| |||
195 | 195 | | |
196 | 196 | | |
197 | 197 | | |
198 | | - | |
| 198 | + | |
199 | 199 | | |
200 | 200 | | |
201 | 201 | | |
202 | 202 | | |
203 | 203 | | |
204 | 204 | | |
205 | 205 | | |
206 | | - | |
| 206 | + | |
207 | 207 | | |
208 | 208 | | |
209 | 209 | | |
210 | | - | |
| 210 | + | |
211 | 211 | | |
212 | 212 | | |
213 | 213 | | |
| |||
241 | 241 | | |
242 | 242 | | |
243 | 243 | | |
244 | | - | |
| 244 | + | |
245 | 245 | | |
246 | 246 | | |
247 | 247 | | |
| |||
347 | 347 | | |
348 | 348 | | |
349 | 349 | | |
350 | | - | |
| 350 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
79 | 79 | | |
80 | 80 | | |
81 | 81 | | |
82 | | - | |
| 82 | + | |
| 83 | + | |
83 | 84 | | |
84 | 85 | | |
85 | 86 | | |
| |||
94 | 95 | | |
95 | 96 | | |
96 | 97 | | |
97 | | - | |
| 98 | + | |
98 | 99 | | |
99 | 100 | | |
100 | 101 | | |
| |||
107 | 108 | | |
108 | 109 | | |
109 | 110 | | |
110 | | - | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
111 | 114 | | |
112 | 115 | | |
113 | 116 | | |
| |||
122 | 125 | | |
123 | 126 | | |
124 | 127 | | |
125 | | - | |
| 128 | + | |
126 | 129 | | |
127 | 130 | | |
128 | 131 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| 13 | + | |
13 | 14 | | |
14 | 15 | | |
15 | 16 | | |
| |||
56 | 57 | | |
57 | 58 | | |
58 | 59 | | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
59 | 75 | | |
60 | 76 | | |
61 | 77 | | |
| |||
82 | 98 | | |
83 | 99 | | |
84 | 100 | | |
85 | | - | |
| 101 | + | |
86 | 102 | | |
87 | | - | |
| 103 | + | |
88 | 104 | | |
89 | 105 | | |
90 | 106 | | |
91 | 107 | | |
92 | | - | |
| 108 | + | |
93 | 109 | | |
94 | 110 | | |
95 | 111 | | |
96 | | - | |
97 | | - | |
98 | | - | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
99 | 115 | | |
100 | 116 | | |
101 | 117 | | |
| |||
106 | 122 | | |
107 | 123 | | |
108 | 124 | | |
109 | | - | |
110 | | - | |
111 | | - | |
112 | | - | |
113 | | - | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
114 | 128 | | |
115 | 129 | | |
116 | 130 | | |
| |||
135 | 149 | | |
136 | 150 | | |
137 | 151 | | |
138 | | - | |
139 | | - | |
| 152 | + | |
| 153 | + | |
140 | 154 | | |
141 | 155 | | |
142 | 156 | | |
| |||
250 | 264 | | |
251 | 265 | | |
252 | 266 | | |
253 | | - | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
254 | 273 | | |
255 | 274 | | |
256 | 275 | | |
| |||
386 | 405 | | |
387 | 406 | | |
388 | 407 | | |
389 | | - | |
| 408 | + | |
390 | 409 | | |
391 | 410 | | |
392 | 411 | | |
| |||
680 | 699 | | |
681 | 700 | | |
682 | 701 | | |
| 702 | + | |
| 703 | + | |
| 704 | + | |
| 705 | + | |
| 706 | + | |
| 707 | + | |
| 708 | + | |
| 709 | + | |
| 710 | + | |
| 711 | + | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
683 | 715 | | |
684 | 716 | | |
685 | 717 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
4 | 21 | | |
5 | 22 | | |
6 | 23 | | |
0 commit comments