/*
- * Copyright (C) 2016, 2017, 2018 "IoT.bzh"
+ * Copyright (C) 2016-2019 "IoT.bzh"
* Author José Bollo <jose.bollo@iot.bzh>
*
* Licensed under the Apache License, Version 2.0 (the "License");
#include <stdlib.h>
#include <stdint.h>
+#include <stdio.h>
+#include <limits.h>
#include <string.h>
#include <errno.h>
#include <sys/types.h>
/*******************************************************************/
+#if WITH_DYNAMIC_BINDING
static int create_so(const char *path, struct afb_apiset *declare_set, struct afb_apiset *call_set)
{
return afb_api_so_add_binding(path, declare_set, call_set) >= 0;
{
return add(path, declare_set, call_set, onlack_so);
}
+#endif
/*******************************************************************/
{
int rc;
struct stat st;
+ char sockname[PATH_MAX + 7];
rc = stat(path, &st);
if (!rc) {
switch(st.st_mode & S_IFMT) {
+#if WITH_DYNAMIC_BINDING
case S_IFREG:
rc = afb_api_so_add_binding(path, declare_set, call_set);
break;
+#endif
case S_IFSOCK:
- rc = afb_api_ws_add_client(path, declare_set, call_set, 0);
+ snprintf(sockname, sizeof sockname, "unix:%s", path);
+ rc = afb_api_ws_add_client(sockname, declare_set, call_set, 0);
break;
default:
NOTICE("Unexpected autoset entry: %s", path);