X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=send_common.c;h=ec7ab67108334c85085b46b84ada1db45eb91a82;hp=005583cf52bf425f67727df68600c1094a3c0ad8;hb=1e601d8798724089ceda0540f1892c6e68c5db82;hpb=ace5a88d69e5d41ce4959b43d278cc1c8db93706 diff --git a/send_common.c b/send_common.c index 005583cf..ec7ab671 100644 --- a/send_common.c +++ b/send_common.c @@ -1,14 +1,18 @@ /* - * Copyright (C) 2005-2010 Andre Noll + * Copyright (C) 2005 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ /** \file send_common.c Functions used by more than one paraslash sender. */ +#include +#include #include -#include #include +#include +#include +#include #include "para.h" #include "error.h" @@ -23,6 +27,7 @@ #include "send.h" #include "close_on_fork.h" #include "chunk_queue.h" +#include "sched.h" #include "vss.h" /** Clients will be kicked if there are more than that many bytes pending. */ @@ -113,7 +118,7 @@ int send_queued_chunks(int fd, struct chunk_queue *cq) int ret; cq_get(qc, &buf, &len); - ret = write_nonblock(fd, buf, len); + ret = xwrite(fd, buf, len); if (ret < 0) return ret; cq_update(cq, ret); @@ -154,7 +159,7 @@ void init_sender_status(struct sender_status *ss, char **access_arg, * * \return The string printed in the "si" command. */ -char *get_sender_info(struct sender_status *ss, const char *name) +char *generic_sender_status(struct sender_status *ss, const char *name) { char *clnts = NULL, *ret; struct sender_client *sc, *tmp_sc; @@ -166,14 +171,12 @@ char *get_sender_info(struct sender_status *ss, const char *name) clnts = tmp; } ret = make_message( - "%s sender:\n" - "\tstatus: %s\n" - "\tport: %s\n" - "\tnumber of connected clients: %d\n" - "\tmaximal number of clients: %d%s\n" - "\tconnected clients: %s\n" - "\taccess %s list: %s\n", - name, + "status: %s\n" + "port: %s\n" + "number of connected clients: %d\n" + "maximal number of clients: %d%s\n" + "connected clients: %s\n" + "access %s list: %s\n", (ss->listen_fd >= 0)? "on" : "off", stringify_port(ss->port, strcmp(name, "http") ? "dccp" : "tcp"), ss->num_clients, @@ -261,6 +264,7 @@ void generic_com_off(struct sender_status *ss) * Accept a connection on the socket this server is listening on. * * \param ss The sender whose listening fd is ready for reading. + * \param rfds Passed to para_accept(), * * This must be called only if the socket fd of \a ss is ready for reading. It * calls para_accept() to accept the connection and performs the following