X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=dccp_recv.c;h=639c93fcbf99bc93ddc054ad43d03f30811270ac;hp=faacd39f8fb0b4377f495a63d115ba5bd3de0336;hb=HEAD;hpb=b142089267ef501e438c3dc77ecf19bead3d4e58 diff --git a/dccp_recv.c b/dccp_recv.c index faacd39f..0b20bcc8 100644 --- a/dccp_recv.c +++ b/dccp_recv.c @@ -27,6 +27,10 @@ #include "net.h" #include "fd.h" +#ifndef DCCP_SOCKOPT_CCID +#define DCCP_SOCKOPT_CCID 13 /**< Sets both TX/RX CCID. */ +#endif + static void dccp_recv_close(struct receiver_node *rn) { if (rn->fd > 0) @@ -59,6 +63,9 @@ static int dccp_recv_ccid_support_check(const struct lls_parse_result *lpr) return 1; } +/** Flowopt shortcut */ +#define OPT_ADD(fo, lev, opt, val, len) flowopt_add(fo, lev, opt, #opt, val, len) + static int dccp_recv_open(struct receiver_node *rn) { struct lls_parse_result *lpr = rn->lpr; @@ -76,14 +83,14 @@ static int dccp_recv_open(struct receiver_node *rn) /* Copy CCID preference list (u8 array required) */ given = lls_opt_given(r_c); if (given) { - ccids = para_malloc(given); + ccids = alloc(given); fo = flowopt_new(); for (i = 0; i < given; i++) ccids[i] = lls_int32_val(i, r_c); OPT_ADD(fo, SOL_DCCP, DCCP_SOCKOPT_CCID, ccids, i); } - fd = makesock(IPPROTO_DCCP, 0, host, port, fo); + fd = makesock(IPPROTO_DCCP, false, host, port, fo); flowopt_cleanup(fo); free(ccids); if (fd < 0)