Skip to content

Commit 5229b01

Browse files
Merge remote-tracking branch 'upstream/master'
2 parents 2126c7a + 39b6b2a commit 5229b01

12 files changed

+345
-235
lines changed

.taskcluster.yml

+4-4
Original file line numberDiff line numberDiff line change
@@ -64,17 +64,17 @@ tasks:
6464
retry-curl () { curl --connect-timeout 25 --fail --location --retry 5 --show-error --silent "$@"; };
6565
mkdir -p ~/.local/bin ~/.local/lib;
6666
PATH=~/.local/bin:$PATH;
67-
retry-curl https://nodejs.org/dist/v18.20.3/node-v18.20.3-linux-x64.tar.xz | tar -C ~/.local/lib -I xz -x;
67+
retry-curl https://nodejs.org/dist/v20.18.1/node-v20.18.1-linux-x64.tar.xz | XZ_DEFAULTS=-T0 tar -C ~/.local/lib -I xz -x;
6868
cd ~/.local/bin;
69-
for i in ~/.local/lib/node-v18.20.3-linux-x64/bin/*; do ln -s "$i" .; done;
69+
for i in ~/.local/lib/node-v20.18.1-linux-x64/bin/*; do ln -s "$i" .; done;
7070
cd -;
7171
cd server/frontend;
7272
npm i;
7373
cd ../..;
7474
pre-commit run -a;
75-
- name: build frontend node 18
75+
- name: build frontend node 20
7676
language: node
77-
version: "18"
77+
version: "20"
7878
script:
7979
- bash
8080
- '-xec'

Dockerfile

+14-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM node:18-alpine as frontend
1+
FROM node:20-alpine as frontend
22

33
COPY server/frontend /src
44
RUN chown -R node:node /src
@@ -39,7 +39,19 @@ COPY . /src/
3939

4040
# Retrieve previous Javascript build
4141
COPY --from=frontend /src/dist/ /src/server/frontend/dist/
42-
RUN mkdir -p /data/fuzzing-tc-config && chown -R worker:worker /src /data/fuzzing-tc-config
42+
RUN mkdir -p \
43+
/data/fuzzing-tc-config \
44+
/data/crashes \
45+
/data/coverage \
46+
/data/repos \
47+
/data/userdata \
48+
&& chown -R worker:worker \
49+
/src \
50+
/data/fuzzing-tc-config \
51+
/data/crashes \
52+
/data/coverage \
53+
/data/repos \
54+
/data/userdata
4355

4456
# Install FM
4557
# Note: the extras must be duplicated above in the Python

FTB/Signatures/CrashInfo.py

+2
Original file line numberDiff line numberDiff line change
@@ -693,6 +693,8 @@ def __init__(self, stdout, stderr, configuration, crashData=None):
693693
(?:on\saddress # Most common format, used for all overflows
694694
|on\sunknown\saddress # Used in case of a SIGSEGV
695695
|double-free\son # Used in case of a double-free
696+
|out\sof\smemory:\sallocator\sis\strying\sto\sallocate\s0x[0-9a-f]+\s
697+
bytes
696698
|allocator\sis\sout\sof\smemory\strying\sto\sallocate\s0x[0-9a-f]+\s
697699
bytes
698700
|failed\sto\sallocate\s0x[0-9a-f]+\s

FTB/Signatures/tests/test_CrashInfo.py

+23
Original file line numberDiff line numberDiff line change
@@ -215,6 +215,29 @@ def test_ASanParserTestOOM():
215215
) == crashInfo.createShortSignature()
216216

217217

218+
def test_ASanParserTestOOM2():
219+
config = ProgramConfiguration("test", "x86-64", "linux")
220+
221+
crashInfo = ASanCrashInfo(
222+
[],
223+
[
224+
"==5712==ERROR: AddressSanitizer: out of memory: allocator is trying to "
225+
"allocate 0x16000001090000 bytes",
226+
" #0 0x5cab97fe69fd in operator new(unsigned long) /builds/worker/"
227+
"fetches/llvm-project/compiler-rt/lib/asan/asan_new_delete.cpp:86:3",
228+
],
229+
config,
230+
)
231+
assert len(crashInfo.backtrace) == 1
232+
assert crashInfo.backtrace[0] == "operator new"
233+
assert crashInfo.crashAddress is None
234+
235+
assert (
236+
"AddressSanitizer: out of memory: allocator is trying to allocate "
237+
"0x16000001090000 bytes [@ operator new]"
238+
) == crashInfo.createShortSignature()
239+
240+
218241
def test_ASanParserTestDebugAssertion():
219242
config = ProgramConfiguration("test", "x86-64", "linux")
220243

0 commit comments

Comments
 (0)