aboutsummaryrefslogtreecommitdiffstats
path: root/wiretap/vms.c
diff options
context:
space:
mode:
Diffstat (limited to 'wiretap/vms.c')
-rw-r--r--wiretap/vms.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/wiretap/vms.c b/wiretap/vms.c
index e9fc9a423a..47eed25e4b 100644
--- a/wiretap/vms.c
+++ b/wiretap/vms.c
@@ -30,6 +30,8 @@
#include "vms.h"
#include "file_wrappers.h"
+#include <wsutil/strtoi.h>
+
#include <stdlib.h>
#include <string.h>
@@ -386,7 +388,11 @@ parse_vms_packet(FILE_T fh, struct wtap_pkthdr *phdr, Buffer *buf, int *err, gch
return FALSE;
}
- pkt_len = atoi(p);
+ if (!ws_strtoi32(p, &pkt_len)) {
+ *err = WTAP_ERR_BAD_FILE;
+ *err_info = g_strdup_printf("vms: packet length: %s", p);
+ return FALSE;
+ }
break;
}
} while (! isdumpline(line));