aboutsummaryrefslogtreecommitdiffstats
path: root/packet-mount.c
diff options
context:
space:
mode:
Diffstat (limited to 'packet-mount.c')
-rw-r--r--packet-mount.c24
1 files changed, 13 insertions, 11 deletions
diff --git a/packet-mount.c b/packet-mount.c
index 8c48f0f9dd..843443a9f0 100644
--- a/packet-mount.c
+++ b/packet-mount.c
@@ -1,7 +1,7 @@
/* packet-mount.c
* Routines for mount dissection
*
- * $Id: packet-mount.c,v 1.37 2002/11/14 02:31:26 guy Exp $
+ * $Id: packet-mount.c,v 1.38 2003/04/28 04:03:24 gerald Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -240,17 +240,19 @@ dissect_group(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tre
{
int len,str_len;
len=tvb_get_ntohl(tvb,offset);
- str_len=tvb_get_nstringz(tvb,offset+4,
- MAX_GROUP_NAME_LIST-5-group_names_len,
- group_name_list+group_names_len);
- if((group_names_len>=(MAX_GROUP_NAME_LIST-5))||(str_len<0)){
- strcpy(group_name_list+(MAX_GROUP_NAME_LIST-5),"...");
- group_names_len=MAX_GROUP_NAME_LIST-1;
- } else {
- group_names_len+=str_len;
- group_name_list[group_names_len++]=' ';
+ if (group_names_len < MAX_GROUP_NAME_LIST - 5) {
+ str_len=tvb_get_nstringz(tvb,offset+4,
+ MAX_GROUP_NAME_LIST-5-group_names_len,
+ group_name_list+group_names_len);
+ if((group_names_len>=(MAX_GROUP_NAME_LIST-5))||(str_len<0)){
+ strcpy(group_name_list+(MAX_GROUP_NAME_LIST-5),"...");
+ group_names_len=MAX_GROUP_NAME_LIST;
+ } else {
+ group_names_len+=str_len;
+ group_name_list[group_names_len++]=' ';
+ }
+ group_name_list[group_names_len]=0;
}
- group_name_list[group_names_len]=0;
offset = dissect_rpc_string(tvb, tree,
hf_mount_groups_group, offset, NULL);