1/* 2* Copyright (c) 2021 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 BASE_STARTUP_INITLITE_FD_HOLDER_H 17#define BASE_STARTUP_INITLITE_FD_HOLDER_H 18#include <stddef.h> 19 20#ifdef __cplusplus 21extern "C" { 22#endif 23// fds stored in allocated memory, do not forget to release the memory when not use anymore 24int *ServiceGetFd(const char *serviceName, size_t *fdCount); 25 26// Let init poll the fd for service 27// This function will not take responsibility to close these fds 28// Caller need to handle them. 29int ServiceSaveFdWithPoll(const char *serviceName, int *fds, int fdCount); 30 31// Init only save the fd for service 32// This function will not take responsibility to close these fds 33// Caller need to handle them. 34int ServiceSaveFd(const char *serviceName, int *fds, int fdCount); 35#ifdef __cplusplus 36} 37#endif 38 39#endif // BASE_STARTUP_INITLITE_FD_HOLDER_H 40