Skip to content

Commit a63a64a

Browse files
committed
fastrpc: hexagonrpcd: listener: switch to interp3
For a proper transition to version 3 of the method definitions, switch the reverse tunnel to version 3.
1 parent 2e5f6e5 commit a63a64a

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

hexagonrpcd/listener.c

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
#include <libhexagonrpc/fastrpc.h>
2525
#include <libhexagonrpc/interfaces/remotectl.def>
2626
#include <stddef.h>
27+
#include <stdint.h>
2728
#include <stdio.h>
2829

2930
#include "interfaces/adsp_listener.def"
@@ -220,6 +221,13 @@ static int invoke_requested_procedure(size_t n_ifaces,
220221
uint32_t method = REMOTE_SCALARS_METHOD(sc);
221222
int ret;
222223

224+
if (method < 31)
225+
method = REMOTE_SCALARS_METHOD(sc);
226+
else if (decoded[0].s >= sizeof(uint32_t))
227+
method = *(const uint32_t *) decoded[0].p;
228+
else
229+
method = UINT32_MAX;
230+
223231
if (sc & 0xff) {
224232
fprintf(stderr, "Handles are not supported, but got %u in, %u out\n",
225233
(sc & 0xf0) >> 4, sc & 0xf);

0 commit comments

Comments
 (0)