Wireshark-dev: [Wireshark-dev] Try to use non formatting routines
From: Jakub Zawadzki <darkjames@xxxxxxxxxxxxxxxx>
Date: Wed, 11 Mar 2009 01:34:58 +0100
Hi, Another patch, when we can call (and it won't broke code-look), use g_strdup() instead of g_strdup_printf() g_strlcpy() instead of g_snprintf() g_string_append() instead of g_string_append_printf() For now it's against gtk/ If it's ok, I'll prepare patch against rest source.
Index: gtk/graph_analysis.c
===================================================================
--- gtk/graph_analysis.c (wersja 27690)
+++ gtk/graph_analysis.c (kopia robocza)
@@ -810,8 +810,7 @@
for (i=0; i<user_data->num_nodes; i++){
/* print the node identifiers */
/* XXX we assign 5 pixels per character in the node identity */
- g_snprintf(label_string, NODE_WIDTH/5, "%s",
- get_addr_name(&(user_data->nodes[i])));
+ g_strlcpy(label_string, get_addr_name(&(user_data->nodes[i])), NODE_WIDTH/5);
pango_layout_set_text(layout, label_string, -1);
pango_layout_get_pixel_size(layout, &label_width, &label_height);
if (GDK_IS_DRAWABLE(user_data->dlg.pixmap)) {
Index: gtk/expert_comp_table.c
===================================================================
--- gtk/expert_comp_table.c (wersja 27690)
+++ gtk/expert_comp_table.c (kopia robocza)
@@ -164,12 +164,12 @@
case ACTYPE_SELECTED:
/* if no expert item was passed */
if (err->procedures[selection].fvalue_value==NULL) {
- g_snprintf(str, 255, "%s", err->procedures[selection].entries[2]);
+ g_strlcpy(str, err->procedures[selection].entries[2], 256);
}
else
{
/* expert item exists. Use it. */
- g_snprintf(str, 255, "%s", err->procedures[selection].fvalue_value);
+ g_strlcpy(str, err->procedures[selection].fvalue_value, 256);
}
break;
case ACTYPE_NOT_SELECTED:
@@ -186,13 +186,13 @@
/* the remaining cases will only exist if the expert item exists so no need to check */
case ACTYPE_AND_SELECTED:
if ((!current_filter) || (0 == strlen(current_filter)))
- g_snprintf(str, 255, "%s", err->procedures[selection].fvalue_value);
+ g_strlcpy(str, err->procedures[selection].fvalue_value, 256);
else
g_snprintf(str, 255, "(%s) && (%s)", current_filter, err->procedures[selection].fvalue_value);
break;
case ACTYPE_OR_SELECTED:
if ((!current_filter) || (0 == strlen(current_filter)))
- g_snprintf(str, 255, "%s", err->procedures[selection].fvalue_value);
+ g_strlcpy(str, err->procedures[selection].fvalue_value, 256);
else
g_snprintf(str, 255, "(%s) || (%s)", current_filter, err->procedures[selection].fvalue_value);
break;
Index: gtk/main_welcome.c
===================================================================
--- gtk/main_welcome.c (wersja 27690)
+++ gtk/main_welcome.c (kopia robocza)
@@ -740,7 +740,7 @@
GTK_SIGNAL_FUNC(capture_if_cb), NULL);
gtk_box_pack_start(GTK_BOX(topic_to_fill), item_hb, FALSE, FALSE, 5);
- label_text = g_strdup_printf("<span foreground=\"black\">Start capture on interface:</span>");
+ label_text = g_strdup("<span foreground=\"black\">Start capture on interface:</span>");
w = gtk_label_new(label_text);
gtk_label_set_markup(GTK_LABEL(w), label_text);
g_free (label_text);
@@ -779,7 +779,7 @@
GTK_SIGNAL_FUNC(topic_menu_cb), GINT_TO_POINTER(ONLINEPAGE_NETWORK_MEDIA));
gtk_box_pack_start(GTK_BOX(topic_to_fill), item_hb, FALSE, FALSE, 5);
#else
- label_text = g_strdup_printf("<span foreground=\"black\">Capturing is not compiled into this version of Wireshark!</span>");
+ label_text = g_strdup("<span foreground=\"black\">Capturing is not compiled into this version of Wireshark!</span>");
w = gtk_label_new(label_text);
gtk_label_set_markup(GTK_LABEL(w), label_text);
g_free (label_text);
@@ -804,7 +804,7 @@
gtk_box_pack_start(GTK_BOX(topic_to_fill), item_hb, FALSE, FALSE, 5);
/* prepare list of recent files (will be filled in later) */
- label_text = g_strdup_printf("<span foreground=\"black\">Open Recent:</span>");
+ label_text = g_strdup("<span foreground=\"black\">Open Recent:</span>");
w = gtk_label_new(label_text);
gtk_label_set_markup(GTK_LABEL(w), label_text);
g_free (label_text);
@@ -864,7 +864,7 @@
topic_vb = welcome_topic_new("Updates", &topic_to_fill);
gtk_box_pack_start(GTK_BOX(column_vb), topic_vb, TRUE, TRUE, 0);
- label_text = g_strdup_printf("<span foreground=\"black\">No updates available!</span>");
+ label_text = g_strdup("<span foreground=\"black\">No updates available!</span>");
w = gtk_label_new(label_text);
gtk_label_set_markup(GTK_LABEL(w), label_text);
g_free (label_text);
Index: gtk/capture_file_dlg.c
===================================================================
--- gtk/capture_file_dlg.c (wersja 27690)
+++ gtk/capture_file_dlg.c (kopia robocza)
@@ -187,7 +187,7 @@
gtk_label_set_text(GTK_LABEL(label), string_buff);
/* type */
- g_snprintf(string_buff, PREVIEW_STR_MAX, "%s", wtap_file_type_string(wtap_file_type(wth)));
+ g_strlcpy(string_buff, wtap_file_type_string(wtap_file_type(wth)), PREVIEW_STR_MAX);
label = g_object_get_data(G_OBJECT(prev), PREVIEW_FORMAT_KEY);
gtk_label_set_text(GTK_LABEL(label), string_buff);
Index: gtk/airpcap_dlg.c
===================================================================
--- gtk/airpcap_dlg.c (wersja 27690)
+++ gtk/airpcap_dlg.c (kopia robocza)
@@ -2142,11 +2142,11 @@
if (airpcap_if_selected != NULL)
{
if (airpcap_if_selected->linkType == AIRPCAP_LT_802_11){
- capture_s = g_strdup_printf("%s",AIRPCAP_LINK_TYPE_NAME_802_11_ONLY);
+ capture_s = g_strdup(AIRPCAP_LINK_TYPE_NAME_802_11_ONLY);
}else if (airpcap_if_selected->linkType == AIRPCAP_LT_802_11_PLUS_RADIO){
- capture_s = g_strdup_printf("%s",AIRPCAP_LINK_TYPE_NAME_802_11_PLUS_RADIO);
+ capture_s = g_strdup(AIRPCAP_LINK_TYPE_NAME_802_11_PLUS_RADIO);
}else if (airpcap_if_selected->linkType == AIRPCAP_LT_802_11_PLUS_PPI){
- capture_s = g_strdup_printf("%s",AIRPCAP_LINK_TYPE_NAME_802_11_PLUS_PPI);
+ capture_s = g_strdup(AIRPCAP_LINK_TYPE_NAME_802_11_PLUS_PPI);
}
if (capture_s != NULL) gtk_entry_set_text(GTK_ENTRY(GTK_COMBO(capture_type_cm)->entry), capture_s);
Index: gtk/voip_calls.c
===================================================================
--- gtk/voip_calls.c (wersja 27690)
+++ gtk/voip_calls.c (kopia robocza)
@@ -940,7 +940,7 @@
if (pi->request_method == NULL){
frame_label = g_strdup_printf("%u %s", pi->response_code, pi->reason_phrase );
- comment = g_strdup_printf("SIP Status");
+ comment = g_strdup("SIP Status");
if ((tmp_sipinfo && pi->tap_cseq_number == tmp_sipinfo->invite_cseq)&&(ADDRESSES_EQUAL(&tmp_dst,&(callsinfo->initial_speaker)))){
if ((pi->response_code > 199) && (pi->response_code<300) && (tmp_sipinfo->sip_state == SIP_INVITE_SENT)){
@@ -965,20 +965,20 @@
&&(ADDRESSES_EQUAL(&tmp_src,&(callsinfo->initial_speaker)))&&(tmp_sipinfo->sip_state==SIP_200_REC)
&&(callsinfo->call_state == VOIP_CALL_SETUP)){
callsinfo->call_state = VOIP_IN_CALL;
- comment = g_strdup_printf("SIP Request");
+ comment = g_strdup("SIP Request");
}
else if (strcmp(pi->request_method,"BYE")==0){
callsinfo->call_state = VOIP_COMPLETED;
tapinfo->completed_calls++;
- comment = g_strdup_printf("SIP Request");
+ comment = g_strdup("SIP Request");
}
else if ((strcmp(pi->request_method,"CANCEL")==0)&&(pi->tap_cseq_number == tmp_sipinfo->invite_cseq)
&&(ADDRESSES_EQUAL(&tmp_src,&(callsinfo->initial_speaker)))&&(callsinfo->call_state==VOIP_CALL_SETUP)){
callsinfo->call_state = VOIP_CANCELLED;
tmp_sipinfo->sip_state = SIP_CANCEL_SENT;
- comment = g_strdup_printf("SIP Request");
+ comment = g_strdup("SIP Request");
} else {
- comment = g_strdup_printf("SIP Request");
+ comment = g_strdup("SIP Request");
}
}
@@ -1174,7 +1174,7 @@
frame_label = g_strdup(isup_message_type_value_acro[i].strptr);
}
else{
- frame_label = g_strdup_printf("Unknown");
+ frame_label = g_strdup("Unknown");
}
if (callsinfo->npackets == 1){ /* this is the first packet, that must be an IAM */
@@ -1917,7 +1917,7 @@
default:
comment = g_strdup("H225 RAS");
}
- frame_label = g_strdup_printf("%s", val_to_str(pi->msg_tag, h225_RasMessage_vals, "<unknown>"));
+ frame_label = g_strdup(val_to_str(pi->msg_tag, h225_RasMessage_vals, "<unknown>"));
} else {
frame_label = g_strdup("H225: Unknown");
comment = NULL;
@@ -2499,7 +2499,7 @@
}
}
- if (frame_label == NULL) frame_label = g_strdup_printf("%s",pi->code);
+ if (frame_label == NULL) frame_label = g_strdup(pi->code);
break;
case MGCP_RESPONSE:
frame_label = g_strdup_printf("%u (%s)",pi->rspcode, pi->code);
@@ -3144,7 +3144,7 @@
callsinfo->call_active_state = VOIP_ACTIVE;
callsinfo->call_state = VOIP_CALL_SETUP;
callsinfo->from_identity=g_strdup_printf("%x",pi->termid);
- callsinfo->to_identity=g_strdup_printf("UNKNOWN");
+ callsinfo->to_identity=g_strdup("UNKNOWN");
COPY_ADDRESS(&(callsinfo->initial_speaker),&(pinfo->src));
callsinfo->first_frame_num=pinfo->fd->num;
callsinfo->selected=FALSE;
@@ -3221,9 +3221,9 @@
/* Create new string */
if(pi->key_val == 10) {
- tmp_unistim_info->key_buffer = g_strdup_printf("*");
+ tmp_unistim_info->key_buffer = g_strdup("*");
} else if(pi->key_val == 11) {
- tmp_unistim_info->key_buffer = g_strdup_printf("#");
+ tmp_unistim_info->key_buffer = g_strdup("#");
} else {
tmp_unistim_info->key_buffer = g_strdup_printf("%d",pi->key_val);
}
@@ -3256,7 +3256,7 @@
g_string_truncate(g_tmp,g_tmp->len-1);
/* Insert new data */
- tmp_unistim_info->key_buffer = g_strdup_printf("%s",g_tmp->str);
+ tmp_unistim_info->key_buffer = g_strdup(g_tmp->str);
}
/* Set label and comment for graph */
@@ -3279,7 +3279,7 @@
g_string_truncate(g_tmp,g_tmp->len-1);
/* Insert new data */
- tmp_unistim_info->key_buffer = g_strdup_printf("%s",g_tmp->str);
+ tmp_unistim_info->key_buffer = g_strdup(g_tmp->str);
}
/* add label and comment */
@@ -3291,7 +3291,7 @@
/* User pressed the soft key 3 */
/* Cancel on cs2k so clear buffer */
/* On mcs its config which will clear the buffer too */
- tmp_unistim_info->key_buffer = g_strdup_printf("\n");
+ tmp_unistim_info->key_buffer = g_strdup("\n");
/* User pressed something, set labels*/
comment = g_strdup_printf("Key Input Sent: S3 (%d)", pi->sequence);
@@ -3395,8 +3395,8 @@
callsinfo = g_malloc0(sizeof(voip_calls_info_t));
callsinfo->call_active_state = VOIP_ACTIVE;
callsinfo->call_state = VOIP_CALL_SETUP;
- callsinfo->from_identity=g_strdup_printf("UNKNOWN");
- callsinfo->to_identity=g_strdup_printf("UNKNOWN");
+ callsinfo->from_identity=g_strdup("UNKNOWN");
+ callsinfo->to_identity=g_strdup("UNKNOWN");
COPY_ADDRESS(&(callsinfo->initial_speaker),&(pinfo->src));
callsinfo->first_frame_num=pinfo->fd->num;
callsinfo->selected=FALSE;
Index: gtk/main.c
===================================================================
--- gtk/main.c (wersja 27690)
+++ gtk/main.c (kopia robocza)
@@ -290,7 +290,7 @@
/* Don't change the current display filter if we only want to copy the filter */
if (action&MATCH_SELECTED_COPY_ONLY) {
GString *gtk_text_str = g_string_new("");
- g_string_append_printf(gtk_text_str, "%s", new_filter);
+ g_string_append(gtk_text_str, new_filter);
copy_to_clipboard(gtk_text_str);
g_string_free(gtk_text_str, TRUE);
} else {
@@ -531,13 +531,13 @@
char *stringpointer = labelstring;
if (cfile.finfo_selected->rep->representation != 0) {
- g_string_append_printf(gtk_text_str, "%s", cfile.finfo_selected->rep->representation); /* Get the represented data */
+ g_string_append(gtk_text_str, cfile.finfo_selected->rep->representation); /* Get the represented data */
}
- if (gtk_text_str->len == 0) { /* If no representation then... */
- proto_item_fill_label(cfile.finfo_selected, stringpointer); /* Try to read the value */
- g_string_append_printf(gtk_text_str, "%s", stringpointer);
+ if (gtk_text_str->len == 0) { /* If no representation then... */
+ proto_item_fill_label(cfile.finfo_selected, stringpointer); /* Try to read the value */
+ g_string_append(gtk_text_str, stringpointer);
}
- if (gtk_text_str->len == 0) { /* Could not get item so display error msg */
+ if (gtk_text_str->len == 0) { /* Could not get item so display error msg */
simple_dialog(ESD_TYPE_ERROR, ESD_BTN_OK, "Could not acquire information to copy, try expanding or choosing another item");
}
else
Index: gtk/rtp_analysis.c
===================================================================
--- gtk/rtp_analysis.c (wersja 27690)
+++ gtk/rtp_analysis.c (kopia robocza)
@@ -2910,7 +2910,7 @@
switch(bool_col){
case MARKER_COLUMN:
- g_snprintf(buf, sizeof(buf), "%s", bool_val? "SET" : "");
+ g_strlcpy(buf, bool_val ? "SET" : "", sizeof(buf));
break;
default:
g_assert_not_reached();
Index: gtk/wlan_stat_dlg.c
===================================================================
--- gtk/wlan_stat_dlg.c (wersja 27690)
+++ gtk/wlan_stat_dlg.c (kopia robocza)
@@ -493,14 +493,14 @@
}
if (hs->resolve_names) {
- g_snprintf (address, sizeof(address), "%s", get_addr_name(&tmp->address));
+ g_strlcpy (address, get_addr_name(&tmp->address), sizeof(address));
} else {
- g_snprintf (address, sizeof(address), "%s", address_to_str(&tmp->address));
+ g_strlcpy (address, address_to_str(&tmp->address), sizeof(address));
}
if (basestation) {
- g_snprintf (comment, sizeof(comment), "Base station");
+ g_strlcpy (comment, "Base station", sizeof(comment));
} else {
- g_snprintf (comment, sizeof(comment), " ");
+ g_strlcpy (comment, " ", sizeof(comment));
}
g_snprintf (percent, sizeof(percent), "%.2f %%", f);
@@ -562,9 +562,9 @@
f = (float)(((float)tmp->number_of_packets * 100.0) / hs->number_of_packets);
if (hs->resolve_names) {
- g_snprintf (bssid, sizeof(bssid), "%s", get_addr_name(&tmp->bssid));
+ g_strlcpy (bssid, get_addr_name(&tmp->bssid), sizeof(bssid));
} else {
- g_snprintf (bssid, sizeof(bssid), "%s", address_to_str(&tmp->bssid));
+ g_strlcpy (bssid, address_to_str(&tmp->bssid), sizeof(bssid));
}
if (tmp->stats.channel) {
g_snprintf (channel, sizeof(channel), "%u", tmp->stats.channel);
@@ -572,11 +572,11 @@
channel[0] = '\0';
}
if (tmp->stats.ssid_len == 0) {
- g_snprintf (ssid, sizeof(ssid), "<Broadcast>");
+ g_strlcpy (ssid, "<Broadcast>", sizeof(ssid));
} else if (tmp->stats.ssid_len == 1 && tmp->stats.ssid[0] == 0) {
- g_snprintf (ssid, sizeof(ssid), "<Hidden>");
+ g_strlcpy (ssid, "<Hidden>", sizeof(ssid));
} else {
- g_snprintf (ssid, sizeof(ssid), "%s", format_text(tmp->stats.ssid, tmp->stats.ssid_len));
+ g_strlcpy (ssid, format_text(tmp->stats.ssid, tmp->stats.ssid_len), sizeof(ssid));
}
g_snprintf (percent, sizeof(percent), "%.2f %%", f);
- Follow-Ups:
- Re: [Wireshark-dev] Try to use non formatting routines
- From: Bill Meier
- Re: [Wireshark-dev] Try to use non formatting routines
- Prev by Date: Re: [Wireshark-dev] Win64 build support
- Next by Date: Re: [Wireshark-dev] Win64 build support
- Previous by thread: Re: [Wireshark-dev] Directory descriptor leak
- Next by thread: Re: [Wireshark-dev] Try to use non formatting routines
- Index(es):