From 80fdf7a24c49da7ecea6d7d92fbeb9794a71cda0 Mon Sep 17 00:00:00 2001
From: Anthony Minessale <anthm@freeswitch.org>
Date: Tue, 10 Mar 2015 18:22:00 -0500
Subject: [PATCH] FS-7514: add sanity check for framing

---
 src/mod/formats/mod_vlc/mod_vlc.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/mod/formats/mod_vlc/mod_vlc.c b/src/mod/formats/mod_vlc/mod_vlc.c
index 4a5d77c329..579fdd5851 100644
--- a/src/mod/formats/mod_vlc/mod_vlc.c
+++ b/src/mod/formats/mod_vlc/mod_vlc.c
@@ -1662,6 +1662,13 @@ int  vlc_write_video_imem_get_callback(void *data, const char *cookie, int64_t *
 		int64_t lpts;
 		switch_buffer_read(context->audio_buffer, &lpts, sizeof(lpts));
 		switch_buffer_read(context->audio_buffer, &read_bytes, sizeof(read_bytes));
+		if (read_bytes > 50000) {
+			switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Framing error");
+			switch_buffer_zero(context->audio_buffer);
+			switch_mutex_unlock(context->audio_mutex);
+			goto nada;
+		}
+
 		//printf("WTF READ BUFFER %ld %d\n", lpts, read_bytes);
 		blen = (int)read_bytes;//switch_buffer_inuse(context->audio_buffer);
 		*pts = *dts = lpts + context->sync_offset;