X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=stat.c;h=33fdb8c1d0fec0596482820f447fb57c3754b003;hp=9def50759cf22706860b9d0ddea4e488247a839b;hb=8a8cd0f5bb40dcfad68608193e8c57decd90b25e;hpb=a9d1487ed6ae4a6b2acd9fce91f238ef5d95c56c diff --git a/stat.c b/stat.c index 9def5075..33fdb8c1 100644 --- a/stat.c +++ b/stat.c @@ -31,25 +31,20 @@ #define MAX_STAT_CLIENTS 50 /** - * The structure associated with a connected client that sent the 'stat' command -* + * describes a status client of para_audiod + * + * There's one such structure per audiod client that sent the 'stat' command. * * A status client is identified by its file descriptor. para_audiod * keeps a list of connected status clients. */ struct stat_client { -/** - * - * - * the stat client's file descriptor - */ -int fd; -long unsigned item_mask; -/** - * - * its entry in the list of stat clients -*/ -struct list_head node; + /** the stat client's file descriptor */ + int fd; + /** bitmask of those status items the client is interested in */ + long unsigned item_mask; + /** its entry in the list of stat clients */ + struct list_head node; }; static struct list_head client_list; @@ -129,7 +124,6 @@ int stat_client_add(int fd, long unsigned mask) new_client = para_malloc(sizeof(struct stat_client)); new_client->fd = fd; new_client->item_mask = mask; - add_close_on_fork_list(fd); list_add(&new_client->node, &client_list); dump_stat_client_list(); num_clients++; @@ -171,7 +165,6 @@ void stat_client_write(char *msg, int itemnum) } /* write error or fd not ready for writing */ close(fd); - del_close_on_fork_list(fd); num_clients--; PARA_INFO_LOG("deleting client on fd %d\n", fd); list_del(&sc->node);