char * action_set_to_string(struct action_set *set) { char *str; size_t str_size; FILE *stream = open_memstream(&str, &str_size); action_set_print(stream, set); fclose(stream); return str; }
char * packet_to_string(struct packet *pkt) { char *str; size_t str_size; FILE *stream = open_memstream(&str, &str_size); fprintf(stream, "pkt{in=\""); ofl_port_print(stream, pkt->in_port); fprintf(stream, "\", actset="); action_set_print(stream, pkt->action_set); fprintf(stream, ", pktout=\"%u\", ogrp=\"", pkt->packet_out); ofl_group_print(stream, pkt->out_group); fprintf(stream, "\", oprt=\""); ofl_port_print(stream, pkt->out_port); fprintf(stream, "\", buffer=\""); ofl_buffer_print(stream, pkt->buffer_id); fprintf(stream, "\", std="); //packet_handle_std_print(stream, pkt->handle_std); fprintf(stream, "}"); fclose(stream); return str; }