X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=audiod_command.c;h=5f0b35a5dc0f3e4f02d134faa2ef828c6b357763;hb=217149fecdc9053676aaaa929ace79e92135a34d;hp=29c330f36a526d1004cb8595248fb75008033438;hpb=5967ac5353739c3ff571dd12d4c6814fa8493ad8;p=paraslash.git diff --git a/audiod_command.c b/audiod_command.c index 29c330f3..5f0b35a5 100644 --- a/audiod_command.c +++ b/audiod_command.c @@ -81,27 +81,12 @@ static int num_clients; /** The list of all status items used by para_{server,audiod,gui}. */ const char *status_item_list[] = {STATUS_ITEMS}; -static void dump_stat_client_list(void) -{ - struct stat_client *sc; - - list_for_each_entry(sc, &client_list, node) - PARA_INFO_LOG("stat client on fd %d\n", sc->fd); -} -/** - * Add a status client to the list. - * - * \param fd The file descriptor of the client. - * \param mask Bitfield of status items for this client. - * \param parser_friendly Enable parser-friendly output mode. +/* + * Add a status client to the global client list and increment num_clients. * - * Only those status items having the bit set in \a mask will be - * sent to the client. - * - * \return Positive value on success, or -E_TOO_MANY_CLIENTS if - * the number of connected clients exceeds #MAX_STAT_CLIENTS. + * The mask parameter specifies which status items are sent to the client. */ -static int stat_client_add(int fd, uint64_t mask, int parser_friendly) +static int stat_client_add(int fd, uint64_t mask, bool parser_friendly) { struct stat_client *new_client; int ret; @@ -114,14 +99,13 @@ static int stat_client_add(int fd, uint64_t mask, int parser_friendly) ret = dup(fd); if (ret < 0) return -ERRNO_TO_PARA_ERROR(errno); - new_client = para_calloc(sizeof(*new_client)); + new_client = zalloc(sizeof(*new_client)); new_client->fd = ret; PARA_INFO_LOG("adding client on fd %d\n", new_client->fd); new_client->item_mask = mask; if (parser_friendly) new_client->flags = SCF_PARSER_FRIENDLY; para_list_add(&new_client->node, &client_list); - dump_stat_client_list(); num_clients++; return 1; } @@ -180,20 +164,12 @@ void stat_client_write_item(int item_num) continue; /* write error or short write */ close_stat_client(sc); - dump_stat_client_list(); } free(pb.buf); free(pfpb.buf); } -/** - * Check if string is a known status item. - * - * \param item Buffer containing the text to check. - * - * \return If \a item is a valid status item, the number of that status item is - * returned. Otherwise, this function returns \p -E_UNKNOWN_STAT_ITEM. - */ +/* Check if the given string is a known status item and return its index. */ static int stat_item_valid(const char *item) { int i; @@ -291,7 +267,8 @@ EXPORT_AUDIOD_CMD_HANDLER(tasks) static int com_stat(int fd, struct lls_parse_result *lpr) { - int i, ret, parser_friendly = 0; + int i, ret; + bool parser_friendly = false; uint64_t mask = 0; const uint64_t one = 1; struct para_buffer b = {.flags = 0}; @@ -303,7 +280,7 @@ static int com_stat(int fd, struct lls_parse_result *lpr) return ret; r = lls_opt_result(LSG_AUDIOD_CMD_STAT_OPT_PARSER_FRIENDLY, lpr); if (lls_opt_given(r) > 0) { - parser_friendly = 1; + parser_friendly = true; b.flags = PBF_SIZE_PREFIX; } num_inputs = lls_num_inputs(lpr);