]> git.tuebingen.mpg.de Git - paraslash.git/blobdiff - dccp_recv.c
task_register() conversion: vss task
[paraslash.git] / dccp_recv.c
index 73d9999d0408617099086e7b25248af5277839db..1c41fd3c0d0d9d09b745bbd48fdabc181c74fec4 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2006-2013 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 2006-2014 Andre Noll <maan@systemlinux.org>
  *
  * Licensed under the GPL v2. For licencing details see COPYING.
  */
@@ -58,6 +58,7 @@ static int dccp_recv_open(struct receiver_node *rn)
        }
 
        fd = makesock(IPPROTO_DCCP, 0, conf->host_arg, conf->port_arg, fo);
+       flowopt_cleanup(fo);
        free(ccids);
        if (fd < 0)
                return fd;
@@ -120,9 +121,8 @@ static void *dccp_recv_parse_config(int argc, char **argv)
 
 static void dccp_recv_pre_select(struct sched *s, struct task *t)
 {
-       struct receiver_node *rn = container_of(t, struct receiver_node, task);
+       struct receiver_node *rn = task_context(t);
 
-       t->error = 0;
        if (generic_recv_pre_select(s, t) <= 0)
                return;
        para_fd_set(rn->fd, &s->rfds, &s->max_fileno);
@@ -130,7 +130,7 @@ static void dccp_recv_pre_select(struct sched *s, struct task *t)
 
 static int dccp_recv_post_select(struct sched *s, struct task *t)
 {
-       struct receiver_node *rn = container_of(t, struct receiver_node, task);
+       struct receiver_node *rn = task_context(t);
        struct btr_node *btrn = rn->btrn;
        struct iovec iov[2];
        int ret, iovcnt;