Implement getrandom syscall decoding
* getrandom.c: New file.
* Makefile.am (strace_SOURCES): Add it.
* linux/dummy.h (sys_getrandom): Remove.
* linux/syscall.h (sys_getrandom): New prototype.
* xlat/getrandom_flags.in: New file.
* tests/getrandom.c: New file.
* tests/getrandom.awk: New file.
* tests/getrandom.test: New test.
* tests/Makefile.am (check_PROGRAMS): Add getrandom.
(TESTS): Add getrandom.test.
(EXTRA_DIST): Add getrandom.awk.
* tests/.gitignore: Add getrandom.
diff --git a/getrandom.c b/getrandom.c
new file mode 100644
index 0000000..068b2e6
--- /dev/null
+++ b/getrandom.c
@@ -0,0 +1,16 @@
+#include "defs.h"
+#include "xlat/getrandom_flags.h"
+
+int
+sys_getrandom(struct tcb *tcp)
+{
+ if (exiting(tcp)) {
+ if (syserror(tcp))
+ tprintf("%#lx", tcp->u_arg[0]);
+ else
+ printstr(tcp, tcp->u_arg[0], tcp->u_rval);
+ tprintf(", %lu, ", tcp->u_arg[1]);
+ printflags(getrandom_flags, tcp->u_arg[2], "GRND_???");
+ }
+ return 0;
+}