Skip to content

Instantly share code, notes, and snippets.

@simmsb
Created October 20, 2020 15:16
Show Gist options
  • Save simmsb/710139853c7ba8f78ebe1c0efdbdf6bf to your computer and use it in GitHub Desktop.
Save simmsb/710139853c7ba8f78ebe1c0efdbdf6bf to your computer and use it in GitHub Desktop.
struct packet
{ char * pkt;
uint32_t idx;
};
struct JPv4_h
{ uint32_t dstAddr;
uint32_t srcAddr;
uint16_t hdrChecksum;
uint8_t protocol;
uint8_t ttl;
uint16_t fragOffset;
uint8_t flags;
uint16_t identification;
uint16_t totalLen;
uint8_t diffserv;
uint8_t ihl;
uint8_t version;
};
struct Ethernet_h
{ uint16_t etherType;
uint64_t srcAddr;
uint64_t dstAddr;
};
struct Headers_t
{ struct JPv4_h ipv4;
struct Ethernet_h ethernet;
};
struct match_tree_node
{ int16_t offsets[(16)];
uint16_t action_idx;
uint16_t param_idx;
};
union test_tbl_0_param_union
{ struct arg_table_test_tbl_0_NoAction_0 arg_table_test_tbl_0_NoAction_0;
struct arg_table_test_tbl_0_mod_nw_tos arg_table_test_tbl_0_mod_nw_tos;
};
struct arg_table_test_tbl_0_NoAction_0
{ char unused;
};
enum ubpf_action {REDJRECT , PASS , DROP , ABORT};
struct standard_metadata
{ uint32_t clone_port;
_Bool clone;
uint32_t output_port;
enum ubpf_action output_action;
uint32_t packet_length;
uint32_t input_port;
};
struct arg_table_test_tbl_0_mod_nw_tos
{ uint32_t out_port;
};
struct test_tbl_0
{ uint8_t action_run;
_Bool miss;
_Bool hit;
};
struct metadata
{ char unused;
};
struct match_tree_node test_tbl_0_search_trie[(47)] = {((struct match_tree_node){.offsets = {(0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0)}, .action_idx = (1), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (7), (43), (43), (43), (43), (43), (43), (43), (43), (43), (43), (43), (43), (43), (43)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (41), (41), (41), (41), (41), (41), (41), (41), (41), (41), (41), (41), (41), (41), (41)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (38), (38), (38), (38), (38), (38), (38), (38), (38), (38), (38), (38), (38), (38), (38)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (34), (34), (34), (34), (34), (34), (34), (34), (34), (34), (34), (34), (34), (34), (34)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (29), (29), (29), (29), (29), (29), (29), (29), (29), (29), (29), (29), (29), (29), (29)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (23), (23), (23), (23), (23), (23), (23), (23), (23), (23), (23), (23), (23), (23), (23)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (16), (16), (16), (16), (16), (16), (16), (16), (16), (16), (16), (16), (16), (16), (16)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0)}, .action_idx = (1), .param_idx = (1)}), ((struct match_tree_node){.offsets = {(0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0)}, .action_idx = (1), .param_idx = (2)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0)}, .action_idx = (1), .param_idx = (2)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0)}, .action_idx = (1), .param_idx = (2)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0)}, .action_idx = (1), .param_idx = (2)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0)}, .action_idx = (1), .param_idx = (2)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0)}, .action_idx = (1), .param_idx = (2)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0)}, .action_idx = (1), .param_idx = (2)}), ((struct match_tree_node){.offsets = {(-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1), (-1)}, .action_idx = (0), .param_idx = (0)}), ((struct match_tree_node){.offsets = {(0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0), (0)}, .action_idx = (1), .param_idx = (2)}), ((struct match_tree_node){.offsets = {(-38), (-29), (-29), (-29), (-29), (-29), (-29), (-29), (-29), (-29), (-29), (-29), (-29), (-29), (-29), (-29)}, .action_idx = (0), .param_idx = (0)})};
union test_tbl_0_param_union arg_table_test_tbl_0_entries[] = {((union test_tbl_0_param_union){.arg_table_test_tbl_0_mod_nw_tos = ((struct arg_table_test_tbl_0_mod_nw_tos){.out_port = (1)})}), ((union test_tbl_0_param_union){.arg_table_test_tbl_0_mod_nw_tos = ((struct arg_table_test_tbl_0_mod_nw_tos){.out_port = (0)})}), ((union test_tbl_0_param_union){.arg_table_test_tbl_0_mod_nw_tos = ((struct arg_table_test_tbl_0_mod_nw_tos){.out_port = (2)})})};
void pipe(struct Headers_t * hdr, struct metadata * meta, struct standard_metadata * std_meta) {
uint8_t i0_0;
(i0_0) = (0);
uint32_t tmp_var_5 = ((*(std_meta)).input_port);
struct match_tree_node * tmp_var_6 = ((test_tbl_0_search_trie)[46]);
(tmp_var_6) = ((table_trie_driver_w8)((tmp_var_6), (tmp_var_5)));
_Bool tmp_var_23;
switch ((tmp_var_6)->action_idx) {
{default: {(tmp_var_23) = (false);};
case (1): {(tmp_var_23) = (true);
uint32_t tmp_var_7 = ((((arg_table_test_tbl_0_entries)[(tmp_var_6)->param_idx]).arg_table_test_tbl_0_mod_nw_tos).out_port);
uint32_t tmp_var_14 = (tmp_var_7);
struct standard_metadata * tmp_var_15 = (&(*(std_meta)));
struct standard_metadata tmp_var_16 = (*(tmp_var_15));
uint32_t * tmp_var_17 = (&(out_port));
uint32_t tmp_var_18 = (*(tmp_var_17));
struct Headers_t * tmp_var_19 = (&(*(hdr)));
struct Headers_t tmp_var_20 = (*(tmp_var_19));
uint8_t * tmp_var_21 = (&(i0_0));
uint8_t tmp_var_22 = (*(tmp_var_21));
(mod_nw_tos)((tmp_var_14), (&(tmp_var_16)), (&(tmp_var_18)), (&(tmp_var_20)), (&(tmp_var_22)));
(*(tmp_var_15)) = (tmp_var_16);
(*(tmp_var_17)) = (tmp_var_18);
(*(tmp_var_19)) = (tmp_var_20);
(*(tmp_var_21)) = (tmp_var_22);
0;
break;};
case (0): {(tmp_var_23) = (false);
(NoAction_0)();
0;
break;};}
};
(struct test_tbl_0){.action_run = ((tmp_var_6)->action_idx), .miss = (~(tmp_var_23)), .hit = (tmp_var_23)};
}
struct match_tree_node * table_trie_driver_w8(struct match_tree_node * node, uint32_t value) {
size_t idx;
for ((idx) = (0); (idx) < (8); ++(idx)) {
{(node) += (((node)->offsets)[((value) >> ((32) - ((idx) * (4)))) & (((1) << (4)) - (1))]);}
};
return node;
}
void emit_packet_Ethernet_h(struct packet * pkt, struct Ethernet_h * value) {
uint64_t tmp_var_26 = ((htonll)((((*(value)).dstAddr) << (16))));
char * tmp_var_27 = (&(tmp_var_26));
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (0)) = ((tmp_var_27)[0]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (1)) = ((tmp_var_27)[1]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (2)) = ((tmp_var_27)[2]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (3)) = ((tmp_var_27)[3]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (4)) = ((tmp_var_27)[4]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (5)) = ((tmp_var_27)[5]);
((pkt)->idx) += (48);
uint64_t tmp_var_28 = ((htonll)((((*(value)).srcAddr) << (16))));
char * tmp_var_29 = (&(tmp_var_28));
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (0)) = ((tmp_var_29)[0]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (1)) = ((tmp_var_29)[1]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (2)) = ((tmp_var_29)[2]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (3)) = ((tmp_var_29)[3]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (4)) = ((tmp_var_29)[4]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (5)) = ((tmp_var_29)[5]);
((pkt)->idx) += (48);
uint16_t tmp_var_30 = ((htons)((((*(value)).etherType) << (0))));
char * tmp_var_31 = (&(tmp_var_30));
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (0)) = ((tmp_var_31)[0]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (1)) = ((tmp_var_31)[1]);
((pkt)->idx) += (16);
}
void main(void) {
(pipe)();
(dprs)();
}
void mod_nw_tos(uint32_t out_port, struct standard_metadata std_meta, uint32_t out_port, struct Headers_t hdr, uint8_t i0_0) {
(((*(hdr)).ipv4).diffserv) = ((*(i0_0)) + (1));
((*(std_meta)).output_action) = (REDJRECT);
((*(std_meta)).output_port) = (*(out_port));
(*(i0_0)) = ((*(i0_0)) + (1));
}
void dprs(struct packet packet, struct Headers_t hdr) {
struct packet * tmp_var_32 = (&(packet));
struct packet tmp_var_33 = (*(tmp_var_32));
struct Ethernet_h * tmp_var_34 = (&((hdr).ethernet));
struct Ethernet_h tmp_var_35 = (*(tmp_var_34));
(emit_packet_Ethernet_h)((&(tmp_var_33)), (&(tmp_var_35)));
(*(tmp_var_32)) = (tmp_var_33);
(*(tmp_var_34)) = (tmp_var_35);
struct packet * tmp_var_60 = (&(packet));
struct packet tmp_var_61 = (*(tmp_var_60));
struct JPv4_h * tmp_var_62 = (&((hdr).ipv4));
struct JPv4_h tmp_var_63 = (*(tmp_var_62));
(emit_packet_JPv4_h)((&(tmp_var_61)), (&(tmp_var_63)));
(*(tmp_var_60)) = (tmp_var_61);
(*(tmp_var_62)) = (tmp_var_63);
}
void NoAction_0(void) {
0;
}
void write_partial(uint8_t * addr, uint8_t width, uint8_t shift, uint8_t value) {
((*(addr)) = ((*(addr)) & (~(((((uint8_t)(1)) << (width)) - ((uint8_t)(1))) << (shift))))) | ((value) << (shift));
}
void emit_packet_JPv4_h(struct packet * pkt, struct JPv4_h * value) {
uint8_t tmp_var_36 = ((*(value)).version);
char * tmp_var_37 = (&(tmp_var_36));
(write_partial)((&((((pkt)->pkt) + (((pkt)->idx) * (8))) + (0))), (4), (4), (((tmp_var_37)[0]) >> (0)));
((pkt)->idx) += (4);
uint8_t tmp_var_38 = ((*(value)).ihl);
char * tmp_var_39 = (&(tmp_var_38));
(write_partial)((&((((pkt)->pkt) + (((pkt)->idx) * (8))) + (0))), (4), (0), (((tmp_var_39)[0]) >> (0)));
((pkt)->idx) += (4);
uint8_t tmp_var_40 = ((*(value)).diffserv);
char * tmp_var_41 = (&(tmp_var_40));
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (0)) = ((tmp_var_41)[0]);
((pkt)->idx) += (8);
uint16_t tmp_var_42 = ((htons)((((*(value)).totalLen) << (0))));
char * tmp_var_43 = (&(tmp_var_42));
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (0)) = ((tmp_var_43)[0]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (1)) = ((tmp_var_43)[1]);
((pkt)->idx) += (16);
uint16_t tmp_var_44 = ((htons)((((*(value)).identification) << (0))));
char * tmp_var_45 = (&(tmp_var_44));
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (0)) = ((tmp_var_45)[0]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (1)) = ((tmp_var_45)[1]);
((pkt)->idx) += (16);
uint8_t tmp_var_46 = ((*(value)).flags);
char * tmp_var_47 = (&(tmp_var_46));
(write_partial)((&((((pkt)->pkt) + (((pkt)->idx) * (8))) + (0))), (3), (5), (((tmp_var_47)[0]) >> (0)));
((pkt)->idx) += (3);
uint16_t tmp_var_48 = ((htons)((((*(value)).fragOffset) << (3))));
char * tmp_var_49 = (&(tmp_var_48));
(write_partial)((&((((pkt)->pkt) + (((pkt)->idx) * (8))) + (0))), (5), (0), (((tmp_var_49)[0]) >> (3)));
(write_partial)(((&((((pkt)->pkt) + (((pkt)->idx) * (8))) + (0))) + (1)), (3), (5), ((tmp_var_49)[0]));
(write_partial)((&((((pkt)->pkt) + (((pkt)->idx) * (8))) + (1))), (5), (3), (((tmp_var_49)[1]) >> (3)));
((pkt)->idx) += (13);
uint8_t tmp_var_50 = ((*(value)).ttl);
char * tmp_var_51 = (&(tmp_var_50));
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (0)) = ((tmp_var_51)[0]);
((pkt)->idx) += (8);
uint8_t tmp_var_52 = ((*(value)).protocol);
char * tmp_var_53 = (&(tmp_var_52));
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (0)) = ((tmp_var_53)[0]);
((pkt)->idx) += (8);
uint16_t tmp_var_54 = ((htons)((((*(value)).hdrChecksum) << (0))));
char * tmp_var_55 = (&(tmp_var_54));
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (0)) = ((tmp_var_55)[0]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (1)) = ((tmp_var_55)[1]);
((pkt)->idx) += (16);
uint32_t tmp_var_56 = ((htonl)((((*(value)).srcAddr) << (0))));
char * tmp_var_57 = (&(tmp_var_56));
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (0)) = ((tmp_var_57)[0]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (1)) = ((tmp_var_57)[1]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (2)) = ((tmp_var_57)[2]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (3)) = ((tmp_var_57)[3]);
((pkt)->idx) += (32);
uint32_t tmp_var_58 = ((htonl)((((*(value)).dstAddr) << (0))));
char * tmp_var_59 = (&(tmp_var_58));
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (0)) = ((tmp_var_59)[0]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (1)) = ((tmp_var_59)[1]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (2)) = ((tmp_var_59)[2]);
((((pkt)->pkt) + (((pkt)->idx) * (8))) + (3)) = ((tmp_var_59)[3]);
((pkt)->idx) += (32);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment