/* * Copyright (c) 2018 HUACHENTEL and/or its affiliates. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at: * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef __SC_PLUGINS_H__ #define __SC_PLUGINS_H__ #include #include #include #define ARG_CHECK(retval, arg) \ do \ { \ if (NULL == (arg)) \ { \ SRP_LOG_ERR_MSG(#arg ":NULL pointer passed."); \ return (retval); \ } \ } \ while (0) #define ARG_CHECK2(retval, arg1, arg2) \ ARG_CHECK(retval, arg1); \ ARG_CHECK(retval, arg2) #define ARG_CHECK3(retval, arg1, arg2, arg3) \ ARG_CHECK(retval, arg1); \ ARG_CHECK(retval, arg2); \ ARG_CHECK(retval, arg3) #define ARG_CHECK4(retval, arg1, arg2, arg3, arg4) \ ARG_CHECK(retval, arg1); \ ARG_CHECK(retval, arg2); \ ARG_CHECK(retval, arg3); \ ARG_CHECK(retval, arg4) //functions that sysrepo-plugin need int sr_plugin_init_cb(sr_session_ctx_t *session, void **private_ctx); void sr_plugin_cleanup_cb(sr_session_ctx_t *session, void *private_ctx); int sr_plugin_health_check_cb(sr_session_ctx_t *session, void *private_ctx); #endif //__SC_PLUGINS_H__