File tree Expand file tree Collapse file tree 1 file changed +37
-0
lines changed Expand file tree Collapse file tree 1 file changed +37
-0
lines changed Original file line number Diff line number Diff line change @@ -77,3 +77,40 @@ FUZZ_TARGET(net, .init = initialize_net)
7777 (void )node.HasPermission (net_permission_flags);
7878 (void )node.ConnectedThroughNetwork ();
7979}
80+
81+ FUZZ_TARGET (local_address, .init = initialize_net)
82+ {
83+ FuzzedDataProvider fuzzed_data_provider (buffer.data (), buffer.size ());
84+ CService service{ConsumeService (fuzzed_data_provider)};
85+ CNode node{ConsumeNode (fuzzed_data_provider)};
86+ {
87+ LOCK (g_maplocalhost_mutex);
88+ mapLocalHost.clear ();
89+ }
90+ LIMITED_WHILE (fuzzed_data_provider.ConsumeBool (), 10000 ) {
91+ CallOneOf (
92+ fuzzed_data_provider,
93+ [&] {
94+ service = ConsumeService (fuzzed_data_provider);
95+ },
96+ [&] {
97+ const bool added{AddLocal (service, fuzzed_data_provider.ConsumeIntegralInRange <int >(0 , LOCAL_MAX - 1 ))};
98+ if (!added) return ;
99+ assert (service.IsRoutable ());
100+ assert (IsLocal (service));
101+ assert (SeenLocal (service));
102+ },
103+ [&] {
104+ (void )RemoveLocal (service);
105+ },
106+ [&] {
107+ (void )SeenLocal (service);
108+ },
109+ [&] {
110+ (void )IsLocal (service);
111+ },
112+ [&] {
113+ (void )GetLocalAddress (node);
114+ });
115+ }
116+ }
You can’t perform that action at this time.
0 commit comments