Skip to content

Commit

Permalink
Rename SyscallFilter.name to SyscallFilter.syscall
Browse files Browse the repository at this point in the history
  • Loading branch information
p-e-w committed May 8, 2016
1 parent cbe4cff commit 8be6b4d
Show file tree
Hide file tree
Showing 10 changed files with 34 additions and 34 deletions.
2 changes: 1 addition & 1 deletion maybe/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
from blessings import Terminal


SyscallFilter = namedtuple("SyscallFilter", ["name", "format", "substitute"])
SyscallFilter = namedtuple("SyscallFilter", ["syscall", "format", "substitute"])
# Make returning zero the default substitute function
# Source: http://stackoverflow.com/a/18348004
SyscallFilter.__new__.__defaults__ = (lambda args: 0,)
Expand Down
8 changes: 4 additions & 4 deletions maybe/filters/change_owner.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,19 +31,19 @@ def format_change_owner(path, owner, group):

SYSCALL_FILTERS["change_owner"] = [
SyscallFilter(
name="chown",
syscall="chown",
format=lambda args: format_change_owner(args[0], args[1], args[2]),
),
SyscallFilter(
name="fchown",
syscall="fchown",
format=lambda args: format_change_owner(get_file_descriptor_path(args[0]), args[1], args[2]),
),
SyscallFilter(
name="lchown",
syscall="lchown",
format=lambda args: format_change_owner(args[0], args[1], args[2]),
),
SyscallFilter(
name="fchownat",
syscall="fchownat",
format=lambda args: format_change_owner(args[1], args[2], args[3]),
),
]
6 changes: 3 additions & 3 deletions maybe/filters/change_permissions.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,15 +30,15 @@ def format_change_permissions(path, permissions):

SYSCALL_FILTERS["change_permissions"] = [
SyscallFilter(
name="chmod",
syscall="chmod",
format=lambda args: format_change_permissions(args[0], args[1]),
),
SyscallFilter(
name="fchmod",
syscall="fchmod",
format=lambda args: format_change_permissions(get_file_descriptor_path(args[0]), args[1]),
),
SyscallFilter(
name="fchmodat",
syscall="fchmodat",
format=lambda args: format_change_permissions(args[1], args[2]),
),
]
4 changes: 2 additions & 2 deletions maybe/filters/create_directory.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,11 @@ def format_create_directory(path):

SYSCALL_FILTERS["create_directory"] = [
SyscallFilter(
name="mkdir",
syscall="mkdir",
format=lambda args: format_create_directory(args[0]),
),
SyscallFilter(
name="mkdirat",
syscall="mkdirat",
format=lambda args: format_create_directory(args[1]),
),
]
8 changes: 4 additions & 4 deletions maybe/filters/create_link.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,19 +20,19 @@ def format_create_link(path_source, path_target, symbolic):

SYSCALL_FILTERS["create_link"] = [
SyscallFilter(
name="link",
syscall="link",
format=lambda args: format_create_link(args[1], args[0], False),
),
SyscallFilter(
name="linkat",
syscall="linkat",
format=lambda args: format_create_link(args[3], args[1], False),
),
SyscallFilter(
name="symlink",
syscall="symlink",
format=lambda args: format_create_link(args[1], args[0], True),
),
SyscallFilter(
name="symlinkat",
syscall="symlinkat",
format=lambda args: format_create_link(args[2], args[0], True),
),
]
24 changes: 12 additions & 12 deletions maybe/filters/create_write_file.py
Original file line number Diff line number Diff line change
Expand Up @@ -107,64 +107,64 @@ def substitute_dup(file_descriptor_old, file_descriptor_new=None):

