Fix bug 1173, remove the space after the comma in CSV lines
[obnox/wireshark/wip.git] / print.c
diff --git a/print.c b/print.c
index 892438caa464c696b0bdb4250273fc146c016c8f..a4c153e0f93b00a5dc4832332db279e650d45956 100644 (file)
--- a/print.c
+++ b/print.c
@@ -5,8 +5,8 @@
  *
  * Gilbert Ramirez <gram@alumni.rice.edu>
  *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@ethereal.com>
+ * Wireshark - Network traffic analyzer
+ * By Gerald Combs <gerald@wireshark.org>
  * Copyright 1998 Gerald Combs
  *
  * This program is free software; you can redistribute it and/or
@@ -154,11 +154,19 @@ void proto_tree_print_node(proto_node *node, gpointer data)
                proto_item_fill_label(fi, label_str);
        }
 
+    if(PROTO_ITEM_IS_GENERATED(node)) {
+        label_ptr = g_strdup_printf("[%s]", label_ptr);
+    }
+
        if (!print_line(pdata->stream, pdata->level, label_ptr)) {
                pdata->success = FALSE;
                return;
        }
 
+    if(PROTO_ITEM_IS_GENERATED(node)) {
+        g_free(label_ptr);
+    }
+
        /* If it's uninterpreted data, dump it (unless our caller will
           be printing the entire packet in hex). */
        if (fi->hfinfo->id == proto_data && pdata->print_hex_for_data) {
@@ -322,9 +330,15 @@ proto_tree_write_node_pdml(proto_node *node, gpointer data)
                fprintf(pdata->fh, "\" pos=\"%d", fi->start);
 /*             fprintf(pdata->fh, "\" id=\"%d", fi->hfinfo->id);*/
 
-               if (fi->hfinfo->type != FT_PROTOCOL) {
-                       /* Field */
-
+               /* show, value, and unmaskedvalue attributes */
+               switch (fi->hfinfo->type)
+               {
+               case FT_PROTOCOL:
+                       break;
+               case FT_NONE:
+                       fputs("\" show=\"\" value=\"",  pdata->fh);
+                       break;
+               default:
                        /* XXX - this is a hack until we can just call
                         * fvalue_to_string_repr() for *all* FT_* types. */
                        dfilter_string = proto_construct_dfilter_string(fi,
@@ -392,7 +406,7 @@ proto_tree_write_node_pdml(proto_node *node, gpointer data)
 }
 
 /* Print info for a 'geninfo' pseudo-protocol. This is required by
- * the PDML spec. The information is contained in Ethereal's 'frame' protocol,
+ * the PDML spec. The information is contained in Wireshark's 'frame' protocol,
  * but we produce a 'geninfo' protocol in the PDML to conform to spec.
  * The 'frame' protocol follows the 'geninfo' protocol in the PDML. */
 static void
@@ -536,13 +550,13 @@ proto_tree_write_csv(epan_dissect_t *edt, FILE *fh)
         /* if this is the first packet, we have to write the CSV header */
         if(edt->pi.fd->num == 1) {
             for(i=0; i < edt->pi.cinfo->num_cols - 1; i++)
-               fprintf(fh, "\"%s\", ", edt->pi.cinfo->col_title[i]);
+               fprintf(fh, "\"%s\",", edt->pi.cinfo->col_title[i]);
 
             fprintf(fh, "\"%s\"\n", edt->pi.cinfo->col_title[i]);
         }
 
         for(i=0; i < edt->pi.cinfo->num_cols - 1; i++)
-            fprintf(fh, "\"%s\", ", edt->pi.cinfo->col_data[i]);
+            fprintf(fh, "\"%s\",", edt->pi.cinfo->col_data[i]);
 
         fprintf(fh, "\"%s\"\n", edt->pi.cinfo->col_data[i]);
 }
@@ -694,7 +708,7 @@ print_hex_data(print_stream_t *stream, epan_dissect_t *edt)
  * This routine is based on a routine created by Dan Lasley
  * <DLASLEY@PROMUS.com>.
  *
- * It was modified for Ethereal by Gilbert Ramirez and others.
+ * It was modified for Wireshark by Gilbert Ramirez and others.
  */
 
 #define MAX_OFFSET_LEN 8       /* max length of hex offset of bytes */
@@ -998,7 +1012,7 @@ print_preamble_ps(print_stream_t *self, gchar *filename)
        fputs("\n", output->fh);
        fputs("%% the page title\n", output->fh);
        ps_clean_string(psbuffer, filename, MAX_PS_LINE_LENGTH);
-       fprintf(output->fh, "/eth_pagetitle (%s - Ethereal) def\n", psbuffer);
+       fprintf(output->fh, "/eth_pagetitle (%s - Wireshark) def\n", psbuffer);
        fputs("\n", output->fh);
        return !ferror(output->fh);
 }