• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1  /*
2  * Copyright (c) 2023 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 #ifndef CAMERA_MANAGER_FUZZER_H
17 #define CAMERA_MANAGER_FUZZER_H
18 
19 #include "input/camera_manager.h"
20 #include <memory>
21 #include <fuzzer/FuzzedDataProvider.h>
22 
23 namespace OHOS {
24 namespace CameraStandard {
25 class CameraManagerFuzzer {
26 public:
27 static void CameraManagerFuzzTest1(FuzzedDataProvider& fdp);
28 static void CameraManagerFuzzTest2(FuzzedDataProvider& fdp);
29 static void CameraManagerFuzzTest3(FuzzedDataProvider& fdp);
30 };
31 
32 class IDeferredPhotoProcSessionCallbackFuzz : public IDeferredPhotoProcSessionCallback {
33 public:
OnProcessImageDone(const std::string & imageId,const uint8_t * addr,const long bytes,uint32_t cloudImageEnhanceFlag)34     void OnProcessImageDone(const std::string& imageId, const uint8_t* addr, const long bytes,
35         uint32_t cloudImageEnhanceFlag) override {}
OnProcessImageDone(const std::string & imageId,std::shared_ptr<PictureIntf> picture,uint32_t cloudImageEnhanceFlag)36     void OnProcessImageDone(const std::string &imageId, std::shared_ptr<PictureIntf> picture,
37         uint32_t cloudImageEnhanceFlag) override {}
OnDeliveryLowQualityImage(const std::string & imageId,std::shared_ptr<PictureIntf> picture)38     void OnDeliveryLowQualityImage(const std::string &imageId, std::shared_ptr<PictureIntf> picture) override {}
OnError(const std::string & imageId,const DpsErrorCode errorCode)39     void OnError(const std::string& imageId, const DpsErrorCode errorCode) override {}
OnStateChanged(const DpsStatusCode status)40     void OnStateChanged(const DpsStatusCode status) override {}
41 };
42 
43 class ITorchServiceCallbackFuzz : public ITorchServiceCallback {
44 public:
OnTorchStatusChange(const TorchStatus status)45     int32_t OnTorchStatusChange(const TorchStatus status) override
46     {
47         return 0;
48     }
AsObject()49     sptr<IRemoteObject> AsObject() override
50     {
51         return 0;
52     }
53 };
54 
55 class IFoldServiceCallbackFuzz : public IFoldServiceCallback {
56 public:
OnFoldStatusChanged(const FoldStatus status)57     virtual int32_t OnFoldStatusChanged(const FoldStatus status)
58     {
59         return 0;
60     }
AsObject()61     virtual sptr<IRemoteObject> AsObject()
62     {
63         return 0;
64     }
65 };
66 
67 class ICameraMuteServiceCallbackFuzz : public ICameraMuteServiceCallback {
68 public:
OnCameraMute(bool muteMode)69     int32_t OnCameraMute(bool muteMode) override
70     {
71         return 0;
72     }
AsObject()73     sptr<IRemoteObject> AsObject() override
74     {
75         return 0;
76     }
77 };
78 
79 class IDeferredVideoProcSessionCallbackFuzz : public IDeferredVideoProcSessionCallback {
80 public:
OnProcessVideoDone(const std::string & videoId,const sptr<IPCFileDescriptor> ipcFd)81     void OnProcessVideoDone(const std::string& videoId, const sptr<IPCFileDescriptor> ipcFd) override {}
OnError(const std::string & videoId,const DpsErrorCode errorCode)82     void OnError(const std::string& videoId, const DpsErrorCode errorCode) override {}
OnStateChanged(const DpsStatusCode status)83     void OnStateChanged(const DpsStatusCode status) override {}
84 };
85 
86 class CameraManagerCallbackFuzz : public CameraManagerCallback {
87 public:
OnCameraStatusChanged(const CameraStatusInfo & cameraStatusInfo)88     void OnCameraStatusChanged(const CameraStatusInfo &cameraStatusInfo) const override {}
OnFlashlightStatusChanged(const std::string & cameraID,const FlashStatus flashStatus)89     void OnFlashlightStatusChanged(const std::string &cameraID, const FlashStatus flashStatus) const override {}
90 };
91 
92 class CameraMuteListenerFuzz : public CameraMuteListener {
93 public:
OnCameraMute(bool muteMode)94     void OnCameraMute(bool muteMode) const override {}
95 };
96 
97 class FoldListenerFuzz : public FoldListener {
98 public:
OnFoldStatusChanged(const FoldStatusInfo & foldStatusInfo)99     void OnFoldStatusChanged(const FoldStatusInfo &foldStatusInfo) const override {}
100 };
101 
102 class TorchListenerFuzz : public TorchListener {
103 public:
OnTorchStatusChange(const TorchStatusInfo & torchStatusInfo)104     void OnTorchStatusChange(const TorchStatusInfo &torchStatusInfo) const override {}
105 };
106 } //CameraStandard
107 } //OHOS
108 #endif //CAMERA_MANAGER_FUZZER_H