Skip to content

Electron Browser mode and instrumentation failure #88

Description

@1one-w01f

Let me begin by congratulating you for the excellent papers.

Was wondering how to use the Browser mode w/ Electron? How to specify symbolic input in that case? I can see the Electron browser showing up but then after closing it I get a bunch of errors in the CLI:

[!] Exception E: SyntaxError: Unexpected end of JSON input of test data on 
[!] Exception E: SyntaxError: Unexpected end of JSON input of coverage data on 
[!] Error extracting final output - a fatal error must have occured
[!] expoSE replay 'https://google.com' '{"_bound":0}'
[!] Stats
[!] Done
[+] Total Lines Of Code 0
[+] Total Coverage: NaN%
[+] EXPOSE_PRINT_COVERAGE=1 for line by line breakdown
[+] ExpoSE Finished. 1 paths, 1 errors

Digging around the log file in /tmp/ it appears to me that it always fails to instrument:

b'Transforming\nFailure during HTML instrumentation: ENOENT: no such file or directory, open ... ...
... ...
... ...
... ...
Exception in processFile() @ proxy.py
Traceback (most recent call last):
  File "node_modules/jalangi2/scripts/proxy.py", line 51, in processFile
    with open (instrumentedFileName, "r") as file:
FileNotFoundError: [Errno 2] No such file or directory: 'cache/www.google.com/e286e6d443be5e0a7f6b1b5381f16203/index_jalangi_.html'

I wrote a very simple page as a test (shown below) but that also results in a similar instrumentation failure. Can you give me some pointers to how to make it work?

<!DOCTYPE html>
<html lang="en-US">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Parse foo</title>
</head>
<body>
<script>

var s = location.href.substring(document.location.href.indexOf("?a=")+3);

var regex1 = RegExp('foo*','g');
var array1;

while ((array1 = regex1.exec(s)) !== null) {
  document.write(`Found ${array1[0]}. Next starts at ${regex1.lastIndex}.<br>`);
}

</script>
</body>
</html>

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions