Lines Matching refs:arg

97 		     struct event_format *event, struct print_arg *arg);
796 static void free_arg(struct print_arg *arg) in free_arg() argument
800 if (!arg) in free_arg()
803 switch (arg->type) { in free_arg()
805 free(arg->atom.atom); in free_arg()
808 free(arg->field.name); in free_arg()
811 free_arg(arg->flags.field); in free_arg()
812 free(arg->flags.delim); in free_arg()
813 free_flag_sym(arg->flags.flags); in free_arg()
816 free_arg(arg->symbol.field); in free_arg()
817 free_flag_sym(arg->symbol.symbols); in free_arg()
821 free_arg(arg->hex.field); in free_arg()
822 free_arg(arg->hex.size); in free_arg()
825 free_arg(arg->int_array.field); in free_arg()
826 free_arg(arg->int_array.count); in free_arg()
827 free_arg(arg->int_array.el_size); in free_arg()
830 free(arg->typecast.type); in free_arg()
831 free_arg(arg->typecast.item); in free_arg()
835 free(arg->string.string); in free_arg()
838 free(arg->bitmask.bitmask); in free_arg()
842 free(arg->dynarray.index); in free_arg()
845 free(arg->op.op); in free_arg()
846 free_arg(arg->op.left); in free_arg()
847 free_arg(arg->op.right); in free_arg()
850 while (arg->func.args) { in free_arg()
851 farg = arg->func.args; in free_arg()
852 arg->func.args = farg->next; in free_arg()
862 free(arg); in free_arg()
1676 process_arg_token(struct event_format *event, struct print_arg *arg,
1680 process_arg(struct event_format *event, struct print_arg *arg, char **tok) in process_arg() argument
1688 return process_arg_token(event, arg, tok, type); in process_arg()
1692 process_op(struct event_format *event, struct print_arg *arg, char **tok);
1699 process_field_arg(struct event_format *event, struct print_arg *arg, char **tok) in process_field_arg() argument
1703 type = process_arg(event, arg, tok); in process_field_arg()
1706 type = process_op(event, arg, tok); in process_field_arg()
1715 struct print_arg *arg, *left, *right; in process_cond() local
1719 arg = alloc_arg(); in process_cond()
1723 if (!arg || !left || !right) { in process_cond()
1731 arg->type = PRINT_OP; in process_cond()
1732 arg->op.left = left; in process_cond()
1733 arg->op.right = right; in process_cond()
1751 arg->op.op = token; in process_cond()
1755 top->op.right = arg; in process_cond()
1764 free_arg(arg); in process_cond()
1771 struct print_arg *arg; in process_array() local
1775 arg = alloc_arg(); in process_array()
1776 if (!arg) { in process_array()
1784 type = process_arg(event, arg, &token); in process_array()
1788 top->op.right = arg; in process_array()
1798 free_arg(arg); in process_array()
1857 static int set_op_prio(struct print_arg *arg) in set_op_prio() argument
1861 if (!arg->op.left || arg->op.left->type == PRINT_NULL) in set_op_prio()
1862 arg->op.prio = 0; in set_op_prio()
1864 arg->op.prio = get_op_prio(arg->op.op); in set_op_prio()
1866 return arg->op.prio; in set_op_prio()
1871 process_op(struct event_format *event, struct print_arg *arg, char **tok) in process_op() argument
1880 if (arg->type == PRINT_OP && !arg->op.left) { in process_op()
1904 arg->op.left = left; in process_op()
1910 arg->op.right = right; in process_op()
1923 *left = *arg; in process_op()
1925 arg->type = PRINT_OP; in process_op()
1926 arg->op.op = token; in process_op()
1927 arg->op.left = left; in process_op()
1928 arg->op.prio = 0; in process_op()
1931 type = process_cond(event, arg, tok); in process_op()
1957 *left = *arg; in process_op()
1959 arg->type = PRINT_OP; in process_op()
1960 arg->op.op = token; in process_op()
1961 arg->op.left = left; in process_op()
1962 arg->op.right = NULL; in process_op()
1964 if (set_op_prio(arg) == -1) { in process_op()
1967 arg->op.op = NULL; in process_op()
1975 if ((strcmp(arg->op.op, "*") == 0) && in process_op()
1990 free(arg->op.op); in process_op()
1991 *arg = *left; in process_op()
2010 get_op_prio(arg->op.op) < get_op_prio(right->op.op)) { in process_op()
2014 arg->op.right = right->op.left; in process_op()
2016 tmp = *arg; in process_op()
2017 *arg = *right; in process_op()
2020 arg->op.left = right; in process_op()
2022 arg->op.right = right; in process_op()
2031 *left = *arg; in process_op()
2033 arg->type = PRINT_OP; in process_op()
2034 arg->op.op = token; in process_op()
2035 arg->op.left = left; in process_op()
2037 arg->op.prio = 0; in process_op()
2040 type = process_array(event, arg, tok); in process_op()
2055 if (prio > arg->op.prio) in process_op()
2056 return process_op(event, arg, tok); in process_op()
2072 process_entry(struct event_format *event __maybe_unused, struct print_arg *arg, in process_entry() argument
2086 arg->type = PRINT_FIELD; in process_entry()
2087 arg->field.name = field; in process_entry()
2090 arg->field.field = tep_find_any_field(event, arg->field.name); in process_entry()
2091 arg->field.field->flags |= FIELD_IS_FLAG; in process_entry()
2094 arg->field.field = tep_find_any_field(event, arg->field.name); in process_entry()
2095 arg->field.field->flags |= FIELD_IS_SYMBOLIC; in process_entry()
2143 static char *arg_eval (struct print_arg *arg);
2240 eval_type(unsigned long long val, struct print_arg *arg, int pointer) in eval_type() argument
2242 if (arg->type != PRINT_TYPE) { in eval_type()
2247 return eval_type_str(val, arg->typecast.type, pointer); in eval_type()
2250 static int arg_num_eval(struct print_arg *arg, long long *val) in arg_num_eval() argument
2255 switch (arg->type) { in arg_num_eval()
2257 *val = strtoll(arg->atom.atom, NULL, 0); in arg_num_eval()
2260 ret = arg_num_eval(arg->typecast.item, val); in arg_num_eval()
2263 *val = eval_type(*val, arg, 0); in arg_num_eval()
2266 switch (arg->op.op[0]) { in arg_num_eval()
2268 ret = arg_num_eval(arg->op.left, &left); in arg_num_eval()
2271 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2274 if (arg->op.op[1]) in arg_num_eval()
2280 ret = arg_num_eval(arg->op.left, &left); in arg_num_eval()
2283 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2286 if (arg->op.op[1]) in arg_num_eval()
2292 ret = arg_num_eval(arg->op.left, &left); in arg_num_eval()
2295 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2298 switch (arg->op.op[1]) { in arg_num_eval()
2309 do_warning("unknown op '%s'", arg->op.op); in arg_num_eval()
2314 ret = arg_num_eval(arg->op.left, &left); in arg_num_eval()
2317 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2320 switch (arg->op.op[1]) { in arg_num_eval()
2331 do_warning("unknown op '%s'", arg->op.op); in arg_num_eval()
2336 ret = arg_num_eval(arg->op.left, &left); in arg_num_eval()
2339 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2343 if (arg->op.op[1] != '=') { in arg_num_eval()
2344 do_warning("unknown op '%s'", arg->op.op); in arg_num_eval()
2350 ret = arg_num_eval(arg->op.left, &left); in arg_num_eval()
2353 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2357 switch (arg->op.op[1]) { in arg_num_eval()
2362 do_warning("unknown op '%s'", arg->op.op); in arg_num_eval()
2368 if (arg->op.left->type == PRINT_NULL) in arg_num_eval()
2371 ret = arg_num_eval(arg->op.left, &left); in arg_num_eval()
2374 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2380 if (arg->op.left->type == PRINT_NULL) in arg_num_eval()
2383 ret = arg_num_eval(arg->op.left, &left); in arg_num_eval()
2386 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2392 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2398 do_warning("unknown op '%s'", arg->op.op); in arg_num_eval()
2409 do_warning("invalid eval type %d", arg->type); in arg_num_eval()
2416 static char *arg_eval (struct print_arg *arg) in arg_eval() argument
2421 switch (arg->type) { in arg_eval()
2423 return arg->atom.atom; in arg_eval()
2425 return arg_eval(arg->typecast.item); in arg_eval()
2427 if (!arg_num_eval(arg, &val)) in arg_eval()
2438 do_warning("invalid eval type %d", arg->type); in arg_eval()
2449 struct print_arg *arg = NULL; in process_fields() local
2460 arg = alloc_arg(); in process_fields()
2461 if (!arg) in process_fields()
2465 type = process_arg(event, arg, &token); in process_fields()
2468 type = process_op(event, arg, &token); in process_fields()
2480 value = arg_eval(arg); in process_fields()
2487 free_arg(arg); in process_fields()
2488 arg = alloc_arg(); in process_fields()
2489 if (!arg) in process_fields()
2493 type = process_arg(event, arg, &token); in process_fields()
2497 value = arg_eval(arg); in process_fields()
2503 free_arg(arg); in process_fields()
2504 arg = NULL; in process_fields()
2519 free_arg(arg); in process_fields()
2527 process_flags(struct event_format *event, struct print_arg *arg, char **tok) in process_flags() argument
2533 memset(arg, 0, sizeof(*arg)); in process_flags()
2534 arg->type = PRINT_FLAGS; in process_flags()
2552 arg->flags.field = field; in process_flags()
2556 arg->flags.delim = token; in process_flags()
2563 type = process_fields(event, &arg->flags.flags, &token); in process_flags()
2580 process_symbols(struct event_format *event, struct print_arg *arg, char **tok) in process_symbols() argument
2586 memset(arg, 0, sizeof(*arg)); in process_symbols()
2587 arg->type = PRINT_SYMBOL; in process_symbols()
2600 arg->symbol.field = field; in process_symbols()
2602 type = process_fields(event, &arg->symbol.symbols, &token); in process_symbols()
2619 process_hex_common(struct event_format *event, struct print_arg *arg, in process_hex_common() argument
2622 memset(arg, 0, sizeof(*arg)); in process_hex_common()
2623 arg->type = type; in process_hex_common()
2625 if (alloc_and_process_delim(event, ",", &arg->hex.field)) in process_hex_common()
2628 if (alloc_and_process_delim(event, ")", &arg->hex.size)) in process_hex_common()
2634 free_arg(arg->hex.field); in process_hex_common()
2635 arg->hex.field = NULL; in process_hex_common()
2642 process_hex(struct event_format *event, struct print_arg *arg, char **tok) in process_hex() argument
2644 return process_hex_common(event, arg, tok, PRINT_HEX); in process_hex()
2648 process_hex_str(struct event_format *event, struct print_arg *arg, in process_hex_str() argument
2651 return process_hex_common(event, arg, tok, PRINT_HEX_STR); in process_hex_str()
2655 process_int_array(struct event_format *event, struct print_arg *arg, char **tok) in process_int_array() argument
2657 memset(arg, 0, sizeof(*arg)); in process_int_array()
2658 arg->type = PRINT_INT_ARRAY; in process_int_array()
2660 if (alloc_and_process_delim(event, ",", &arg->int_array.field)) in process_int_array()
2663 if (alloc_and_process_delim(event, ",", &arg->int_array.count)) in process_int_array()
2666 if (alloc_and_process_delim(event, ")", &arg->int_array.el_size)) in process_int_array()
2672 free_arg(arg->int_array.count); in process_int_array()
2673 arg->int_array.count = NULL; in process_int_array()
2675 free_arg(arg->int_array.field); in process_int_array()
2676 arg->int_array.field = NULL; in process_int_array()
2683 process_dynamic_array(struct event_format *event, struct print_arg *arg, char **tok) in process_dynamic_array() argument
2689 memset(arg, 0, sizeof(*arg)); in process_dynamic_array()
2690 arg->type = PRINT_DYNAMIC_ARRAY; in process_dynamic_array()
2707 arg->dynarray.field = field; in process_dynamic_array()
2708 arg->dynarray.index = 0; in process_dynamic_array()
2720 arg = alloc_arg(); in process_dynamic_array()
2721 if (!arg) { in process_dynamic_array()
2727 type = process_arg(event, arg, &token); in process_dynamic_array()
2739 free_arg(arg); in process_dynamic_array()
2747 process_dynamic_array_len(struct event_format *event, struct print_arg *arg, in process_dynamic_array_len() argument
2757 arg->type = PRINT_DYNAMIC_ARRAY_LEN; in process_dynamic_array_len()
2764 arg->dynarray.field = field; in process_dynamic_array_len()
2765 arg->dynarray.index = 0; in process_dynamic_array_len()
2783 process_paren(struct event_format *event, struct print_arg *arg, char **tok) in process_paren() argument
2789 type = process_arg(event, arg, &token); in process_paren()
2795 type = process_op(event, arg, &token); in process_paren()
2816 if (arg->type != PRINT_ATOM) { in process_paren()
2828 arg->type = PRINT_TYPE; in process_paren()
2829 arg->typecast.type = arg->atom.atom; in process_paren()
2830 arg->typecast.item = item_arg; in process_paren()
2846 process_str(struct event_format *event __maybe_unused, struct print_arg *arg, in process_str() argument
2855 arg->type = PRINT_STRING; in process_str()
2856 arg->string.string = token; in process_str()
2857 arg->string.offset = -1; in process_str()
2875 process_bitmask(struct event_format *event __maybe_unused, struct print_arg *arg, in process_bitmask() argument
2884 arg->type = PRINT_BITMASK; in process_bitmask()
2885 arg->bitmask.bitmask = token; in process_bitmask()
2886 arg->bitmask.offset = -1; in process_bitmask()
2937 struct print_arg *arg, char **tok) in process_func_handler() argument
2945 arg->type = PRINT_FUNC; in process_func_handler()
2946 arg->func.func = func; in process_func_handler()
2950 next_arg = &(arg->func.args); in process_func_handler()
2994 process_function(struct event_format *event, struct print_arg *arg, in process_function() argument
3002 return process_flags(event, arg, tok); in process_function()
3007 return process_symbols(event, arg, tok); in process_function()
3011 return process_hex(event, arg, tok); in process_function()
3015 return process_hex_str(event, arg, tok); in process_function()
3019 return process_int_array(event, arg, tok); in process_function()
3023 return process_str(event, arg, tok); in process_function()
3027 return process_bitmask(event, arg, tok); in process_function()
3031 return process_dynamic_array(event, arg, tok); in process_function()
3035 return process_dynamic_array_len(event, arg, tok); in process_function()
3041 return process_func_handler(event, func, arg, tok); in process_function()
3050 process_arg_token(struct event_format *event, struct print_arg *arg, in process_arg_token() argument
3062 type = process_entry(event, arg, &token); in process_arg_token()
3077 type = process_function(event, arg, atom, &token); in process_arg_token()
3098 arg->type = PRINT_ATOM; in process_arg_token()
3099 arg->atom.atom = atom; in process_arg_token()
3104 arg->type = PRINT_ATOM; in process_arg_token()
3105 arg->atom.atom = token; in process_arg_token()
3111 type = process_paren(event, arg, &token); in process_arg_token()
3116 arg->type = PRINT_OP; in process_arg_token()
3117 arg->op.op = token; in process_arg_token()
3118 arg->op.left = NULL; in process_arg_token()
3119 type = process_op(event, arg, &token); in process_arg_token()
3123 arg->op.op = NULL; in process_arg_token()
3141 struct print_arg *arg; in event_read_print_args() local
3151 arg = alloc_arg(); in event_read_print_args()
3152 if (!arg) { in event_read_print_args()
3158 type = process_arg(event, arg, &token); in event_read_print_args()
3162 free_arg(arg); in event_read_print_args()
3166 *list = arg; in event_read_print_args()
3170 type = process_op(event, arg, &token); in event_read_print_args()
3174 free_arg(arg); in event_read_print_args()
3177 list = &arg->next; in event_read_print_args()
3183 *list = arg; in event_read_print_args()
3184 list = &arg->next; in event_read_print_args()
3524 eval_num_arg(void *data, int size, struct event_format *event, struct print_arg *arg) in eval_num_arg() argument
3534 switch (arg->type) { in eval_num_arg()
3539 return strtoull(arg->atom.atom, NULL, 0); in eval_num_arg()
3541 if (!arg->field.field) { in eval_num_arg()
3542 arg->field.field = tep_find_any_field(event, arg->field.name); in eval_num_arg()
3543 if (!arg->field.field) in eval_num_arg()
3548 val = tep_read_number(pevent, data + arg->field.field->offset, in eval_num_arg()
3549 arg->field.field->size); in eval_num_arg()
3558 val = eval_num_arg(data, size, event, arg->typecast.item); in eval_num_arg()
3559 return eval_type(val, arg, 0); in eval_num_arg()
3567 val = process_defined_func(&s, data, size, event, arg); in eval_num_arg()
3572 if (strcmp(arg->op.op, "[") == 0) { in eval_num_arg()
3577 right = eval_num_arg(data, size, event, arg->op.right); in eval_num_arg()
3580 larg = arg->op.left; in eval_num_arg()
3610 arg = larg; in eval_num_arg()
3626 } else if (strcmp(arg->op.op, "?") == 0) { in eval_num_arg()
3627 left = eval_num_arg(data, size, event, arg->op.left); in eval_num_arg()
3628 arg = arg->op.right; in eval_num_arg()
3630 val = eval_num_arg(data, size, event, arg->op.left); in eval_num_arg()
3632 val = eval_num_arg(data, size, event, arg->op.right); in eval_num_arg()
3636 left = eval_num_arg(data, size, event, arg->op.left); in eval_num_arg()
3637 right = eval_num_arg(data, size, event, arg->op.right); in eval_num_arg()
3638 switch (arg->op.op[0]) { in eval_num_arg()
3640 switch (arg->op.op[1]) { in eval_num_arg()
3655 if (arg->op.op[1]) in eval_num_arg()
3661 if (arg->op.op[1]) in eval_num_arg()
3667 switch (arg->op.op[1]) { in eval_num_arg()
3682 switch (arg->op.op[1]) { in eval_num_arg()
3697 if (arg->op.op[1] != '=') in eval_num_arg()
3723 data + arg->dynarray.field->offset, in eval_num_arg()
3724 arg->dynarray.field->size); in eval_num_arg()
3735 data + arg->dynarray.field->offset, in eval_num_arg()
3736 arg->dynarray.field->size); in eval_num_arg()
3751 do_warning_event(event, "%s: unknown op '%s'", __func__, arg->op.op); in eval_num_arg()
3756 __func__, arg->field.name); in eval_num_arg()
3865 int len_arg, struct print_arg *arg) in print_str_arg() argument
3878 switch (arg->type) { in print_str_arg()
3883 print_str_to_seq(s, format, len_arg, arg->atom.atom); in print_str_arg()
3886 field = arg->field.field; in print_str_arg()
3888 field = tep_find_any_field(event, arg->field.name); in print_str_arg()
3890 str = arg->field.name; in print_str_arg()
3893 arg->field.field = field; in print_str_arg()
3943 val = eval_num_arg(data, size, event, arg->flags.field); in print_str_arg()
3945 for (flag = arg->flags.flags; flag; flag = flag->next) { in print_str_arg()
3952 if (print && arg->flags.delim) in print_str_arg()
3953 trace_seq_puts(s, arg->flags.delim); in print_str_arg()
3960 if (print && arg->flags.delim) in print_str_arg()
3961 trace_seq_puts(s, arg->flags.delim); in print_str_arg()
3966 val = eval_num_arg(data, size, event, arg->symbol.field); in print_str_arg()
3967 for (flag = arg->symbol.symbols; flag; flag = flag->next) { in print_str_arg()
3979 if (arg->hex.field->type == PRINT_DYNAMIC_ARRAY) { in print_str_arg()
3982 data + arg->hex.field->dynarray.field->offset, in print_str_arg()
3983 arg->hex.field->dynarray.field->size); in print_str_arg()
3986 field = arg->hex.field->field.field; in print_str_arg()
3988 str = arg->hex.field->field.name; in print_str_arg()
3992 arg->hex.field->field.field = field; in print_str_arg()
3996 len = eval_num_arg(data, size, event, arg->hex.size); in print_str_arg()
3998 if (i && arg->type == PRINT_HEX) in print_str_arg()
4008 if (arg->int_array.field->type == PRINT_DYNAMIC_ARRAY) { in print_str_arg()
4011 arg->int_array.field->dynarray.field; in print_str_arg()
4017 field = arg->int_array.field->field.field; in print_str_arg()
4019 str = arg->int_array.field->field.name; in print_str_arg()
4023 arg->int_array.field->field.field = field; in print_str_arg()
4027 len = eval_num_arg(data, size, event, arg->int_array.count); in print_str_arg()
4029 arg->int_array.el_size); in print_str_arg()
4057 if (arg->string.offset == -1) { in print_str_arg()
4060 f = tep_find_any_field(event, arg->string.string); in print_str_arg()
4061 arg->string.offset = f->offset; in print_str_arg()
4063 str_offset = data2host4(pevent, data + arg->string.offset); in print_str_arg()
4069 print_str_to_seq(s, format, len_arg, arg->string.string); in print_str_arg()
4075 if (arg->bitmask.offset == -1) { in print_str_arg()
4078 f = tep_find_any_field(event, arg->bitmask.bitmask); in print_str_arg()
4079 arg->bitmask.offset = f->offset; in print_str_arg()
4081 bitmask_offset = data2host4(pevent, data + arg->bitmask.offset); in print_str_arg()
4092 if (arg->op.op[0] != '?') in print_str_arg()
4094 val = eval_num_arg(data, size, event, arg->op.left); in print_str_arg()
4097 format, len_arg, arg->op.right->op.left); in print_str_arg()
4100 format, len_arg, arg->op.right->op.right); in print_str_arg()
4103 process_defined_func(s, data, size, event, arg); in print_str_arg()
4114 __func__, arg->field.name); in print_str_arg()
4119 struct event_format *event, struct print_arg *arg) in process_defined_func() argument
4121 struct tep_function_handler *func_handle = arg->func.func; in process_defined_func()
4138 farg = arg->func.args; in process_defined_func()
4218 struct print_arg *args, *arg, **next; in make_bprint_args() local
4253 arg = args; in make_bprint_args()
4254 arg->next = NULL; in make_bprint_args()
4255 next = &arg->next; in make_bprint_args()
4257 arg->type = PRINT_ATOM; in make_bprint_args()
4259 if (asprintf(&arg->atom.atom, "%lld", ip) < 0) in make_bprint_args()
4338 arg = alloc_arg(); in make_bprint_args()
4339 if (!arg) { in make_bprint_args()
4344 arg->next = NULL; in make_bprint_args()
4345 arg->type = PRINT_ATOM; in make_bprint_args()
4346 if (asprintf(&arg->atom.atom, "%lld", val) < 0) { in make_bprint_args()
4347 free(arg); in make_bprint_args()
4350 *next = arg; in make_bprint_args()
4351 next = &arg->next; in make_bprint_args()
4362 arg = alloc_arg(); in make_bprint_args()
4363 if (!arg) { in make_bprint_args()
4368 arg->next = NULL; in make_bprint_args()
4369 arg->type = PRINT_BSTRING; in make_bprint_args()
4370 arg->string.string = strdup(bptr); in make_bprint_args()
4371 if (!arg->string.string) in make_bprint_args()
4374 *next = arg; in make_bprint_args()
4375 next = &arg->next; in make_bprint_args()
4426 struct event_format *event, struct print_arg *arg) in print_mac_arg() argument
4431 if (arg->type == PRINT_FUNC) { in print_mac_arg()
4432 process_defined_func(s, data, size, event, arg); in print_mac_arg()
4436 if (arg->type != PRINT_FIELD) { in print_mac_arg()
4438 arg->type); in print_mac_arg()
4444 if (!arg->field.field) { in print_mac_arg()
4445 arg->field.field = in print_mac_arg()
4446 tep_find_any_field(event, arg->field.name); in print_mac_arg()
4447 if (!arg->field.field) { in print_mac_arg()
4449 __func__, arg->field.name); in print_mac_arg()
4453 if (arg->field.field->size != 6) { in print_mac_arg()
4457 buf = data + arg->field.field->offset; in print_mac_arg()
4580 struct print_arg *arg) in print_ipv4_arg() argument
4584 if (arg->type == PRINT_FUNC) { in print_ipv4_arg()
4585 process_defined_func(s, data, size, event, arg); in print_ipv4_arg()
4589 if (arg->type != PRINT_FIELD) { in print_ipv4_arg()
4590 trace_seq_printf(s, "ARG TYPE NOT FIELD BUT %d", arg->type); in print_ipv4_arg()
4594 if (!arg->field.field) { in print_ipv4_arg()
4595 arg->field.field = in print_ipv4_arg()
4596 tep_find_any_field(event, arg->field.name); in print_ipv4_arg()
4597 if (!arg->field.field) { in print_ipv4_arg()
4599 __func__, arg->field.name); in print_ipv4_arg()
4604 buf = data + arg->field.field->offset; in print_ipv4_arg()
4606 if (arg->field.field->size != 4) { in print_ipv4_arg()
4617 struct print_arg *arg) in print_ipv6_arg() argument
4630 if (arg->type == PRINT_FUNC) { in print_ipv6_arg()
4631 process_defined_func(s, data, size, event, arg); in print_ipv6_arg()
4635 if (arg->type != PRINT_FIELD) { in print_ipv6_arg()
4636 trace_seq_printf(s, "ARG TYPE NOT FIELD BUT %d", arg->type); in print_ipv6_arg()
4640 if (!arg->field.field) { in print_ipv6_arg()
4641 arg->field.field = in print_ipv6_arg()
4642 tep_find_any_field(event, arg->field.name); in print_ipv6_arg()
4643 if (!arg->field.field) { in print_ipv6_arg()
4645 __func__, arg->field.name); in print_ipv6_arg()
4650 buf = data + arg->field.field->offset; in print_ipv6_arg()
4652 if (arg->field.field->size != 16) { in print_ipv6_arg()
4667 struct print_arg *arg) in print_ipsa_arg() argument
4688 if (arg->type == PRINT_FUNC) { in print_ipsa_arg()
4689 process_defined_func(s, data, size, event, arg); in print_ipsa_arg()
4693 if (arg->type != PRINT_FIELD) { in print_ipsa_arg()
4694 trace_seq_printf(s, "ARG TYPE NOT FIELD BUT %d", arg->type); in print_ipsa_arg()
4698 if (!arg->field.field) { in print_ipsa_arg()
4699 arg->field.field = in print_ipsa_arg()
4700 tep_find_any_field(event, arg->field.name); in print_ipsa_arg()
4701 if (!arg->field.field) { in print_ipsa_arg()
4703 __func__, arg->field.name); in print_ipsa_arg()
4708 sa = (struct sockaddr_storage *) (data + arg->field.field->offset); in print_ipsa_arg()
4713 if (arg->field.field->size < sizeof(struct sockaddr_in)) { in print_ipsa_arg()
4726 if (arg->field.field->size < sizeof(struct sockaddr_in6)) { in print_ipsa_arg()
4749 struct print_arg *arg) in print_ip_arg() argument
4764 rc += print_ipv4_arg(s, ptr, i, data, size, event, arg); in print_ip_arg()
4767 rc += print_ipv6_arg(s, ptr, i, data, size, event, arg); in print_ip_arg()
4770 rc += print_ipsa_arg(s, ptr, i, data, size, event, arg); in print_ip_arg()
4871 struct print_arg *arg = print_fmt->args; in pretty_print() local
4895 arg = args; in pretty_print()
4945 if (!arg) { in pretty_print()
4950 len_arg = eval_num_arg(data, size, event, arg); in pretty_print()
4952 arg = arg->next; in pretty_print()
4969 if (arg->type == PRINT_BSTRING) { in pretty_print()
4970 trace_seq_puts(s, arg->string.string); in pretty_print()
4978 print_mac_arg(s, *ptr, data, size, event, arg); in pretty_print()
4979 arg = arg->next; in pretty_print()
4984 n = print_ip_arg(s, ptr, data, size, event, arg); in pretty_print()
4987 arg = arg->next; in pretty_print()
4998 if (!arg) { in pretty_print()
5017 val = eval_num_arg(data, size, event, arg); in pretty_print()
5018 arg = arg->next; in pretty_print()
5080 if (!arg) { in pretty_print()
5103 format, len_arg, arg); in pretty_print()
5107 arg = arg->next; in pretty_print()
6093 struct print_arg *arg, **list; in __tep_parse_format() local
6098 arg = alloc_arg(); in __tep_parse_format()
6099 if (!arg) { in __tep_parse_format()
6103 arg->type = PRINT_FIELD; in __tep_parse_format()
6104 arg->field.name = strdup(field->name); in __tep_parse_format()
6105 if (!arg->field.name) { in __tep_parse_format()
6107 free_arg(arg); in __tep_parse_format()
6110 arg->field.field = field; in __tep_parse_format()
6111 *list = arg; in __tep_parse_format()
6112 list = &arg->next; in __tep_parse_format()