X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=vss.c;h=aab051690fd9d9d4e0f71394e99f056c70f6f3c9;hp=03621e0076a9abc72e14a75c03c6cb2c1c82a00c;hb=19b62f8310b84db99dd95fda8218823abdb3d7bf;hpb=af74979ce3df0df99c8f460d2430e8eb1e6a7ff1 diff --git a/vss.c b/vss.c index 03621e00..aab05169 100644 --- a/vss.c +++ b/vss.c @@ -198,7 +198,8 @@ static void vss_eof(void) mmd->afd.afhi.chunk_table = NULL; tmp = make_message("%s:\n%s:\n%s:\n", status_item_list[SI_AUDIO_INFO1], status_item_list[SI_AUDIO_INFO2], status_item_list[SI_AUDIO_INFO3]); - strcpy(mmd->afd.afhi.info_string, tmp); + strncpy(mmd->afd.afhi.info_string, tmp, sizeof(mmd->afd.afhi.info_string)); + mmd->afd.afhi.info_string[sizeof(mmd->afd.afhi.info_string) - 1] = '\0'; free(tmp); mmd->afd.path[0] = '\0'; mmd->afd.afsi.lyrics_id = 0; @@ -266,6 +267,10 @@ static enum afs_socket_status afsss; * This function gets called from para_server to determine the timeout value * for its main select loop. * + * \param rfds The set of file descriptors to be checked for reading. + * \param wfds The set of file descriptors to be checked for writing. + * \param max_fileno The highest-numbered file descriptor. + * * Before the timeout is computed, the current vss status flags are evaluated * and acted upon by calling appropriate functions from the lower layers. * Possible actions include @@ -347,7 +352,6 @@ static int recv_afs_msg(int *fd, uint32_t *code, uint32_t *data) return -E_SHORT_AFS_READ; *code = *(uint32_t*)buf; *data = *(uint32_t*)(buf + 4); - cmsg = CMSG_FIRSTHDR(&msg); for (cmsg = CMSG_FIRSTHDR(&msg); cmsg; cmsg = CMSG_NXTHDR(&msg, cmsg)) { if (cmsg->cmsg_level != SOL_SOCKET || cmsg->cmsg_type != SCM_RIGHTS)