From: Vignesh Viswanathan Date: Fri, 14 Jul 2023 05:58:46 +0000 (+0530) Subject: net: qrtr: Handle IPCR control port format of older targets X-Git-Tag: v6.6.17~4098^2~391^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=69940b888e3502868efd1acf3719fd1af810c123;p=platform%2Fkernel%2Flinux-rpi.git net: qrtr: Handle IPCR control port format of older targets The destination port value in the IPCR control buffer on older targets is 0xFFFF. Handle the same by updating the dst_port to QRTR_PORT_CTRL. Signed-off-by: Vignesh Viswanathan Reviewed-by: Simon Horman Signed-off-by: David S. Miller --- diff --git a/net/qrtr/af_qrtr.c b/net/qrtr/af_qrtr.c index 78beb74..41ece61 100644 --- a/net/qrtr/af_qrtr.c +++ b/net/qrtr/af_qrtr.c @@ -23,6 +23,8 @@ #define QRTR_EPH_PORT_RANGE \ XA_LIMIT(QRTR_MIN_EPH_SOCKET, QRTR_MAX_EPH_SOCKET) +#define QRTR_PORT_CTRL_LEGACY 0xffff + /** * struct qrtr_hdr_v1 - (I|R)PCrouter packet header version 1 * @version: protocol version @@ -495,6 +497,9 @@ int qrtr_endpoint_post(struct qrtr_endpoint *ep, const void *data, size_t len) goto err; } + if (cb->dst_port == QRTR_PORT_CTRL_LEGACY) + cb->dst_port = QRTR_PORT_CTRL; + if (!size || len != ALIGN(size, 4) + hdrlen) goto err;