Gustavo Niemeyer c523b04b0f Fixed sre bug "[#581080] Provoking infinite scanner loops".
This bug happened because: 1) the scanner_search and scanner_match methods
were not checking the buffer limits before increasing the current pointer;
and 2) SRE_SEARCH was using "if (ptr == end)" as a loop break, instead of
"if (ptr >= end)".

* Modules/_sre.c
  (SRE_SEARCH): Check for "ptr >= end" to break loops, so that we don't
  hang forever if a pointer passing the buffer limit is used.
  (scanner_search,scanner_match): Don't increment the current pointer
  if we're going to pass the buffer limit.

* Misc/NEWS
  Mention the fix.
2002-11-07 03:28:56 +00:00
..
2002-10-01 18:50:56 +00:00
2002-07-17 16:30:39 +00:00
2002-11-05 18:41:53 +00:00
2002-07-17 16:30:39 +00:00
2001-12-04 01:11:32 +00:00
2002-07-17 16:30:39 +00:00
2002-09-17 09:34:06 +00:00
2002-08-07 16:21:51 +00:00
2002-10-30 21:08:34 +00:00
2002-07-17 16:30:39 +00:00
2002-10-18 16:11:54 +00:00