summaryrefslogtreecommitdiff
path: root/wiretap/logcat_text.c
diff options
context:
space:
mode:
authorMichal Labedzki <michal.labedzki@tieto.com>2014-09-01 15:45:49 +0200
committerAlexis La Goutte <alexis.lagoutte@gmail.com>2014-09-20 08:33:12 +0000
commit4fd89b0ba1a3922f1e85b6379622d1ba2661a129 (patch)
tree646e3a2e4e0d6924403d5f6529c0d996b34f430f /wiretap/logcat_text.c
parente489df5024acc86b0bd3c9f41844b06ff7560d24 (diff)
downloadwireshark-4fd89b0ba1a3922f1e85b6379622d1ba2661a129.tar.gz
Logcat: Fix crashes when try to use logcat_text open routine on binary file
Change-Id: Ied0778af9d5ff0e49c6efd4ea9411ae1a72cb8e5 Reviewed-on: https://code.wireshark.org/review/4190 Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net> Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Diffstat (limited to 'wiretap/logcat_text.c')
-rw-r--r--wiretap/logcat_text.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/wiretap/logcat_text.c b/wiretap/logcat_text.c
index 7ca2c7cc5b..75e651dca1 100644
--- a/wiretap/logcat_text.c
+++ b/wiretap/logcat_text.c
@@ -190,7 +190,7 @@ static gboolean logcat_text_read_packet(FILE_T fh, struct wtap_pkthdr *phdr,
}
if (WTAP_FILE_TYPE_SUBTYPE_LOGCAT_LONG == file_type &&
- !g_regex_match_simple(SPECIAL_STRING, cbuff, G_REGEX_ANCHORED, G_REGEX_MATCH_NOTEMPTY)) {
+ !g_regex_match_simple(SPECIAL_STRING, cbuff, (GRegexCompileFlags)((gint) G_REGEX_ANCHORED | (gint) G_REGEX_RAW), G_REGEX_MATCH_NOTEMPTY)) {
gint64 file_off = 0;
gchar lbuff[WTAP_MAX_PACKET_SIZE];
int err;
@@ -268,34 +268,34 @@ int logcat_text_open(wtap *wth, int *err, gchar **err_info _U_) {
ret = file_gets(cbuff, WTAP_MAX_PACKET_SIZE, wth->fh);
} while (NULL != ret && !file_eof(wth->fh)
&& ((3 > strlen(cbuff))
- || g_regex_match_simple(SPECIAL_STRING, cbuff, G_REGEX_ANCHORED,
+ || g_regex_match_simple(SPECIAL_STRING, cbuff, (GRegexCompileFlags)((gint) G_REGEX_ANCHORED | (gint) G_REGEX_RAW),
G_REGEX_MATCH_NOTEMPTY)));
- if (g_regex_match_simple(BRIEF_STRING, cbuff, G_REGEX_ANCHORED,
+ if (g_regex_match_simple(BRIEF_STRING, cbuff, (GRegexCompileFlags)((gint) G_REGEX_ANCHORED | (gint) G_REGEX_RAW),
G_REGEX_MATCH_NOTEMPTY)) {
wth->file_type_subtype = WTAP_FILE_TYPE_SUBTYPE_LOGCAT_BRIEF;
wth->file_encap = WTAP_ENCAP_LOGCAT_BRIEF;
- } else if (g_regex_match_simple(TAG_STRING, cbuff, G_REGEX_ANCHORED,
+ } else if (g_regex_match_simple(TAG_STRING, cbuff, (GRegexCompileFlags)((gint) G_REGEX_ANCHORED | (gint) G_REGEX_RAW),
G_REGEX_MATCH_NOTEMPTY)) {
wth->file_type_subtype = WTAP_FILE_TYPE_SUBTYPE_LOGCAT_TAG;
wth->file_encap = WTAP_ENCAP_LOGCAT_TAG;
- } else if (g_regex_match_simple(PROCESS_STRING, cbuff, G_REGEX_ANCHORED,
+ } else if (g_regex_match_simple(PROCESS_STRING, cbuff, (GRegexCompileFlags)((gint) G_REGEX_ANCHORED | (gint) G_REGEX_RAW),
G_REGEX_MATCH_NOTEMPTY)) {
wth->file_type_subtype = WTAP_FILE_TYPE_SUBTYPE_LOGCAT_PROCESS;
wth->file_encap = WTAP_ENCAP_LOGCAT_PROCESS;
- } else if (g_regex_match_simple(TIME_STRING, cbuff, G_REGEX_ANCHORED,
+ } else if (g_regex_match_simple(TIME_STRING, cbuff, (GRegexCompileFlags)((gint) G_REGEX_ANCHORED | (gint) G_REGEX_RAW),
G_REGEX_MATCH_NOTEMPTY)) {
wth->file_type_subtype = WTAP_FILE_TYPE_SUBTYPE_LOGCAT_TIME;
wth->file_encap = WTAP_ENCAP_LOGCAT_TIME;
- } else if (g_regex_match_simple(THREAD_STRING, cbuff, G_REGEX_ANCHORED,
+ } else if (g_regex_match_simple(THREAD_STRING, cbuff, (GRegexCompileFlags)((gint) G_REGEX_ANCHORED | (gint) G_REGEX_RAW),
G_REGEX_MATCH_NOTEMPTY)) {
wth->file_type_subtype = WTAP_FILE_TYPE_SUBTYPE_LOGCAT_THREAD;
wth->file_encap = WTAP_ENCAP_LOGCAT_THREAD;
- } else if (g_regex_match_simple(THREADTIME_STRING, cbuff, G_REGEX_ANCHORED,
+ } else if (g_regex_match_simple(THREADTIME_STRING, cbuff, (GRegexCompileFlags)((gint) G_REGEX_ANCHORED | (gint) G_REGEX_RAW),
G_REGEX_MATCH_NOTEMPTY)) {
wth->file_type_subtype = WTAP_FILE_TYPE_SUBTYPE_LOGCAT_THREADTIME;
wth->file_encap = WTAP_ENCAP_LOGCAT_THREADTIME;
- } else if (g_regex_match_simple(LONG_STRING, cbuff, G_REGEX_ANCHORED,
+ } else if (g_regex_match_simple(LONG_STRING, cbuff, (GRegexCompileFlags)((gint) G_REGEX_ANCHORED | (gint) G_REGEX_RAW),
G_REGEX_MATCH_NOTEMPTY)) {
wth->file_type_subtype = WTAP_FILE_TYPE_SUBTYPE_LOGCAT_LONG;
wth->file_encap = WTAP_ENCAP_LOGCAT_LONG;