On 10/18/2024 11:18 AM, Denis Kenzior wrote:
These messages are explicitly filtered out by the in-kernel name
service (ns.c). Filter them out even earlier to save some CPU cycles.
Signed-off-by: Denis Kenzior <denkenz@xxxxxxxxx>
Reviewed-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>
Reviewed-by: Andy Gross <agross@xxxxxxxxxx>
---
net/qrtr/af_qrtr.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/net/qrtr/af_qrtr.c b/net/qrtr/af_qrtr.c
index b2f9c25ba8f8..95c9679725ee 100644
--- a/net/qrtr/af_qrtr.c
+++ b/net/qrtr/af_qrtr.c
@@ -560,6 +560,11 @@ int qrtr_endpoint_post(struct qrtr_endpoint *ep, const void *data, size_t len)
if (!size || len != ALIGN(size, 4) + hdrlen)
goto err;
+ /* Don't allow remote lookups */
+ if (cb->type == QRTR_TYPE_NEW_LOOKUP ||
+ cb->type == QRTR_TYPE_DEL_LOOKUP)
+ goto err;
+
Just curious, was this case observed? I thought we blocked clients from
sending this control message to remotes and I didnt think the ns
broadcasts it either.
if ((cb->type == QRTR_TYPE_NEW_SERVER ||
cb->type == QRTR_TYPE_RESUME_TX) &&
size < sizeof(struct qrtr_ctrl_pkt))