Print packet contents from test code.
[mctap.git] / src / mctap.c
index 437082b..8125c41 100644 (file)
@@ -68,13 +68,16 @@ static int mkmcastsk4(struct in_addr group, int port)
     mreq.imr_multiaddr = group;
     if(setsockopt(fd, SOL_IP, IP_ADD_MEMBERSHIP, &mreq, sizeof(mreq)))
        return(-1);
+    soval = 1;
+    if(setsockopt(fd, SOL_IP, IP_MULTICAST_LOOP, &soval, sizeof(soval)))
+       return(-1);
     return(fd);
 }
 
 static void test(int fd)
 {
     char buf[65536];
-    int ret;
+    int i, ret;
     struct sockaddr_storage nm;
     socklen_t nmlen;
     
@@ -86,6 +89,11 @@ static void test(int fd)
            exit(1);
        }
        printf("%s %i:\n", formataddress((struct sockaddr *)&nm, nmlen), ret);
+       for(i = 0; i < ret; i++) {
+           printf("%02x ", (unsigned char)buf[i]);
+           if(i % 20 == 0)
+               putchar(10);
+       }
     }
 }