func: static int stonesoup_ev_handler(struct mg_connection *conn, enum mg_event ev) char * ifmatch_header ; char * stonesoup_tainted_buff ; int buffer_size = 1000 ; if ( ev == MG_REQUEST )  ifmatch_header = ( char * ) mg_get_header ( conn , "if-match" ); if ( strcmp ( ifmatch_header , "weak_taint_source_value" ) == 0 )  while ( 1 )  stonesoup_tainted_buff = ( char * ) malloc ( buffer_size * sizeof ( char ) ); data_size = mg_get_var ( conn , "data" , stonesoup_tainted_buff , buffer_size * sizeof ( char ) ); if ( data_size < buffer_size )  buffer_size = buffer_size * 2; free ( stonesoup_tainted_buff ); stonesoup_handle_taint ( stonesoup_tainted_buff ); void stonesoup_handle_taint(char *gonydial_blowlamp) if ( gonydial_blowlamp != 0 )  dacryopyorrhea_convertoplane . gangplank_whipstock = gonydial_blowlamp; housecleaning_shorteners = & dacryopyorrhea_convertoplane; if ( ( * housecleaning_shorteners ) . gangplank_whipstock != 0 )  septettes_mortice = ( ( char * ) ( * housecleaning_shorteners ) . gangplank_whipstock ); stonesoup_files = fopen ( septettes_mortice , "rb" ); if ( stonesoup_files != 0 )  if ( fscanf ( stonesoup_files , "%79s" , stonesoup_filename ) == 1 )  fclose ( stonesoup_files ); if ( ( * housecleaning_shorteners ) . gangplank_whipstock != 0 )  free ( ( ( char * ) ( * housecleaning_shorteners ) . gangplank_whipstock ) ); 