diff options
author | Vignesh Viswanathan <quic_viswanat@quicinc.com> | 2023-07-14 11:28:46 +0530 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2023-07-17 09:02:30 +0100 |
commit | 69940b888e3502868efd1acf3719fd1af810c123 (patch) | |
tree | f6cae4950bbaf6b92c9ec782e8260364755b7292 /net/qrtr/af_qrtr.c | |
parent | f26b32ef2fe6f7ae0ba56854e666339e105610ad (diff) |
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 <quic_viswanat@quicinc.com>
Reviewed-by: Simon Horman <simon.horman@corigine.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/qrtr/af_qrtr.c')
-rw-r--r-- | net/qrtr/af_qrtr.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/net/qrtr/af_qrtr.c b/net/qrtr/af_qrtr.c index 78beb74146e7..41ece61eb57a 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; |