@@ -21,6 +21,7 @@ header_template = """
2121#define LOG_FILE " {PYLOGFILE}"
2222
2323struct syscall {{
24+ char *name;
2425 long callnum;
2526 bool log;
2627 bool block;
@@ -39,7 +40,7 @@ struct syscall {{
3940
4041 struct syscall *next;
4142 struct syscall *prev;
42- }} syscall_default = {{-1, false, false, NULL, -1, NULL, -1, NULL, -1, NULL, -1, NULL, -1, NULL, -1, NULL, NULL}};
43+ }} syscall_default = {{NULL, -1, false, false, NULL, -1, NULL, -1, NULL, -1, NULL, -1, NULL, -1, NULL, -1, NULL, NULL}};
4344
4445typedef struct syscall syscall;
4546
@@ -52,7 +53,7 @@ return {FIRSTVARNAME};
5253
5354structbuild_template = {
5455 " var_define" : " syscall *{varname} = (struct syscall *) malloc(sizeof(syscall));\nmemcpy({varname}, &syscall_default, sizeof(syscall));\n" ,
55- " set_name" : ' {varname}->callnum = {name};\n' ,
56+ " set_name" : ' {varname}->name = (char *) malloc(strlen("{name}")+1);\nstrcpy({varname}->name, "{name}");\n{varname}-> callnum = {name};\n' ,
5657 " set_log" : " {varname}->log = {log};\n" ,
5758 " set_block" : " {varname}->block = {block};\n" ,
5859 " set_arg_char" : ' {varname}->{argname} = (char *) malloc(strlen("{arg}")+1);\nstrcpy({varname}->{argname}, "{arg}");\n' ,
@@ -200,7 +201,7 @@ class Syscall:
200201 if parsed.get(" log" ) is not None:
201202 call.log = bool(parsed.get(" log" ))
202203 if parsed.get(" block" ) is not None:
203- call.block = bool(parsed.get(" log " ))
204+ call.block = bool(parsed.get(" block " ))
204205 if parsed.get(" arg0" ) is not None:
205206 call.arg0 = str(parsed.get(" arg0" ))
206207 call.arg0_char = bool(parsed.get(" arg0_char" ))
0 commit comments