X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=audiod_command.c;h=524fb57dbd7d81cd5cf96923ab7501bff7f1036e;hp=3bb94ad60a8a1079659105b792068e71045c9e01;hb=0a405367cdc8f3b0f49fb5ec3798378a2fc4589b;hpb=2e8b7f42a30ebe41c862cc603c8f746b1e202479 diff --git a/audiod_command.c b/audiod_command.c index 3bb94ad6..524fb57d 100644 --- a/audiod_command.c +++ b/audiod_command.c @@ -350,7 +350,7 @@ err_out: return 1; } -int __noreturn com_term(int fd, __a_unused int argc, __a_unused char **argv) +__noreturn int com_term(int fd, __a_unused int argc, __a_unused char **argv) { close(fd); clean_exit(EXIT_SUCCESS, "terminating on user request"); @@ -406,6 +406,21 @@ static int check_perms(uid_t uid) return -E_UCRED_PERM; } +/** + * handle arriving connections on the local socket + * + * \param accept_fd the fd to call accept() on + * + * This is called whenever para_audiod's main task detects an incoming + * connection by the readability of \a accept_fd. This function reads the + * command sent by the peer, checks the connecting user's permissions by using + * unix socket credentials (if supported by the OS) and calls the corresponding + * command handler if permissions are OK. + * + * \return positive on success, negative on errors + * + * \sa para_accept(), recv_cred_buffer() + * */ int handle_connect(int accept_fd) { int i, argc, ret, clifd = -1; @@ -462,7 +477,9 @@ out: } return ret; } - +/** + * send the current audiod status to all connected stat clients + */ void audiod_status_dump(void) { struct timeval *t = wstime();