Commit graph

270 commits

Author SHA1 Message Date
Wim Taymans
17723bc00d avb: fix MAAP packet send
Actually send the ehaternet header data as well. The send was skipping
the ehternet header and reading past the packet end.
2026-05-04 10:21:41 +02:00
Wim Taymans
be6bfba8eb avb: check some allocation errors 2026-05-04 09:56:18 +02:00
Wim Taymans
32bb568225 avb: make sure to no blindly use the type as a command index 2026-05-04 09:55:35 +02:00
Wim Taymans
172f969650 avb: check packet sizes
Clamp packet len to the buffer size.

Reject packets with invalid data_len.
2026-05-04 09:53:33 +02:00
hackerman-kl
7a826b1580 milan-avb: gptp: track request timing on CLOCK_MONOTONIC 2026-05-03 10:26:16 +02:00
hackerman-kl
4da6e39281 milan-avb: gptp: handle MANAGEMENT_ERROR_STATUS TLV as stale-data signal 2026-05-03 10:26:16 +02:00
hackerman-kl
09b3f0dc34 milan-avb: gptp: invalidate cached state when ptp4l stops responding 2026-05-03 10:26:16 +02:00
hackerman-kl
97436efe1e milan-avb: cmd-get-as-path: build [gm,...,local] and emit unsolicited GET_AS_PATH 2026-05-03 10:26:16 +02:00
hackerman-kl
ff3367dc05 milan-avb: aecp-aem: emit unsolicited GET_AVB_INFO when gPTP changes 2026-05-03 10:26:16 +02:00
hackerman-kl
e02a4854de milan-avb: gptp: query PATH_TRACE_LIST and store Announce path trace 2026-05-03 10:26:16 +02:00
hackerman-kl
55bb0b6a6a milan-avb: gptp: query CURRENT_DATA_SET for canonical is_grandmaster check 2026-05-03 10:26:16 +02:00
hackerman-kl
c877ea4243 milan-avb: gptp: rate-limit management requests to 375 ms 2026-05-03 10:26:16 +02:00
hackerman-kl
fc08d2444a milan-avb: gptp: send PTP management with majorSdoId=1 for gPTP profile 2026-05-03 10:26:16 +02:00
hackerman-kl
1b81dbab85 milan-avb: adding the ptp4l command line information 2026-05-03 10:26:16 +02:00
hackerman-kl
4b44c15768 milan-avb; introducing gptp/as_path interface specific dirty flags 2026-05-03 10:26:16 +02:00
hackerman-kl
21dd14618c milan-avb: update banner 2026-05-03 10:26:16 +02:00
hackerman-kl
46f9c5130e milan-avb: cmd-get-as-path: build path from gptp data 2026-05-03 10:26:16 +02:00
hackerman-kl
9f019a061d milan-avb: aecp-aem: source GET_AVB_INFO grandmaster from gptp 2026-05-03 10:26:16 +02:00
hackerman-kl
e9a1e50996 milan-avb: adp: refresh grandmaster_id from gptp on each advertise 2026-05-03 10:26:16 +02:00
hackerman-kl
231b0950c5 milan-avb: descriptors: derive AVB_INTERFACE clock_identity from entity_id 2026-05-03 10:26:16 +02:00
hackerman-kl
3f63b51fcc milan-avb: gptp: rework management I/O as non-blocking with sequence-id matching 2026-05-03 10:26:16 +02:00
hackerman-kl
0da747fd44 milan-avb: gptp: do not fail server creation on missing PTP socket 2026-05-03 10:26:16 +02:00
hackerman-kl
0b09fb2b1e milan-avb: gptp: initialise ret in the drain loop 2026-05-03 10:26:16 +02:00
hackerman-kl
21c4c59587 milan-avb: gptp: use entity_id for management source port id 2026-05-03 10:26:16 +02:00
hackerman-kl
1e9f89b638 milan-avb: gptp: emit gm_changed only when the GM actually changes 2026-05-03 10:26:16 +02:00
hackerman-kl
f5389a4225 milan-avb: gptp: drop unused avb_gptp_destroy wrapper 2026-05-03 10:26:16 +02:00
hackerman-kl
8c9e5f1974 milan-avb: gptp: use PTP_DEFAULT_LOG_MESSAGE_INTERVAL macro 2026-05-03 10:26:16 +02:00
hackerman-kl
e83bbfacf1 milan-avb: gptp: drop %m from incomplete request/response warnings 2026-05-03 10:26:16 +02:00
hackerman-kl
d5e4f11be7 milan-avb: gptp: fix log message for SO_PASSCRED setsockopt failure 2026-05-03 10:26:16 +02:00
hackerman-kl
51a997294e milan-avb: gptp: drop unused struct fields 2026-05-03 10:26:16 +02:00
hackerman-kl
7f687cae77 milan-avb: gptp: drop unused includes 2026-05-03 10:26:16 +02:00
hackerman-kl
b197ae79c5 milan-avb: gptp: align code style with the rest of module-avb 2026-05-03 10:26:16 +02:00
Nils Tonnaett
0345623e97 module-avb: remove redundant init_descriptors() call 2026-05-03 10:26:16 +02:00
Nils Tonnaett
37efd5c5f9 module-avb: emit gm_changed event 2026-05-03 10:26:16 +02:00
Nils Tonnaett
5fd9c1eaff module-avb: fail if ptp management socket can't be created 2026-05-03 10:26:16 +02:00
Nils Tonnaett
bf6fae7df9 module-avb: fail if ptp.management-socket not set 2026-05-03 10:26:16 +02:00
Nils Tonnaett
f4c26cd3ed module-avb: check that ptp management request is complete 2026-05-03 10:26:16 +02:00
Nils Tonnaett
f360af0889 module-avb: check return value of read when clearing ptp_fd input buffer 2026-05-03 09:49:22 +02:00
Nils Tonnaett
c8f2edd94e module-avb: check ioctl for success 2026-05-03 09:49:22 +02:00
Nils Tonnaett
07533eb590 module-avb: check that PTP management response is complete 2026-05-03 09:49:22 +02:00
Nils Tonnaett
6c43bdfa85 module-avb: htobe16/be16toh to htons/ntohs 2026-05-03 09:49:22 +02:00
Nils Tonnaett
16189ae167 module-avb: add specs comments for PTP management message format 2026-05-03 09:49:22 +02:00
Nils Tonnaett
fc6f2e33e2 module-avb: close ptp_fd when destroyed 2026-05-03 09:49:22 +02:00
Nils Tonnaett
f752653814 module-avb: free gptp->ptp_mgmt_socket_path 2026-05-03 09:49:22 +02:00
Nils Tonnaett
54a9495715 module-avb: check ptp management socket periodically 2026-05-03 09:49:22 +02:00
Nils Tonnaett
4bc365cbb5 module-avb: add avb interface descriptor defines 2026-05-03 09:49:22 +02:00
Wim Taymans
96c3ada6f2 JSON: use the json builder instead of memstream and fprintf
Use the JSON builder to prepare arguments for modules and metadata
instead of custom memopen and fprintf. This makes it easier to ensure
the strings are all properly escaped.

This removes the use of spa_json_encode_string(), which could return a
truncated, non-zero terminated result, which we needed to check
everywhere.
2026-04-30 13:23:23 +02:00
hackerman-kl
74b6f237d1 milan-avb: mvu certification number Disclamer to avoid any confusion 2026-04-27 10:56:44 +00:00
hackerman-kl
30711940c4 milan-avb: aecp: route VENDOR_UNIQUE_COMMAND through msg_info table 2026-04-27 10:56:44 +00:00
hackerman-kl
a16f3d704e milan-avb: aecp-vendor-unique-milan-v12: dispatch via per-cmd table per Milan v1.2 Section 5.4.4 2026-04-27 10:56:44 +00:00