Fix up a bunch of arguments to "dissect_ber_identifier()" to match its
[obnox/wireshark/wip.git] / epan / dissectors / packet-sna.c
index 9fc9603edb4e80f69cb8e730d7fd85089abc6e93..bc12508de419132c24268c5fa2c92b533ce720c4 100644 (file)
@@ -35,7 +35,7 @@
 #include <epan/sna-utils.h>
 #include <epan/charsets.h>
 #include <epan/prefs.h>
-#include "reassemble.h"
+#include <epan/reassemble.h>
 
 /*
  * http://www.wanresources.com/snacell.html
@@ -1688,7 +1688,7 @@ defragment_by_sequence(packet_info *pinfo, tvbuff_t *tvb, int offset, int mpf,
                        more_frags = FALSE;
                        break;
                default:
-                       g_assert_not_reached();
+                       DISSECTOR_ASSERT_NOT_REACHED();
        }
 
        /* If sna_defragment is on, and this is a fragment.. */
@@ -2384,9 +2384,12 @@ dissect_control_05hpr(tvbuff_t *tvb, proto_tree *tree, int hpr,
                if (len) {
                        dissect_control(tvb, offset, len, tree, hpr, parse);
                        pad = (len+3) & 0xfffc;
-                       if (pad > len)
+            if (pad > len) {
+                /* XXX - fix this, ensure tvb is large enough for pad */
+                tvb_ensure_bytes_exist(tvb, offset+len, pad-len);
                                proto_tree_add_text(tree, tvb, offset+len,
                                    pad-len, "Padding");
+            }
                        offset += pad;
                } else {
                        return;