(/home/sate/Testcases/c/cve/wireshark-1.2.0/tap-rtp.c) |
| |
| 63 | | | rtp_streams_stat_draw(void *arg _U_) |
| 64 | | | { |
| 65 | | | |
| 66 | | | |
| 67 | | | GList *list; |
| 68 | | | rtp_stream_info_t* strinfo; |
| 69 | | | gchar *payload_type; |
| 70 | | | guint32 expected; |
| 71 | | | gint32 lost; |
| 72 | | | double perc; |
| 73 | | | char *savelocale; |
| 74 | | | |
| 75 | | | printf("========================= RTP Streams ========================\n"); |
| 76 | | | printf("%15s %5s %15s %5s %10s %16s %5s %12s %15s %15s %15s %s\n","Src IP addr", "Port", "Dest IP addr", "Port", "SSRC", "Payload", "Pkts", "Lost", "Max Delta(ms)", "Max Jitter(ms)", "Mean Jitter(ms)", "Problems?"); |
| 77 | | | |
| 78 | | | |
| 79 | | | savelocale = setlocale(LC_NUMERIC, NULL);
x /usr/include/locale.h |
| |
37 | #define LC_NUMERIC __LC_NUMERIC |
| |
|
Unreachable Call
The highlighted code will not execute under any circumstances. This may be because of: |
|
| 80 | | | |
| 81 | | | |
| 82 | | | setlocale(LC_NUMERIC, "C");
x /usr/include/locale.h |
| |
37 | #define LC_NUMERIC __LC_NUMERIC |
| |
|
| 83 | | | |
| 84 | | | list = the_tapinfo_struct.strinfo_list; |
| 85 | | | |
| 86 | | | list = g_list_first(list); |
| 87 | | | while (list) |
| 88 | | | { |
| 89 | | | strinfo = (rtp_stream_info_t*)(list->data); |
| 90 | | | |
| 91 | | | |
| 92 | | | if(strinfo->pt>95){ |
| 93 | | | if(strinfo->info_payload_type_str != NULL){ |
| 94 | | | payload_type = g_strdup(strinfo->info_payload_type_str); |
| 95 | | | }else{ |
| 96 | | | payload_type = g_strdup_printf("Unknown(%u)",strinfo->pt); |
| 97 | | | } |
| 98 | | | |
| 99 | | | }else{ |
| 100 | | | payload_type = g_strdup(val_to_str(strinfo->pt, rtp_payload_type_vals, |
| 101 | | | "Unknown (%u)")); |
| 102 | | | } |
| 103 | | | |
| 104 | | | |
| 105 | | | expected = (strinfo->rtp_stats.stop_seq_nr + strinfo->rtp_stats.cycles*65536) |
| 106 | | | - strinfo->rtp_stats.start_seq_nr + 1; |
| 107 | | | lost = expected - strinfo->rtp_stats.total_nr; |
| 108 | | | if (expected){ |
| 109 | | | perc = (double)(lost*100)/(double)expected; |
| 110 | | | } else { |
| 111 | | | perc = 0; |
| 112 | | | } |
| 113 | | | |
| 114 | | | printf("%15s %5u %15s %5u 0x%08X %16s %5u %5d (%.1f%%) %15.2f %15.2f %15.2f %s\n", |
| 115 | | | get_addr_name(&(strinfo->src_addr)), |
| 116 | | | strinfo->src_port, |
| 117 | | | get_addr_name(&(strinfo->dest_addr)), |
| 118 | | | strinfo->dest_port, |
| 119 | | | strinfo->ssrc, |
| 120 | | | payload_type, |
| 121 | | | strinfo->npackets, |
| 122 | | | lost, perc, |
| 123 | | | strinfo->rtp_stats.max_delta, |
| 124 | | | strinfo->rtp_stats.max_jitter, |
| 125 | | | strinfo->rtp_stats.mean_jitter, |
| 126 | | | (strinfo->problem)?"X":""); |
| 127 | | | |
| 128 | | | list = g_list_next(list);
x /usr/include/glib-2.0/glib/glist.h |
| |
113 | #define g_list_next(list) ((list) ? (((GList *)(list))->next) : NULL) |
| |
|
| 129 | | | |
| 130 | | | |
| 131 | | | } |
| 132 | | | |
| 133 | | | printf("==============================================================\n"); |
| 134 | | | |
| 135 | | | setlocale(LC_NUMERIC, savelocale);
x /usr/include/locale.h |
| |
37 | #define LC_NUMERIC __LC_NUMERIC |
| |
|
| 136 | | | } |
| |