]> git.meshlink.io Git - meshlink/blobdiff - src/meta.c
Improve support for submeshes.
[meshlink] / src / meta.c
index aa3499e95b8f1b3a059fc820b0a2fa885acc0873..d293b2ee2c8c75d626953c09d63f51276fe48961 100644 (file)
@@ -68,6 +68,16 @@ void broadcast_meta(meshlink_handle_t *mesh, connection_t *from, const char *buf
                }
 }
 
+void broadcast_submesh_meta(meshlink_handle_t *mesh, connection_t *from, submesh_t *s,
+                            const char *buffer, int length) {
+       for list_each(connection_t, c, mesh->connections)
+               if(c != from && c->status.active) {
+                       if(c->node && submesh_allows_node(s, c->node)) {
+                               send_meta(mesh, c, buffer, length);
+                       }
+               }
+}
+
 bool receive_meta_sptps(void *handle, uint8_t type, const void *data, uint16_t length) {
        connection_t *c = handle;
        meshlink_handle_t *mesh = c->mesh;