188edb362Sopenharmony_ci/*
288edb362Sopenharmony_ci * Copyright (c) 2023 Huawei Device Co., Ltd.
388edb362Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
488edb362Sopenharmony_ci * you may not use this file except in compliance with the License.
588edb362Sopenharmony_ci * You may obtain a copy of the License at
688edb362Sopenharmony_ci *
788edb362Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
888edb362Sopenharmony_ci *
988edb362Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
1088edb362Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
1188edb362Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1288edb362Sopenharmony_ci * See the License for the specific language governing permissions and
1388edb362Sopenharmony_ci * limitations under the License.
1488edb362Sopenharmony_ci */
1588edb362Sopenharmony_ci#include <cstring>
1688edb362Sopenharmony_ci#include "module_update.h"
1788edb362Sopenharmony_ci#include "log/log.h"
1888edb362Sopenharmony_ci#include "securec.h"
1988edb362Sopenharmony_ci
2088edb362Sopenharmony_ciusing namespace OHOS;
2188edb362Sopenharmony_ciusing namespace Updater;
2288edb362Sopenharmony_ci
2388edb362Sopenharmony_ci#ifdef __cplusplus
2488edb362Sopenharmony_ci#if __cplusplus
2588edb362Sopenharmony_ciextern "C" {
2688edb362Sopenharmony_ci#endif
2788edb362Sopenharmony_ci#endif
2888edb362Sopenharmony_ci
2988edb362Sopenharmony_cinamespace {
3088edb362Sopenharmony_ciconstexpr int SA_ARG_COUNT = 1;
3188edb362Sopenharmony_ciconstexpr const char *MODULE_UPDATE_PATH = "/system/bin/check_module_update";
3288edb362Sopenharmony_ci}
3388edb362Sopenharmony_ci
3488edb362Sopenharmony_ciint main(int argc, char **argv)
3588edb362Sopenharmony_ci{
3688edb362Sopenharmony_ci    if (argc >= SA_ARG_COUNT && std::strcmp(argv[0], MODULE_UPDATE_PATH) == 0) {
3788edb362Sopenharmony_ci        LOG(INFO) << "enter module update main";
3888edb362Sopenharmony_ci        auto &instance = OHOS::SysInstaller::ModuleUpdate::GetInstance();
3988edb362Sopenharmony_ci        instance.CheckModuleUpdate();
4088edb362Sopenharmony_ci        return 0;
4188edb362Sopenharmony_ci    }
4288edb362Sopenharmony_ci    return 0;
4388edb362Sopenharmony_ci}
4488edb362Sopenharmony_ci
4588edb362Sopenharmony_ci#ifdef __cplusplus
4688edb362Sopenharmony_ci#if __cplusplus
4788edb362Sopenharmony_ci}
4888edb362Sopenharmony_ci#endif
4988edb362Sopenharmony_ci#endif