File tree 2 files changed +59
-0
lines changed
2 files changed +59
-0
lines changed Original file line number Diff line number Diff line change 1049
1049
}],
1050
1050
],
1051
1051
}, # fuzz_env
1052
+ { # fuzz_ClientHelloParser.cc
1053
+ 'target_name' : 'fuzz_ClientHelloParser' ,
1054
+ 'type' : 'executable' ,
1055
+ 'dependencies' : [
1056
+ '<(node_lib_target_name)' ,
1057
+ 'deps/histogram/histogram.gyp:histogram' ,
1058
+ 'deps/uvwasi/uvwasi.gyp:uvwasi' ,
1059
+ ],
1060
+ 'includes' : [
1061
+ 'node.gypi'
1062
+ ],
1063
+ 'include_dirs' : [
1064
+ 'src' ,
1065
+ 'tools/msvs/genfiles' ,
1066
+ 'deps/v8/include' ,
1067
+ 'deps/cares/include' ,
1068
+ 'deps/uv/include' ,
1069
+ 'deps/uvwasi/include' ,
1070
+ 'test/cctest' ,
1071
+ ],
1072
+ 'defines' : [
1073
+ 'NODE_ARCH="<(target_arch)"' ,
1074
+ 'NODE_PLATFORM="<(OS)"' ,
1075
+ 'NODE_WANT_INTERNALS=1' ,
1076
+ ],
1077
+ 'sources' : [
1078
+ 'src/node_snapshot_stub.cc' ,
1079
+ 'test/fuzzers/fuzz_ClientHelloParser.cc' ,
1080
+ ],
1081
+ 'conditions' : [
1082
+ ['OS=="linux"' , {
1083
+ 'ldflags' : [ '-fsanitize=fuzzer' ]
1084
+ }],
1085
+ # Ensure that ossfuzz flag has been set and that we are on Linux
1086
+ [ 'OS!="linux" or ossfuzz!="true"' , {
1087
+ 'type' : 'none' ,
1088
+ }],
1089
+ # Avoid excessive LTO
1090
+ ['enable_lto=="true"' , {
1091
+ 'ldflags' : [ '-fno-lto' ],
1092
+ }],
1093
+ ],
1094
+ }, # fuzz_ClientHelloParser.cc
1052
1095
{
1053
1096
'target_name' : 'cctest' ,
1054
1097
'type' : 'executable' ,
Original file line number Diff line number Diff line change
1
+ /*
2
+ * A fuzzer focused on node::crypto::ClientHelloParser.
3
+ */
4
+
5
+ #include < stdlib.h>
6
+ #include " crypto/crypto_clienthello-inl.h"
7
+
8
+ extern " C" int LLVMFuzzerTestOneInput (const uint8_t * data, size_t size) {
9
+ node::crypto::ClientHelloParser parser;
10
+ bool end_cb_called = false ;
11
+ parser.Start ([](void * arg, auto hello) { },
12
+ [](void * arg) { },
13
+ &end_cb_called);
14
+ parser.Parse (data, size);
15
+ return 0 ;
16
+ }
You can’t perform that action at this time.
0 commit comments