On Wed, 2008-09-10 at 22:15 +0900, Mitsuru Chinen wrote:
> "man 3 cmsg" says "Ancillary data should only be accessed using the
> CMSG macros and never directly." Indeed, when we handles cmsghdr mamber
> directly, this test falls into the infinite loop on a x86_64 environment.
>
> Signed-off-by: Mitsuru Chinen <[EMAIL PROTECTED]>
Thanks. Merged.
Regards--
Subrata
> ---
> testcases/network/lib6/asapi_06.c | 12 +++---------
> 1 files changed, 3 insertions(+), 9 deletions(-)
>
> diff --git a/testcases/network/lib6/asapi_06.c
> b/testcases/network/lib6/asapi_06.c
> index 48fbdf0..ad0cdae 100644
> --- a/testcases/network/lib6/asapi_06.c
> +++ b/testcases/network/lib6/asapi_06.c
> @@ -349,7 +349,7 @@ so_test(struct soent *psoe)
>
> /* receiver processing */
> { fd_set rfds, rfds_saved;
> - int nfds, cc, len;
> + int nfds, cc;
> int gotone;
> struct timeval tv;
> struct msghdr msg;
> @@ -400,12 +400,10 @@ so_test(struct soent *psoe)
> break;
> }
> gotone = 0;
> - pcmsg = (struct cmsghdr *)msg.msg_control;
> - for (len=0; len < msg.msg_controllen; len += pcmsg->cmsg_len) {
> + for (pcmsg = CMSG_FIRSTHDR(&msg); pcmsg != NULL;
> + pcmsg = CMSG_NXTHDR(&msg, pcmsg)) {
> if (!psoe->so_dorecv)
> break;
> - pcmsg = (struct cmsghdr *)(((unsigned char *)
> - msg.msg_control) + len);
> gotone = pcmsg->cmsg_level == SOL_IPV6 &&
> pcmsg->cmsg_type == psoe->so_cmtype;
> if (gotone)
> @@ -418,10 +416,6 @@ so_test(struct soent *psoe)
> return;
> }
> }
> - if (gotone && pcmsg->cmsg_len > 0) {
> - unsigned int *cmdat = (unsigned int *)
> - ((unsigned char *)pcmsg+sizeof(struct cmsghdr));
> - }
> /* check contents here */
> if (psoe->so_dorecv)
> tst_resm(gotone ? TPASS : TFAIL, "%s receive",
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list