summaryrefslogtreecommitdiffstats
path: root/src/oss.c
blob: 42e60360b36e7489532fba8352328bd7f1810ef5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include "module.h"

struct userdata {
    struct sink *sink;
    struct source *source;
    int fd;
};

int module_init(struct core *c, struct module*m) {
    struct userdata *u;
    assert(c && m);

    u = malloc(sizeof(struct userdata));
    assert(u);
    memset(u, 0, sizeof(struct userdata));
    m->userdata = u;

    return 0;
}

void module_done(struct core *c, struct module*m) {
    struct userdata *u;
    assert(c && m);

    u = m->userdata;

    sink_free(u->sink);
    source_free(u->source);
    free(u);
}