Ethereal-dev: [ethereal-dev] Patch for packet-osi.c - now with context

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: "Gerrit Gehnen" <G.Gehnen@xxxxxxxx>
Date: Thu, 20 Jan 2000 14:57:45 +0100
Sorry, I forgot to use the context-option witin diff.
Now it should be easier to patch the source
Btw. The patch is against the 0.8.1 release.

  Gerrit Gehnen
*** packet-osi.c.org	Thu Jan 20 10:15:52 2000
--- packet-osi.c	Thu Jan 20 13:12:24 2000
***************
*** 73,78 ****
--- 73,79 ----
  #define	ISO9542_ESIS		0x82
  #define ISO10589_ISIS		0x83
  #define ISO9542X25_ESIS		0x8a
+ #define ISO8473_CLNP_INACTIVE	0x00
  
  /*
   * ISO8473 OSI CLNP definition (see RFC994)
***************
*** 1456,1461 ****
--- 1457,1474 ----
    u_char src_len, dst_len, nsel;
    u_int first_offset = offset;
  
+   if (pd[offset]==ISO8473_CLNP_INACTIVE) {
+     if (tree) {
+       ti = proto_tree_add_item(tree, proto_clnp, offset, 1, NULL);
+       clnp_tree = proto_item_add_subtree(ti, ett_clnp);
+       proto_tree_add_item_format(clnp_tree, hf_clnp_id, offset, 1, 
+ 				 clnp.cnf_proto_id,
+ 				 "Inactive subset");
+     } 
+     dissect_cotp(pd, offset+1, fd, tree);
+     return;
+   } 
+  
    if (fd->cap_len < offset + sizeof(clnp)) {
      dissect_data(pd, offset, fd, tree);
      return;
***************
*** 1597,1602 ****
--- 1610,1616 ----
        /* only CLNP is currently decoded */
  
      case ISO8473_CLNP:
+     case ISO8473_CLNP_INACTIVE:
        if (check_col(fd, COL_PROTOCOL)) {
  	col_add_str(fd, COL_PROTOCOL, "CLNP");
        }