Automate syscall filename/pathname extraction
[lttng-modules.git] / instrumentation / syscalls / lttng-syscalls-generate-headers.sh
index b98a5e1031a31b6aa6b188df6b30b834ed2e1d16..391425c61f23c1cdf9031b057356fb81758564e1 100644 (file)
@@ -248,6 +248,16 @@ rm -f ${HEADER}
 perl -p -e 's/__field\(([^,)]*), ([^a,)]*addr|[^p,)]*ptr)([^),]*)\)/__field_hex($1, $2$3)/g'\
        ${TMPFILE} >> ${HEADER}
 
+#fields names: filename or pathname
+cp -f ${HEADER} ${TMPFILE}
+rm -f ${HEADER}
+perl -p -e 's/__field\(([^,)]*), (filename|pathname)\)/__string($2, $2)/g'\
+       ${TMPFILE} >> ${HEADER}
+cp -f ${HEADER} ${TMPFILE}
+rm -f ${HEADER}
+perl -p -e 's/tp_assign\((filename|pathname), (filename|pathname)\)/tp_copy_string_from_user($1, $2)/g'\
+       ${TMPFILE} >> ${HEADER}
+
 cp -f ${HEADER} ${TMPFILE}
 rm -f ${HEADER}
 
@@ -255,6 +265,7 @@ rm -f ${HEADER}
 perl -p -e 's/__field\(([^,)]*\*), ([^),]*)\)/__field_hex($1, $2)/g'\
        ${TMPFILE} >> ${HEADER}
 
+
 rm -f ${INPUTFILE}.tmp
 rm -f ${TMPFILE}
 rm -f ${SRCFILE}
This page took 0.023304 seconds and 4 git commands to generate.