• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2024 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #include "stubunsubscribeswitchevent_fuzzer.h"
17 
18 #include "mmi_log.h"
19 #include "mmi_service.h"
20 #include "multimodal_input_connect_stub.h"
21 
22 #undef MMI_LOG_TAG
23 #define MMI_LOG_TAG "StubUnsubscribeSwitchEventFuzzTest"
24 
25 namespace OHOS {
26 namespace MMI {
27 namespace OHOS {
StubUnsubscribeSwitchEventFuzzTest(const uint8_t * data,size_t size)28 bool StubUnsubscribeSwitchEventFuzzTest(const uint8_t* data, size_t size)
29 {
30     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
31     MessageParcel datas;
32     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
33         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
34         return false;
35     }
36     MessageParcel reply;
37     MessageOption option;
38     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
39     MMIService::GetInstance()->OnRemoteRequest(
40         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_UNSUBSCRIBE_SWITCH_EVENT), datas, reply, option);
41     return true;
42 }
43 
StubQuerySwitchStatusFuzzTest(const uint8_t * data,size_t size)44 bool StubQuerySwitchStatusFuzzTest(const uint8_t* data, size_t size)
45 {
46     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
47     MessageParcel datas;
48     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
49         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
50         return false;
51     }
52     MessageParcel reply;
53     MessageOption option;
54     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
55     MMIService::GetInstance()->OnRemoteRequest(
56         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_QUERY_SWITCH_STATUS), datas, reply, option);
57     return true;
58 }
59 
StubSetTouchpadRotateSwitchFuzzTest(const uint8_t * data,size_t size)60 bool StubSetTouchpadRotateSwitchFuzzTest(const uint8_t* data, size_t size)
61 {
62     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
63     MessageParcel datas;
64     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
65         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
66         return false;
67     }
68     MessageParcel reply;
69     MessageOption option;
70     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
71     MMIService::GetInstance()->OnRemoteRequest(
72         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_SET_TOUCHPAD_ROTATE_SWITCH),
73         datas, reply, option);
74     return true;
75 }
76 
StubGetTouchpadRotateSwitchFuzzTest(const uint8_t * data,size_t size)77 bool StubGetTouchpadRotateSwitchFuzzTest(const uint8_t* data, size_t size)
78 {
79     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
80     MessageParcel datas;
81     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
82         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
83         return false;
84     }
85     MessageParcel reply;
86     MessageOption option;
87     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
88     MMIService::GetInstance()->OnRemoteRequest(
89         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_GET_TOUCHPAD_ROTATE_SWITCH),
90         datas, reply, option);
91     return true;
92 }
93 
StubGetKeyStateFuzzTest(const uint8_t * data,size_t size)94 bool StubGetKeyStateFuzzTest(const uint8_t* data, size_t size)
95 {
96     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
97     MessageParcel datas;
98     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
99         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
100         return false;
101     }
102     MessageParcel reply;
103     MessageOption option;
104     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
105     MMIService::GetInstance()->OnRemoteRequest(
106         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_GET_KEY_STATE), datas, reply, option);
107     return true;
108 }
109 
StubAuthorizeFuzzTest(const uint8_t * data,size_t size)110 bool StubAuthorizeFuzzTest(const uint8_t* data, size_t size)
111 {
112     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
113     MessageParcel datas;
114     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
115         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
116         return false;
117     }
118     MessageParcel reply;
119     MessageOption option;
120     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
121     MMIService::GetInstance()->OnRemoteRequest(
122         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_AUTHORIZE), datas, reply, option);
123     return true;
124 }
125 
StubCancelInjectionFuzzTest(const uint8_t * data,size_t size)126 bool StubCancelInjectionFuzzTest(const uint8_t* data, size_t size)
127 {
128     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
129     MessageParcel datas;
130     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
131         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
132         return false;
133     }
134     MessageParcel reply;
135     MessageOption option;
136     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
137     MMIService::GetInstance()->OnRemoteRequest(
138         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_CANCEL_INJECTION), datas, reply, option);
139     return true;
140 }
141 
StubHasIrEmitterFuzzTest(const uint8_t * data,size_t size)142 bool StubHasIrEmitterFuzzTest(const uint8_t* data, size_t size)
143 {
144     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
145     MessageParcel datas;
146     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
147         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
148         return false;
149     }
150     MessageParcel reply;
151     MessageOption option;
152     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
153     MMIService::GetInstance()->OnRemoteRequest(
154         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_HAS_IR_EMITTER), datas, reply, option);
155     return true;
156 }
157 
StubGetInfraredFrequenciesFuzzTest(const uint8_t * data,size_t size)158 bool StubGetInfraredFrequenciesFuzzTest(const uint8_t* data, size_t size)
159 {
160     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
161     MessageParcel datas;
162     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
163         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
164         return false;
165     }
166     MessageParcel reply;
167     MessageOption option;
168     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
169     MMIService::GetInstance()->OnRemoteRequest(
170         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_GET_INFRARED_FREQUENCIES), datas, reply, option);
171     return true;
172 }
173 
StubTransmitInfraredFuzzTest(const uint8_t * data,size_t size)174 bool StubTransmitInfraredFuzzTest(const uint8_t* data, size_t size)
175 {
176     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
177     MessageParcel datas;
178     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
179         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
180         return false;
181     }
182     MessageParcel reply;
183     MessageOption option;
184     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
185     MMIService::GetInstance()->OnRemoteRequest(
186         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_TRANSMIT_INFRARED), datas, reply, option);
187     return true;
188 }
189 
StubSetPixelMapDataFuzzTest(const uint8_t * data,size_t size)190 bool StubSetPixelMapDataFuzzTest(const uint8_t* data, size_t size)
191 {
192     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
193     MessageParcel datas;
194     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
195         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
196         return false;
197     }
198     MessageParcel reply;
199     MessageOption option;
200     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
201     MMIService::GetInstance()->OnRemoteRequest(
202         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_SET_PIXEL_MAP_DATA), datas, reply, option);
203     return true;
204 }
205 
StubSetCurrentUserFuzzTest(const uint8_t * data,size_t size)206 bool StubSetCurrentUserFuzzTest(const uint8_t* data, size_t size)
207 {
208     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
209     MessageParcel datas;
210     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
211         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
212         return false;
213     }
214     MessageParcel reply;
215     MessageOption option;
216     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
217     MMIService::GetInstance()->OnRemoteRequest(
218         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_SET_CURRENT_USER), datas, reply, option);
219     return true;
220 }
221 
StubEnableHardwareCursorStatsFuzzTest(const uint8_t * data,size_t size)222 bool StubEnableHardwareCursorStatsFuzzTest(const uint8_t* data, size_t size)
223 {
224     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
225     MessageParcel datas;
226     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
227         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
228         return false;
229     }
230     MessageParcel reply;
231     MessageOption option;
232     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
233     MMIService::GetInstance()->OnRemoteRequest(
234         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_ENABLE_HARDWARE_CURSOR_STATS),
235         datas, reply, option);
236     return true;
237 }
238 
StubGetHardwareCursorStatsFuzzTest(const uint8_t * data,size_t size)239 bool StubGetHardwareCursorStatsFuzzTest(const uint8_t* data, size_t size)
240 {
241     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
242     MessageParcel datas;
243     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
244         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
245         return false;
246     }
247     MessageParcel reply;
248     MessageOption option;
249     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
250     MMIService::GetInstance()->OnRemoteRequest(
251         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_GET_HARDWARE_CURSOR_STATS), datas, reply, option);
252     return true;
253 }
254 
StubAddVirtualInputDeviceFuzzTest(const uint8_t * data,size_t size)255 bool StubAddVirtualInputDeviceFuzzTest(const uint8_t* data, size_t size)
256 {
257     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
258     MessageParcel datas;
259     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
260         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
261         return false;
262     }
263     MessageParcel reply;
264     MessageOption option;
265     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
266     MMIService::GetInstance()->OnRemoteRequest(
267         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_ADD_VIRTUAL_INPUT_DEVICE), datas, reply, option);
268     return true;
269 }
270 
StubRemoveVirtualInputDeviceFuzzTest(const uint8_t * data,size_t size)271 bool StubRemoveVirtualInputDeviceFuzzTest(const uint8_t* data, size_t size)
272 {
273     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
274     MessageParcel datas;
275     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
276         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
277         return false;
278     }
279     MessageParcel reply;
280     MessageOption option;
281     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
282     MMIService::GetInstance()->OnRemoteRequest(
283         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_REMOVE_VIRTUAL_INPUT_DEVICE),
284         datas, reply, option);
285     return true;
286 }
287 
StubTransferBinderClientServiceFuzzTest(const uint8_t * data,size_t size)288 bool StubTransferBinderClientServiceFuzzTest(const uint8_t* data, size_t size)
289 {
290     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
291     MessageParcel datas;
292     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
293         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
294         return false;
295     }
296     MessageParcel reply;
297     MessageOption option;
298     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
299     MMIService::GetInstance()->OnRemoteRequest(
300         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_TRANSFER_BINDER_CLIENT_SRV),
301         datas, reply, option);
302     return true;
303 }
304 
305 #ifdef OHOS_BUILD_ENABLE_MAGICCURSOR
StubGetPointerSnapshotFuzzTest(const uint8_t * data,size_t size)306 bool StubGetPointerSnapshotFuzzTest(const uint8_t* data, size_t size)
307 {
308     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
309     MessageParcel datas;
310     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
311         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
312         return false;
313     }
314     MessageParcel reply;
315     MessageOption option;
316     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
317     MMIService::GetInstance()->OnRemoteRequest(
318         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::GET_POINTER_SNAPSHOT), datas, reply, option);
319     return true;
320 }
321 #endif // OHOS_BUILD_ENABLE_MAGICCURSOR
322 
StubSkipPointerLayerFuzzTest(const uint8_t * data,size_t size)323 bool StubSkipPointerLayerFuzzTest(const uint8_t* data, size_t size)
324 {
325     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
326     MessageParcel datas;
327     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
328         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
329         return false;
330     }
331     MessageParcel reply;
332     MessageOption option;
333     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
334     MMIService::GetInstance()->OnRemoteRequest(
335         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_SKIP_POINTER_LAYER), datas, reply, option);
336     return true;
337 }
338 
StubMarkEventConsumedFuzzTest(const uint8_t * data,size_t size)339 bool StubMarkEventConsumedFuzzTest(const uint8_t* data, size_t size)
340 {
341     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
342     MessageParcel datas;
343     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
344         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
345         return false;
346     }
347     MessageParcel reply;
348     MessageOption option;
349     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
350     MMIService::GetInstance()->OnRemoteRequest(
351         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_MARK_EVENT_CONSUMED), datas, reply, option);
352     return true;
353 }
354 
StubGetDeviceFuzzTest(const uint8_t * data,size_t size)355 bool StubGetDeviceFuzzTest(const uint8_t* data, size_t size)
356 {
357     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
358     MessageParcel datas;
359     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
360         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
361         return false;
362     }
363     MessageParcel reply;
364     MessageOption option;
365     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
366     MMIService::GetInstance()->OnRemoteRequest(
367         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_GET_DEVICE), datas, reply, option);
368     return true;
369 }
370 
StubSetTouchpadThreeFingersTapSwitchFuzzTest(const uint8_t * data,size_t size)371 bool StubSetTouchpadThreeFingersTapSwitchFuzzTest(const uint8_t* data, size_t size)
372 {
373     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
374     MessageParcel datas;
375     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
376         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
377         return false;
378     }
379     MessageParcel reply;
380     MessageOption option;
381     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
382     MMIService::GetInstance()->OnRemoteRequest(
383         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_SET_TOUCHPAD_THREE_FINGERS_TAP_SWITCH),
384         datas, reply, option);
385     return true;
386 }
387 
StubGetTouchpadThreeFingersTapSwitchFuzzTest(const uint8_t * data,size_t size)388 bool StubGetTouchpadThreeFingersTapSwitchFuzzTest(const uint8_t* data, size_t size)
389 {
390     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
391     MessageParcel datas;
392     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
393         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
394         return false;
395     }
396     MessageParcel reply;
397     MessageOption option;
398     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
399     MMIService::GetInstance()->OnRemoteRequest(
400         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_GET_TOUCHPAD_THREE_FINGERS_TAP_SWITCH),
401         datas, reply, option);
402     return true;
403 }
404 
405 #ifdef OHOS_BUILD_ENABLE_ANCO
StubAncoAddChannelFuzzTest(const uint8_t * data,size_t size)406 bool StubAncoAddChannelFuzzTest(const uint8_t* data, size_t size)
407 {
408     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
409     MessageParcel datas;
410     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
411         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
412         return false;
413     }
414     MessageParcel reply;
415     MessageOption option;
416     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
417     MMIService::GetInstance()->OnRemoteRequest(
418         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_ANCO_ADD_CHANNEL), datas, reply, option);
419     return true;
420 }
421 
StubAncoRemoveChannelFuzzTest(const uint8_t * data,size_t size)422 bool StubAncoRemoveChannelFuzzTest(const uint8_t* data, size_t size)
423 {
424     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
425     MessageParcel datas;
426     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
427         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
428         return false;
429     }
430     MessageParcel reply;
431     MessageOption option;
432     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
433     MMIService::GetInstance()->OnRemoteRequest(
434         static_cast<uint32_t>(IMultimodalInputConnectIpcCode::COMMAND_ANCO_REMOVE_CHANNEL), datas, reply, option);
435     return true;
436 }
437 #endif // OHOS_BUILD_ENABLE_ANCO
438 
switchDefaultFuzzTest(const uint8_t * data,size_t size)439 bool switchDefaultFuzzTest(const uint8_t* data, size_t size)
440 {
441     const std::u16string FORMMGR_INTERFACE_TOKEN { u"ohos.multimodalinput.IConnectManager" };
442     MessageParcel datas;
443     if (!datas.WriteInterfaceToken(FORMMGR_INTERFACE_TOKEN) ||
444         !datas.WriteBuffer(data, size) || !datas.RewindRead(0)) {
445         return false;
446     }
447     MessageParcel reply;
448     MessageOption option;
449     MMIService::GetInstance()->state_ = ServiceRunningState::STATE_RUNNING;
450     uint32_t code = 1000;
451     MMIService::GetInstance()->OnRemoteRequest(code, datas, reply, option);
452     return true;
453 }
454 } // namespace OHOS
455 
LLVMFuzzerTestOneInput(const uint8_t * data,size_t size)456 extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size)
457 {
458     /* Run your code on data */
459     if (data == nullptr) {
460         return 0;
461     }
462 
463     OHOS::StubUnsubscribeSwitchEventFuzzTest(data, size);
464     OHOS::StubQuerySwitchStatusFuzzTest(data, size);
465     OHOS::StubSetTouchpadRotateSwitchFuzzTest(data, size);
466     OHOS::StubGetTouchpadRotateSwitchFuzzTest(data, size);
467     OHOS::StubGetKeyStateFuzzTest(data, size);
468     OHOS::StubAuthorizeFuzzTest(data, size);
469     OHOS::StubCancelInjectionFuzzTest(data, size);
470     OHOS::StubHasIrEmitterFuzzTest(data, size);
471     OHOS::StubGetInfraredFrequenciesFuzzTest(data, size);
472     OHOS::StubTransmitInfraredFuzzTest(data, size);
473     OHOS::StubSetPixelMapDataFuzzTest(data, size);
474     OHOS::StubSetCurrentUserFuzzTest(data, size);
475     OHOS::StubEnableHardwareCursorStatsFuzzTest(data, size);
476     OHOS::StubGetHardwareCursorStatsFuzzTest(data, size);
477     OHOS::StubAddVirtualInputDeviceFuzzTest(data, size);
478     OHOS::StubRemoveVirtualInputDeviceFuzzTest(data, size);
479     OHOS::StubTransferBinderClientServiceFuzzTest(data, size);
480 #ifdef OHOS_BUILD_ENABLE_MAGICCURSOR
481     OHOS::StubGetPointerSnapshotFuzzTest(data, size);
482 #endif // OHOS_BUILD_ENABLE_MAGICCURSOR
483     OHOS::StubSkipPointerLayerFuzzTest(data, size);
484     OHOS::StubMarkEventConsumedFuzzTest(data, size);
485     OHOS::StubGetDeviceFuzzTest(data, size);
486     OHOS::StubSetTouchpadThreeFingersTapSwitchFuzzTest(data, size);
487     OHOS::StubGetTouchpadThreeFingersTapSwitchFuzzTest(data, size);
488 #ifdef OHOS_BUILD_ENABLE_ANCO
489     OHOS::StubAncoAddChannelFuzzTest(data, size);
490     OHOS::StubAncoRemoveChannelFuzzTest(data, size);
491 #endif // OHOS_BUILD_ENABLE_ANCO
492     OHOS::switchDefaultFuzzTest(data, size);
493     return 0;
494 }
495 } // namespace MMI
496 } // namespace OHOS