X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=dccp_send.c;h=15a361babfa8570f61d2b51c15e60c83a8bab009;hb=9055c71be97f1095dcdbd83da305b600f204f763;hp=5806bce3516c25ff600f31b073ba0760b40d4897;hpb=ad37397a4f7734394ef1f03b4b54a54226421a4e;p=paraslash.git diff --git a/dccp_send.c b/dccp_send.c index 5806bce3..15a361ba 100644 --- a/dccp_send.c +++ b/dccp_send.c @@ -24,8 +24,8 @@ #include "net.h" #include "server.h" #include "list.h" -#include "send.h" #include "sched.h" +#include "send.h" #include "vss.h" #include "fd.h" @@ -36,14 +36,13 @@ struct dccp_fec_client { struct fec_client *fc; }; -static void dccp_pre_select(int *max_fileno, fd_set *rfds, - __a_unused fd_set *wfds) +static void dccp_pre_monitor(struct sched *s) { unsigned n; FOR_EACH_LISTEN_FD(n, dss) if (dss->listen_fds[n] >= 0) - para_fd_set(dss->listen_fds[n], rfds, max_fileno); + sched_monitor_readfd(dss->listen_fds[n], s); } /** @@ -119,7 +118,7 @@ static void dccp_send_fec(struct sender_client *sc, char *buf, size_t len) dccp_shutdown_client(sc); } -static void dccp_post_select(__a_unused fd_set *rfds, __a_unused fd_set *wfds) +static void dccp_post_monitor(__a_unused struct sched *s) { struct sender_client *sc; struct dccp_fec_client *dfc; @@ -148,7 +147,7 @@ static void dccp_post_select(__a_unused fd_set *rfds, __a_unused fd_set *wfds) shutdown_client(sc, dss); return; } - dfc = para_calloc(sizeof(*dfc)); + dfc = zalloc(sizeof(*dfc)); sc->private_data = dfc; k = OPT_UINT32_VAL(DCCP_DATA_SLICES_PER_GROUP); n = OPT_UINT32_VAL(DCCP_SLICES_PER_GROUP); @@ -249,8 +248,8 @@ const struct sender dccp_sender = { .name = "dccp", .init = dccp_send_init, .shutdown = dccp_shutdown, - .pre_select = dccp_pre_select, - .post_select = dccp_post_select, + .pre_monitor = dccp_pre_monitor, + .post_monitor = dccp_post_monitor, .shutdown_clients = dccp_shutdown_clients, .client_cmds = { [SENDER_on] = dccp_com_on,