Ejemplo n.º 1
0
Archivo: peer.c Proyecto: 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);
}
Ejemplo n.º 2
0
Archivo: main.c Proyecto: 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;
}
Ejemplo n.º 3
0
Archivo: main.c Proyecto: 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;
}