From 1f8a6c6db8999dcdec39c15d44884eb36e07e455 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 30 Mar 2012 12:49:30 +0000 Subject: [PATCH] Permissive subbitstring allows a segmentation fault (issue #16). Fix by mrvn. --- bitstring.ml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bitstring.ml b/bitstring.ml index 1044d89..8a9ef3e 100644 --- a/bitstring.ml +++ b/bitstring.ml @@ -130,7 +130,7 @@ let bitstring_length (_, _, len) = len let subbitstring (data, off, len) off' len' = let off = off + off' in - if len < off' + len' then invalid_arg "subbitstring"; + if off' < 0 || len' < 0 || off' > len - len' then invalid_arg "subbitstring"; (data, off, len') let dropbits n (data, off, len) = -- 1.8.3.1