templates: add _get_buf() in seL4MultisharedData

Adds a function to retrieve the generated dataport on the -from side of
the template. Mirrors the _buf(seL4_Word client_id) function on the -to
template side.
The function could not be named _buf() as this lead to a symbol clash
with shmem_name.

Signed-off-by: Thomas Wittal <thomas.wittal@hensoldt-cyber.de>
diff --git a/templates/seL4MultiSharedData-from.template.c b/templates/seL4MultiSharedData-from.template.c
index 45cf953..c08eb0c 100644
--- a/templates/seL4MultiSharedData-from.template.c
+++ b/templates/seL4MultiSharedData-from.template.c
@@ -37,8 +37,11 @@
 
 volatile void * /*? shmem_name ?*/ = (volatile void *) & /*? shmem_symbol ?*/;
 
-size_t /*? me.interface.name ?*/_get_size(void)
-{
+volatile void * /*? me.interface.name ?*/_get_buf(void) {
+    return /*? shmem_name ?*/;
+}
+
+size_t /*? me.interface.name ?*/_get_size(void) {
     return ROUND_UP_UNSAFE(/*? shmem_size ?*/, PAGE_SIZE_4K);
 }
 
diff --git a/templates/seL4MultiSharedData-from.template.h b/templates/seL4MultiSharedData-from.template.h
index 821218e..c3ef32a 100644
--- a/templates/seL4MultiSharedData-from.template.h
+++ b/templates/seL4MultiSharedData-from.template.h
@@ -8,4 +8,5 @@
 #include <sel4/sel4.h>
 
 /*# Declare all the function prototypes for this connector. #*/
+volatile void * /*? me.interface.name ?*/_get_buf(void);
 size_t /*? me.interface.name ?*/_get_size(void);