So I looked at the zip code in it's non minified state for a bit.

the bug is here:


  var len = 0;
  var fpos = new Array(17);
  fpos[0] = 0;


&&&&


  function Rec() {
    var curplace = Places[treepos];
    var tmp;
    if (debug)
      document.write("<br>len:" + len + " treepos:" + treepos);
    if (len == 17) { //war 17
      return -1;
    }
    treepos++;
    len++;

    tmp = IsPat();


&&&&


if (fpos[len] >= fmax)
        return -1;


--

specifically len becomes 17, array length is 17, fpos[17] is
undefined, the if >= fmax statement never fires, infinite loop occurs.


While I know I'm just a user, I would definitely vote for having an
alternative zip implementation which I could enable by replacing a
file, or something.  I would also definitely vote to get rid of JXG,
because I found a bug only 50 test cases.  Which gives a very high
probability that another bug will be found in the next 1000.

I will also do some investigation of replacing it on my side.

-tim



On 4/16/14, Tim Prepscius <[email protected]> wrote:
> Unfortunately I bring news of another bug.
>
> So, the JXG fails in some cases.
> I have a failing test case (which gpg is able to correctly handle),
> encrypted block, and a private key.  In this test, an infinite loop
> occurs.
>
> The private key will eventually be made public anyways (I'm using it
> to build a test suite), so I don't mind sending it, but I'd rather not
> post it to a public list quite yet.  Cause I'd like to use it a bit
> more.
>
> How can I get the necessary info to whomever?
>
> -tim
>
> p.s. Also, there are alternatives to JXG which I have tested quite a
> bit in the past which might be more reliable.  I believe I used:
> https://github.com/gildas-lormeau/zip.js
> in a different project.  I found only one bug in his/her implementation.
>
_______________________________________________

http://openpgpjs.org
Subscribe/unsubscribe: http://list.openpgpjs.org

Reply via email to