SYSCALL_FILTERS["create_write_file"] = [
SyscallFilter(
name="open",
syscall="open",
format=lambda args: format_open(args[0], args[1]),
substitute=lambda args: substitute_open(args[0], args[1]),
),
SyscallFilter(
name="creat",
syscall="creat",
format=lambda args: format_open(args[0], O_CREAT | O_WRONLY | O_TRUNC),
substitute=lambda args: substitute_open(args[0], O_CREAT | O_WRONLY | O_TRUNC),
),
SyscallFilter(
name="openat",
syscall="openat",
format=lambda args: format_open(args[1], args[2]),
substitute=lambda args: substitute_open(args[1], args[2]),
),
SyscallFilter(
name="mknod",
syscall="mknod",
format=lambda args: format_mknod(args[0], args[1]),
substitute=lambda args: substitute_mknod(args[0], args[1]),
),
SyscallFilter(
name="mknodat",
syscall="mknodat",
format=lambda args: format_mknod(args[1], args[2]),
substitute=lambda args: substitute_mknod(args[1], args[2]),
),
SyscallFilter(
name="write",
syscall="write",
format=lambda args: format_write(args[0], args[2]),
substitute=lambda args: substitute_write(args[0], args[2]),
),
SyscallFilter(
name="pwrite",
syscall="pwrite",
format=lambda args: format_write(args[0], args[2]),
substitute=lambda args: substitute_write(args[0], args[2]),
),
SyscallFilter(
name="writev",
syscall="writev",
# TODO: Actual byte count is iovcnt * iov.iov_len
format=lambda args: format_write(args[0], args[2]),
substitute=lambda args: substitute_write(args[0], args[2]),
),
SyscallFilter(
name="pwritev",
syscall="pwritev",
# TODO: Actual byte count is iovcnt * iov.iov_len
format=lambda args: format_write(args[0], args[2]),
substitute=lambda args: substitute_write(args[0], args[2]),
),
SyscallFilter(
name="dup",
syscall="dup",
format=lambda args: None,
substitute=lambda args: substitute_dup(args[0]),
),
SyscallFilter(
name="dup2",
syscall="dup2",
format=lambda args: None,
substitute=lambda args: substitute_dup(args[0], args[1]),
),
SyscallFilter(
name="dup3",
syscall="dup3",
format=lambda args: None,
substitute=lambda args: substitute_dup(args[0], args[1]),
),
Expand Down
6 changes: 3 additions & 3 deletions maybe/filters/delete.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,15 @@ def format_delete(path):

SYSCALL_FILTERS["delete"] = [
SyscallFilter(
name="unlink",
syscall="unlink",
format=lambda args: format_delete(args[0]),
),
SyscallFilter(
name="unlinkat",
syscall="unlinkat",
format=lambda args: format_delete(args[1]),
),
SyscallFilter(
name="rmdir",
syscall="rmdir",
format=lambda args: format_delete(args[0]),
),
]
6 changes: 3 additions & 3 deletions maybe/filters/move.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,15 +26,15 @@ def format_move(path_old, path_new):

SYSCALL_FILTERS["move"] = [
SyscallFilter(
name="rename",
syscall="rename",
format=lambda args: format_move(args[0], args[1]),
),
SyscallFilter(
name="renameat",
syscall="renameat",
format=lambda args: format_move(args[1], args[3]),
),
SyscallFilter(
name="renameat2",
syscall="renameat2",
format=lambda args: format_move(args[1], args[3]),
),
]
2 changes: 1 addition & 1 deletion maybe/maybe.py
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ def main(argv=sys.argv[1:]):

for filter_scope in filter_scopes:
for syscall_filter in SYSCALL_FILTERS[filter_scope]:
syscall_filters[syscall_filter.name] = syscall_filter
syscall_filters[syscall_filter.syscall] = syscall_filter

# Prevent python-ptrace from decoding arguments to keep raw numerical values
DIRFD_ARGUMENTS.clear()
Expand Down
2 changes: 1 addition & 1 deletion tests/test_basics.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ def test_syscall_filters():
# Verify that every filtered syscall is known to python-ptrace
for filter_scope in SYSCALL_FILTERS:
for syscall_filter in SYSCALL_FILTERS[filter_scope]:
assert syscall_filter.name in SYSCALL_PROTOTYPES
assert syscall_filter.syscall in SYSCALL_PROTOTYPES


def test_no_operations():
Expand Down

0 comments on commit 8be6b4d

Please sign in to comment.