Nikolay Marchuk's GSoC status report #5 of 13

2017-07-03 Thread Nikolay Marchuk
Hello, strace community! Project: Advanced syscall filtering syntax. Accomplishments: this week I've added implementation of path filtering and began writing tests for filtering. Next week I am going to refactor v3 implementation of advanced filtering according to its reviews. Also I am going to

JingPiao Chen's GSoC status report - #5 of 13

2017-07-03 Thread JingPiao Chen
It was too bad last week, it seem did nothing. I fixed some code, merged some patch. This week, I will fix packet_diag_msg, smc_diag_msg and inet_diag_req attribute decode, and extend the macro in tests/test_nlattr.h, make it suit for more case, because now I can not use them in tests/nlattr_inet_

Re: TEST_NLATTR_OBJECT and TEST_NLATTR_ARRAY fault when sizeof(obj) - 1 > DEFAULT_STRLEN

2017-07-03 Thread JingPiao Chen
On Mon, Jul 03, 2017 at 10:23:49PM +0300, Dmitry V. Levin wrote: > On Mon, Jul 03, 2017 at 08:05:42AM +0800, JingPiao Chen wrote: > > On Mon, Jul 03, 2017 at 01:22:52AM +0300, Dmitry V. Levin wrote: > > > On Sun, Jul 02, 2017 at 12:12:54PM +0800, JingPiao Chen wrote: > > > > when sizeof(obj) - 1 >

Re: TEST_NLATTR_OBJECT and TEST_NLATTR_ARRAY fault when sizeof(obj) - 1 > DEFAULT_STRLEN

2017-07-03 Thread Dmitry V. Levin
On Mon, Jul 03, 2017 at 08:05:42AM +0800, JingPiao Chen wrote: > On Mon, Jul 03, 2017 at 01:22:52AM +0300, Dmitry V. Levin wrote: > > On Sun, Jul 02, 2017 at 12:12:54PM +0800, JingPiao Chen wrote: > > > when sizeof(obj) - 1 > DEFAULT_STRLEN, we print all string, > > > but strace print "STR"..., so

Re: [PATCH v3 6/6] Implement new filtering language parsing

2017-07-03 Thread Eugene Syromiatnikov
On Thu, Jun 29, 2017 at 02:46:15PM +0700, Nikolay Marchuk wrote: > * defs.h (parse_action): Add definition. > * filter.c: Add filters parsing function. > * filter.h: Add new definitions. > * filter_action.c: Add action parsing function. > * filter_expression.c: Add expression parsing function. > *

Re: [PATCH v3 5/6] Optimize default filtering

2017-07-03 Thread Eugene Syromyatnikov
On Mon, Jul 3, 2017 at 6:43 PM, Victor Krapivensky wrote: > Actually, passing a non-dereferencable pointer as a first argument to > qsort is UB, even if the second argument is 0: My bad, didn't notice that filter_actions is invalid in that case, thanks! -- Eugene Syromyatnikov mailto:evg...@gma

Re: [PATCH v3 5/6] Optimize default filtering

2017-07-03 Thread Victor Krapivensky
On Mon, Jul 03, 2017 at 03:03:15PM +0300, Eugene Syromiatnikov wrote: > On Thu, Jun 29, 2017 at 02:46:14PM +0700, Nikolay Marchuk wrote: > > * filter_action.c (default_flags, clear_default_flags): Add default flags. > > (add_action): Use action type as argument. Clear default flags. > > (filter_sys

Re: [PATCH v3 2/6] Introduce new filtering architecture

2017-07-03 Thread Victor Krapivensky
On Thu, Jun 29, 2017 at 02:46:11PM +0700, Nikolay Marchuk wrote: > This change introduces new filtering architecture primitives: filter, > filter_action and bool_expression. It also changes processing of -e > strace option. Now, filtering is done after decoding of syscall and > tcp->qual_flg stores

Re: [PATCH v3 4/6] Improve fd filtering

2017-07-03 Thread Eugene Syromiatnikov
On Thu, Jun 29, 2017 at 02:46:13PM +0700, Nikolay Marchuk wrote: > * basic_actions (apply_read, apply_write): Add syscall check. > * basic_filters (run_fd_filter): Implement more accurate fd filtering. > * defs.h (read_dumped, write_dumped): Add new flag checking macroses. > * syscall.c (dumpio): A

Re: [PATCH v3 5/6] Optimize default filtering

2017-07-03 Thread Eugene Syromiatnikov
On Thu, Jun 29, 2017 at 02:46:14PM +0700, Nikolay Marchuk wrote: > * filter_action.c (default_flags, clear_default_flags): Add default flags. > (add_action): Use action type as argument. Clear default flags. > (filter_syscall): Add default_flags to qual_flg. > * strace.c (init): Remove default filt

Re: [PATCH v3 3/6] Implement parsing of inject and fault filter actions

2017-07-03 Thread Eugene Syromiatnikov
On Thu, Jun 29, 2017 at 02:46:12PM +0700, Nikolay Marchuk wrote: > * basic_actions.c (parse_inject, parse_fault, apply_fault): Implement. > (apply_inject): Change inject private data. > * defs.h (inject_vec): Remove. > (inject_opts): Add init flag. > * filter.h (parse_inject_token): Add definition.

Re: [PATCH v3 2/6] Introduce new filtering architecture

2017-07-03 Thread Eugene Syromiatnikov
On Thu, Jun 29, 2017 at 02:46:11PM +0700, Nikolay Marchuk wrote: > This change introduces new filtering architecture primitives: filter, > filter_action and bool_expression. It also changes processing of -e > strace option. Now, filtering is done after decoding of syscall and > tcp->qual_flg stores