summaryrefslogtreecommitdiff
path: root/epan
diff options
context:
space:
mode:
authorMike Duigou <bondolo@dev.java.net>2007-11-19 21:28:08 +0000
committerMike Duigou <bondolo@dev.java.net>2007-11-19 21:28:08 +0000
commita8a69a14f6637dd4cf7ade6b42dbe97b526dbd20 (patch)
treeba2d11810de62ed2d27584199a89879352ba2668 /epan
parent849e6283346ef76c5fd405f2fec445484b990e70 (diff)
downloadwireshark-a8a69a14f6637dd4cf7ade6b42dbe97b526dbd20.tar.gz
From Yaniv kaul:
Adds const declarations to req_resp_hdrs_do_reassembly() and re-orders some actions to occur after tests which may decide that the actions were not required. svn path=/trunk/; revision=23504
Diffstat (limited to 'epan')
-rw-r--r--epan/req_resp_hdrs.c20
-rw-r--r--epan/req_resp_hdrs.h4
2 files changed, 14 insertions, 10 deletions
diff --git a/epan/req_resp_hdrs.c b/epan/req_resp_hdrs.c
index 391bac4afa..e1267a37e8 100644
--- a/epan/req_resp_hdrs.c
+++ b/epan/req_resp_hdrs.c
@@ -38,8 +38,8 @@
* Optionally do reassembly of the request/response line, headers, and body.
*/
gboolean
-req_resp_hdrs_do_reassembly(tvbuff_t *tvb, int offset, packet_info *pinfo,
- gboolean desegment_headers, gboolean desegment_body)
+req_resp_hdrs_do_reassembly(tvbuff_t *tvb, const int offset, packet_info *pinfo,
+ const gboolean desegment_headers, const gboolean desegment_body)
{
gint next_offset;
gint next_offset_sav;
@@ -94,8 +94,6 @@ req_resp_hdrs_do_reassembly(tvbuff_t *tvb, int offset, packet_info *pinfo,
for (;;) {
next_offset_sav = next_offset;
- length_remaining = tvb_length_remaining(tvb,
- next_offset);
reported_length_remaining =
tvb_reported_length_remaining(tvb, next_offset);
@@ -112,6 +110,9 @@ req_resp_hdrs_do_reassembly(tvbuff_t *tvb, int offset, packet_info *pinfo,
return FALSE;
}
+ length_remaining = tvb_length_remaining(tvb,
+ next_offset);
+
/*
* Request one more byte if we cannot find a
* header (i.e. a line end).
@@ -127,7 +128,9 @@ req_resp_hdrs_do_reassembly(tvbuff_t *tvb, int offset, packet_info *pinfo,
pinfo->desegment_offset = offset;
pinfo->desegment_len = DESEGMENT_ONE_MORE_SEGMENT;
return FALSE;
- } else if (linelen == 0) {
+ }
+
+ if (linelen == 0) {
/*
* We found the end of the headers.
*/
@@ -182,7 +185,7 @@ req_resp_hdrs_do_reassembly(tvbuff_t *tvb, int offset, packet_info *pinfo,
* RFC 2616 allows for them.
*/
gchar *p;
- gint len;
+ guint len;
header_val = tvb_get_ephemeral_string(tvb,
next_offset_sav + 18, linelen - 18);
@@ -258,8 +261,6 @@ req_resp_hdrs_do_reassembly(tvbuff_t *tvb, int offset, packet_info *pinfo,
gchar *chunk_string = NULL;
gchar *c = NULL;
- length_remaining = tvb_length_remaining(tvb,
- next_offset);
reported_length_remaining =
tvb_reported_length_remaining(tvb,
next_offset);
@@ -270,6 +271,9 @@ req_resp_hdrs_do_reassembly(tvbuff_t *tvb, int offset, packet_info *pinfo,
return FALSE;
}
+ length_remaining = tvb_length_remaining(tvb,
+ next_offset);
+
linelen = tvb_find_line_end(tvb, next_offset,
-1, &chunk_offset, TRUE);
diff --git a/epan/req_resp_hdrs.h b/epan/req_resp_hdrs.h
index 17d3ee35cb..08cc795f00 100644
--- a/epan/req_resp_hdrs.h
+++ b/epan/req_resp_hdrs.h
@@ -37,7 +37,7 @@
* @return TRUE if desegmentation is complete otherwise FALSE
*/
extern gboolean
-req_resp_hdrs_do_reassembly(tvbuff_t *tvb, int offset, packet_info *pinfo,
- gboolean desegment_headers, gboolean desegment_body);
+req_resp_hdrs_do_reassembly(tvbuff_t *tvb, const int offset, packet_info *pinfo,
+ const gboolean desegment_headers, const gboolean desegment_body);
#endif