}
}
-static bool reject_cb(meshlink_handle_t *mesh, meshlink_channel_t *channel, uint16_t port, const void *data, size_t len) {
- (void)mesh;
- (void)channel;
- (void)port;
- (void)data;
- (void)len;
-
- return false;
-}
-
static bool accept_cb(meshlink_handle_t *mesh, meshlink_channel_t *channel, uint16_t port, const void *data, size_t len) {
if(port != 7) {
return false;
meshlink_set_log_cb(NULL, MESHLINK_DEBUG, log_cb);
assert(meshlink_destroy("channels_fork_conf.1"));
- meshlink_handle_t *mesh = meshlink_open("channels_fork_conf.1", "foo", "channels", DEV_CLASS_BACKBONE);
+ meshlink_handle_t *mesh = meshlink_open("channels_fork_conf.1", "foo", "channels-fork", DEV_CLASS_BACKBONE);
assert(mesh);
meshlink_enable_discovery(mesh, false);
assert(meshlink_import(mesh, indata));
- meshlink_set_channel_accept_cb(mesh, reject_cb);
-
assert(meshlink_start(mesh));
// Open a channel from foo to bar.
meshlink_set_log_cb(NULL, MESHLINK_DEBUG, log_cb);
assert(meshlink_destroy("channels_fork_conf.2"));
- meshlink_handle_t *mesh = meshlink_open("channels_fork_conf.2", "bar", "channels", DEV_CLASS_BACKBONE);
+ meshlink_handle_t *mesh = meshlink_open("channels_fork_conf.2", "bar", "channels-fork", DEV_CLASS_BACKBONE);
assert(mesh);
meshlink_enable_discovery(mesh, false);
assert(0);
}
-int main() {
+int main(void) {
+ init_sync_flag(&bar_responded);
+ init_sync_flag(&foo_connected);
+ init_sync_flag(&foo_gone);
+
int fda[2], fdb[2];
- assert(pipe2(fda, 0) != -1);
- assert(pipe2(fdb, 0) != -1);
+ assert(pipe(fda) != -1);
+ assert(pipe(fdb) != -1);
if(!fork()) {
return main2(fdb[0], fda[1]);