#include <zblib.h>
#include <zblib_driver.h>
+#include <zblib_plugin.h>
#include <zblib_request.h>
#include "zblib_driver_zcl_on_off.h"
const gchar *driver_name,
ZblibDriverZclOnOffOps_t *ops)
{
+ ZigBeeService *service = NULL;
ZigBeeDriver *driver = NULL;
ZblibDriverZclOnOffPrivData_t *priv_data = NULL;
gboolean ret;
/* Update private data */
priv_data->ops = ops;
+ /* Link service to driver */
+ service = zblib_plugin_ref_service(plugin);
+ if (NULL == service) {
+ Z_LOGE("zblib_plugin_ref_service failed!");
+
+ /* Free allocated resources */
+ g_free(priv_data);
+ g_free(driver);
+
+ return NULL;
+ }
+ zblib_driver_link_service(driver, service);
+
/* Link private data to driver */
ret = zblib_driver_link_object(driver, priv_data);
if (FALSE == ret) {