]> sourceware.org Git - systemtap.git/commitdiff
PR19489: Update send syscalls to use buffer_quoted
authorCody Santing <csanting@redhat.com>
Tue, 12 Jul 2016 19:50:03 +0000 (15:50 -0400)
committerCody Santing <csanting@redhat.com>
Tue, 12 Jul 2016 19:50:03 +0000 (15:50 -0400)
tapset/linux/nd_syscalls2.stp: send and sendto use new user_buffer_quoted function
tapset/linnux/syscalls2.stp: send and sendto use new user_buffer_quoted function
testsuite/systemtap.syscall/send.c: Update expected output of testcases
testsuite/systemtap.syscall/sendto.c:Update expected output of test cases

tapset/linux/nd_syscalls2.stp
tapset/linux/syscalls2.stp
testsuite/systemtap.syscall/send.c
testsuite/systemtap.syscall/sendto.c

index c46347ee60d453666ed5c4ffe490cff30119dd9b..60b457e135c7b288d90a523ae7e05d9c042c73f5 100644 (file)
@@ -2680,7 +2680,8 @@ probe nd_syscall.send = __nd_syscall.send ?, __nd_syscall.socketcall.send ?,
 {
        name = "send"
        flags_str = _msg_flags_str(flags)
-       argstr = sprintf("%d, %p, %u, %s", s, buf_uaddr, len, flags_str)
+       buf = user_buffer_quoted(buf_uaddr, len, syscall_string_trunc)
+       argstr = sprintf("%d, %s, %u, %s", s, buf, len, flags_str)
 }
 probe __nd_syscall.send = kprobe.function("sys_send") ?
 {
@@ -2959,8 +2960,8 @@ probe nd_syscall.sendto = __nd_syscall.sendto ?,
 {
        name = "sendto"
        flags_str = _msg_flags_str(flags)
-       argstr = sprintf("%d, %p, %u, %s, %s, %u", s, buf_uaddr,
-                        len, flags_str,
+       buf = user_buffer_quoted(buf_uaddr, len, syscall_string_trunc)
+       argstr = sprintf("%d, %s, %u, %s, %s, %u", s, buf, len, flags_str,
                         _struct_sockaddr_u(to_uaddr, tolen), tolen)
 }
 probe __nd_syscall.sendto = kprobe.function("sys_sendto").call ?
index 064647d37acfb698bdf419d1499f940de3bc292b..32fdf0b6b3f8de38c8a18d46dc0b387fcbf331d1 100644 (file)
@@ -2585,7 +2585,8 @@ probe syscall.send = __syscall.send ?, __syscall.socketcall.send ?,
 {
        name = "send"
        flags_str = _msg_flags_str(flags)
-       argstr = sprintf("%d, %p, %u, %s", s, buf_uaddr, len, flags_str)
+       buf = user_buffer_quoted(buf_uaddr, len, syscall_string_trunc)
+       argstr = sprintf("%d, %s, %u, %s", s, buf, len, flags_str)
 }
 probe __syscall.send = kernel.function("sys_send").call ?
 {
@@ -2842,8 +2843,8 @@ probe syscall.sendto = __syscall.sendto ?, __syscall.socketcall.sendto ?,
 {
        name = "sendto"
        flags_str = _msg_flags_str(flags)
-       argstr = sprintf("%d, %p, %u, %s, %s, %u", s, buf_uaddr,
-                        len, flags_str,
+       buf = user_buffer_quoted(buf_uaddr, len, syscall_string_trunc)
+       argstr = sprintf("%d, %s, %u, %s, %s, %u", s, buf, len, flags_str,
                         _struct_sockaddr_u(to_uaddr, tolen), tolen)
 }
 probe __syscall.sendto = kernel.function("sys_sendto").call ?
index b414c0f60c751fa9f312e88feaee4a79aaf79355..12bcf12a2202fc30f026f388d25f98889060ee1e 100644 (file)
@@ -110,11 +110,15 @@ int main()
 
     fd_null = open("/dev/null", O_WRONLY);
 
+    memset(buf, 'a', sizeof(buf));
+
     send(-1, buf, sizeof(buf), 0);
-    //staptest// send[[[[to]]]]? (-1, XXXX, 1024, 0x0[[[[, NULL, 0]]]]?) = -NNNN (EBADF)
+    //staptest// send[[[[to]]]]? (-1, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"..., 1024, 0x0[[[[, NULL, 0]]]]?) = -NNNN (EBADF)
+
+    memset(buf, 'b', sizeof(buf));
 
     send(fd_null, buf, sizeof(buf), MSG_DONTWAIT);
-    //staptest// send[[[[to]]]]? (NNNN, XXXX, 1024, MSG_DONTWAIT[[[[, NULL, 0]]]]?) = -NNNN (ENOTSOCK)
+    //staptest// send[[[[to]]]]? (NNNN, "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"..., 1024, MSG_DONTWAIT[[[[, NULL, 0]]]]?) = -NNNN (ENOTSOCK)
 
     s = socket(PF_INET, SOCK_DGRAM, 0);
     //staptest// socket (PF_INET, SOCK_DGRAM, IPPROTO_IP) = NNNN
@@ -122,6 +126,8 @@ int main()
     connect(s, (struct sockaddr *)&sin1, sizeof(sin1));
     //staptest// connect (NNNN, {AF_INET, 0.0.0.0, NNNN}, 16) = 0
 
+    memset(buf, 'c', sizeof(buf));    
+
     send(s, (void *)-1, sizeof(buf), 0);
 #ifdef __s390__
     //staptest// send[[[[to]]]]? (NNNN, 0x[7]?[f]+, 1024, 0x0[[[[, NULL, 0]]]]?) = -NNNN (EFAULT)
@@ -131,9 +137,9 @@ int main()
 
     send(s, (void *)buf, -1, 0);
 #if __WORDSIZE == 64
-    //staptest// send[[[[to]]]]? (NNNN, XXXX, 18446744073709551615, 0x0[[[[, NULL, 0]]]]?) = -NNNN
+    //staptest// send[[[[to]]]]? (NNNN, "ccccccccccccccccccccccccccccccccccccccccccccc"..., 18446744073709551615, 0x0[[[[, NULL, 0]]]]?) = -NNNN
 #else
-    //staptest// send[[[[to]]]]? (NNNN, XXXX, 4294967295, 0x0[[[[, NULL, 0]]]]?) = -NNNN
+    //staptest// send[[[[to]]]]? (NNNN, "ccccccccccccccccccccccccccccccccccccccccccccc"..., 4294967295, 0x0[[[[, NULL, 0]]]]?) = -NNNN
 #endif
 
     close(s);
@@ -145,12 +151,16 @@ int main()
     connect(s, (struct sockaddr *)&sin1, sizeof(sin1));
     //staptest// connect (NNNN, {AF_INET, 0.0.0.0, NNNN}, 16) = 0
 
+    memset(buf, 'd', sizeof(buf));
+
     send(s, buf, sizeof(buf), MSG_DONTWAIT);
-    //staptest// send[[[[to]]]]? (NNNN, XXXX, 1024, MSG_DONTWAIT[[[[, NULL, 0]]]]?) = 1024
+    //staptest// send[[[[to]]]]? (NNNN, "ddddddddddddddddddddddddddddddddddddddddddddd"..., 1024, MSG_DONTWAIT[[[[, NULL, 0]]]]?) = 1024
+
+    memset(buf, 'e', sizeof(buf));  
 
     // Ignore the return value on this send() call.
     send(s, buf, sizeof(buf), -1);
-    //staptest// send[[[[to]]]]? (NNNN, XXXX, 1024, MSG_[^ ]+[[[[|XXXX, NULL, 0]]]]?)
+    //staptest// send[[[[to]]]]? (NNNN, "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"..., 1024, MSG_[^ ]+[[[[|XXXX, NULL, 0]]]]?)
 
     close(s);
     //staptest// close (NNNN) = 0
index 4adefec64e5cbc64bf751bd2d6d50fd8d542b8e5..44a8a5c0a182f1a1d02036e3c8c8bf649fd0632c 100644 (file)
@@ -106,11 +106,15 @@ int main()
 
     fd_null = open("/dev/null", O_WRONLY);
 
+    memset(buf, 'a', sizeof(buf));
+
     sendto(-1, buf, sizeof(buf), 0, NULL, 0);
-    //staptest// sendto (-1, XXXX, 1024, 0x0, NULL, 0) = -NNNN (EBADF)
+    //staptest// sendto (-1, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"..., 1024, 0x0, NULL, 0) = -NNNN (EBADF)
+
+    memset(buf, 'b', sizeof(buf));
 
     sendto(fd_null, buf, sizeof(buf), MSG_DONTWAIT, NULL, 0);
-    //staptest// sendto (NNNN, XXXX, 1024, MSG_DONTWAIT, NULL, 0) = -NNNN (ENOTSOCK)
+    //staptest// sendto (NNNN, "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"..., 1024, MSG_DONTWAIT, NULL, 0) = -NNNN (ENOTSOCK)
 
     s = socket(PF_INET, SOCK_DGRAM, 0);
     //staptest// socket (PF_INET, SOCK_DGRAM, IPPROTO_IP) = NNNN
@@ -118,19 +122,23 @@ int main()
     connect(s, (struct sockaddr *)&sin1, sizeof(sin1));
     //staptest// connect (NNNN, {AF_INET, 0.0.0.0, NNNN}, 16) = 0
 
+    memset(buf, 'c', sizeof(buf));
+
     sendto(s, (void *)buf, sizeof(buf), MSG_OOB, (struct sockaddr *)&sin1,
           sizeof(sin1));
-    //staptest// sendto (NNNN, XXXX, 1024, MSG_OOB, {AF_INET, 0.0.0.0, NNNN}, 16) = -NNNN (EOPNOTSUPP)
+    //staptest// sendto (NNNN, "ccccccccccccccccccccccccccccccccccccccccccccc"..., 1024, MSG_OOB, {AF_INET, 0.0.0.0, NNNN}, 16) = -NNNN (EOPNOTSUPP)
 
     sendto(s, (void *)-1, sizeof(buf), 0, (struct sockaddr *)&sin1,
           sizeof(sin1));
     //staptest// sendto (NNNN, 0x[f]+, 1024, 0x0, {AF_INET, 0.0.0.0, NNNN}, 16) = -NNNN (EFAULT)
 
+    memset(buf, 'd', sizeof(buf));
+
     sendto(s, (void *)buf, -1, 0, (struct sockaddr *)&sin1, sizeof(sin1));
 #if __WORDSIZE == 64
-    //staptest// sendto (NNNN, XXXX, 18446744073709551615, 0x0, {AF_INET, 0.0.0.0, NNNN}, 16) = -NNNN
+    //staptest// sendto (NNNN, "ddddddddddddddddddddddddddddddddddddddddddddd"..., 18446744073709551615, 0x0, {AF_INET, 0.0.0.0, NNNN}, 16) = -NNNN
 #else
-    //staptest// sendto (NNNN, XXXX, 4294967295, 0x0, {AF_INET, 0.0.0.0, NNNN}, 16) = -NNNN
+    //staptest// sendto (NNNN, "ddddddddddddddddddddddddddddddddddddddddddddd"..., 4294967295, 0x0, {AF_INET, 0.0.0.0, NNNN}, 16) = -NNNN
 #endif
 
     close(s);
@@ -142,14 +150,22 @@ int main()
     connect(s, (struct sockaddr *)&sin1, sizeof(sin1));
     //staptest// connect (NNNN, {AF_INET, 0.0.0.0, NNNN}, 16) = 0
 
+    memset(buf, 'e', sizeof(buf));
+
     sendto(s, buf, sizeof(buf), 0, (struct sockaddr *)&sin1, sizeof(sin1));
-    //staptest// sendto (NNNN, XXXX, 1024, 0x0, {AF_INET, 0.0.0.0, NNNN}, 16) = 1024
+    //staptest// sendto (NNNN, "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"..., 1024, 0x0, {AF_INET, 0.0.0.0, NNNN}, 16) = 1024
+
+    memset(buf, 'f', sizeof(buf));
 
     sendto(s, buf, sizeof(buf), 0, (struct sockaddr *)&sin1, -1);
-    //staptest// sendto (NNNN, XXXX, 1024, 0x0, {unknown .+}, 4294967295) = -NNNN (EINVAL)
+    //staptest// sendto (NNNN, "fffffffffffffffffffffffffffffffffffffffffffff"..., 1024, 0x0, {unknown .+}, 4294967295) = -NNNN (EINVAL)
+
+    memset(buf, 'g', sizeof(buf));
 
     sendto(s, buf, sizeof(buf), 0, (struct sockaddr *)-1, sizeof(sin1));
-    //staptest// sendto (NNNN, XXXX, 1024, 0x0, {\.\.\.}, 16) = -NNNN (EFAULT)
+    //staptest// sendto (NNNN, "ggggggggggggggggggggggggggggggggggggggggggggg"..., 1024, 0x0, {\.\.\.}, 16) = -NNNN (EFAULT)
+
+    memset(buf, 'h', sizeof(buf));
 
     // Ignore the return value on this sendto() call.  Note that on a
     // 32-bit kernel (i686 for instance), MAXSTRINGLEN is only
@@ -157,7 +173,7 @@ int main()
     // will cause argstr to get too big. So, we'll make the end of the
     // arguments optional.
     sendto(s, buf, sizeof(buf), -1, (struct sockaddr *)&sin1, sizeof(sin1));
-    //staptest// sendto (NNNN, XXXX, 1024, MSG_[^ ]+[[[[|XXXX, {AF_INET, 0.0.0.0, NNNN}, 16]]]]?) = NNNN
+    //staptest// sendto (NNNN, "hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh"..., 1024, MSG_[^ ]+[[[[|XXXX, {AF_INET, 0.0.0.0, NNNN}, 16]]]]?) = NNNN
 
     close(s);
     //staptest// close (NNNN) = 0
This page took 0.041936 seconds and 5 git commands to generate.