Example #1
0
File: peer.c Project: bus1/libbus1
static void b1_peer_free(CRef *ref, void *userdata) {
        B1Peer *peer = userdata;

        assert(!c_rbtree_first(&peer->handles));
        assert(!c_rbtree_first(&peer->nodes));
        bus1_peer_free(peer->peer);
        free(peer);
}
Example #2
0
File: main.c Project: eworm-de/bus1
static int bus1_fop_release(struct inode *inode, struct file *file)
{
	struct bus1_peer *peer = file->private_data;

	bus1_peer_disconnect(peer);
	bus1_peer_free(peer);

	return 0;
}
Example #3
0
File: main.c Project: eworm-de/bus1
static int bus1_fop_open(struct inode *inode, struct file *file)
{
	struct bus1_peer *peer;
	int r;

	peer = bus1_peer_new();
	if (IS_ERR(peer))
		return PTR_ERR(peer);

	r = bus1_peer_connect(peer);
	if (r < 0) {
		bus1_peer_free(peer);
		return r;
	}

	file->private_data = peer;
	return 0;
}