aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt1
-rw-r--r--bindings/CMakeLists.txt2
-rw-r--r--bindings/intrinsics/CMakeLists.txt2
-rw-r--r--bindings/samples/CMakeLists.txt88
-rw-r--r--bindings/samples/hello3.c1
-rw-r--r--bindings/tutorials/CMakeLists.txt (renamed from bindings/tutorial/CMakeLists.txt)5
-rw-r--r--bindings/tutorials/export.map (renamed from bindings/tutorial/export.map)0
-rw-r--r--bindings/tutorials/tuto-1.c (renamed from bindings/tutorial/tuto-1.c)0
-rw-r--r--bindings/tutorials/tuto-2.c (renamed from bindings/tutorial/tuto-2.c)0
-rw-r--r--bindings/tutorials/tuto-3.cpp (renamed from bindings/tutorial/tuto-3.cpp)0
-rw-r--r--bindings/tutorials/tuto-4.c (renamed from bindings/tutorial/tuto-4.c)0
-rw-r--r--bindings/tutorials/tuto-5.cpp (renamed from bindings/tutorial/tuto-5.cpp)0
-rw-r--r--bindings/tutorials/tuto-app1.c (renamed from bindings/tutorial/tuto-app1.c)0
-rw-r--r--conf.d/packaging/deb/agl-app-framework-binder.dsc2
-rw-r--r--conf.d/packaging/deb/debian.agl-app-framework-binder-samples.install1
-rw-r--r--conf.d/packaging/deb/debian.control6
-rw-r--r--conf.d/packaging/rpm/agl-app-framework-binder.spec14
-rw-r--r--coverage/bin/Makefile8
-rw-r--r--src/afb-wsj1.c6
-rw-r--r--src/sig-monitor.c2
20 files changed, 53 insertions, 85 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f841b5de..ebda48f0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -157,6 +157,7 @@ IF(ONLY_DEVTOOLS)
MESSAGE(WARNING "Only DEVTOOLS are compiled, not the binder!")
ELSE()
SET(binding_install_dir ${CMAKE_INSTALL_FULL_LIBDIR}/afb)
+ SET(install_datadir ${CMAKE_INSTALL_FULL_DATADIR}/af-binder)
###########################################################################
# activates the monitoring by default
diff --git a/bindings/CMakeLists.txt b/bindings/CMakeLists.txt
index 35f22897..c4fbdea0 100644
--- a/bindings/CMakeLists.txt
+++ b/bindings/CMakeLists.txt
@@ -18,5 +18,5 @@
ADD_SUBDIRECTORY(intrinsics)
ADD_SUBDIRECTORY(samples)
-ADD_SUBDIRECTORY(tutorial)
+ADD_SUBDIRECTORY(tutorials)
diff --git a/bindings/intrinsics/CMakeLists.txt b/bindings/intrinsics/CMakeLists.txt
index 70da19e9..ee981217 100644
--- a/bindings/intrinsics/CMakeLists.txt
+++ b/bindings/intrinsics/CMakeLists.txt
@@ -27,7 +27,7 @@ SET_TARGET_PROPERTIES(afb-dbus-binding PROPERTIES
PREFIX ""
LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export.map"
)
-TARGET_LINK_LIBRARIES(afb-dbus-binding ${link_libraries})
+TARGET_LINK_LIBRARIES(afb-dbus-binding ${json-c_LDFLAGS} ${libsystemd_LDFLAGS})
INSTALL(TARGETS afb-dbus-binding
LIBRARY DESTINATION ${binding_install_dir})
diff --git a/bindings/samples/CMakeLists.txt b/bindings/samples/CMakeLists.txt
index 34b364f5..51442684 100644
--- a/bindings/samples/CMakeLists.txt
+++ b/bindings/samples/CMakeLists.txt
@@ -16,78 +16,18 @@
# limitations under the License.
###########################################################################
-
-INCLUDE_DIRECTORIES(${include_dirs})
-
-##################################################
-# AuthLogin
-##################################################
-ADD_LIBRARY(authLogin MODULE AuthLogin.c)
-SET_TARGET_PROPERTIES(authLogin PROPERTIES
- PREFIX ""
- LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export.map"
-)
-TARGET_LINK_LIBRARIES(authLogin ${link_libraries})
-INSTALL(TARGETS authLogin
- LIBRARY DESTINATION ${binding_install_dir})
-
-##################################################
-# DemoContext
-##################################################
-ADD_LIBRARY(demoContext MODULE DemoContext.c)
-SET_TARGET_PROPERTIES(demoContext PROPERTIES
- PREFIX ""
- LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export.map"
-)
-TARGET_LINK_LIBRARIES(demoContext ${link_libraries})
-INSTALL(TARGETS demoContext
- LIBRARY DESTINATION ${binding_install_dir})
-
-##################################################
-# DemoPost
-##################################################
-ADD_LIBRARY(demoPost MODULE DemoPost.c)
-SET_TARGET_PROPERTIES(demoPost PROPERTIES
- PREFIX ""
- LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export.map"
-)
-TARGET_LINK_LIBRARIES(demoPost ${link_libraries})
-INSTALL(TARGETS demoPost
- LIBRARY DESTINATION ${binding_install_dir})
-
-##################################################
-# tic-tac-toe
-##################################################
-ADD_LIBRARY(tic-tac-toe MODULE tic-tac-toe.c)
-SET_TARGET_PROPERTIES(tic-tac-toe PROPERTIES
- PREFIX ""
- LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export.map"
-)
-TARGET_LINK_LIBRARIES(tic-tac-toe ${link_libraries})
-INSTALL(TARGETS tic-tac-toe
- LIBRARY DESTINATION ${binding_install_dir})
-
-##################################################
-# hello2
-##################################################
-ADD_LIBRARY(hello2 MODULE hello2.c)
-SET_TARGET_PROPERTIES(hello2 PROPERTIES
- PREFIX ""
- LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export.map"
-)
-TARGET_LINK_LIBRARIES(hello2 ${link_libraries})
-INSTALL(TARGETS hello2
- LIBRARY DESTINATION ${binding_install_dir})
-
-##################################################
-# hello3
-##################################################
-ADD_LIBRARY(hello3 MODULE hello3.c)
-SET_TARGET_PROPERTIES(hello3 PROPERTIES
- PREFIX ""
- LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export.map"
-)
-TARGET_LINK_LIBRARIES(hello3 ${link_libraries})
-INSTALL(TARGETS hello3
- LIBRARY DESTINATION ${binding_install_dir})
+macro(sample name source)
+ add_library(${name} MODULE ${source})
+ set_target_properties(${name} PROPERTIES PREFIX "" LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export.map")
+# target_link_libraries(${name} ${link_libraries})
+ target_link_libraries(${name} ${json-c_LDFLAGS} ${CMAKE_THREAD_LIBS_INIT})
+ install(TARGETS ${name} LIBRARY DESTINATION ${install_datadir}/bindings/samples)
+endmacro(sample)
+
+sample(authLogin AuthLogin.c)
+sample(demoContext DemoContext.c)
+sample(demoPost DemoPost.c)
+sample(tic-tac-toe tic-tac-toe.c)
+sample(hello2 hello2.c)
+sample(hello3 hello3.c)
diff --git a/bindings/samples/hello3.c b/bindings/samples/hello3.c
index af194785..ff7da61a 100644
--- a/bindings/samples/hello3.c
+++ b/bindings/samples/hello3.c
@@ -913,6 +913,7 @@ static void api (afb_req_t request)
}
sapi->api = afb_api_new_api(api, apiname, NULL, 1, apipreinit, NULL);
if (!sapi->api) {
+ free(sapi);
afb_req_reply_f(request, NULL, "cant-create", "%m");
goto end;
}
diff --git a/bindings/tutorial/CMakeLists.txt b/bindings/tutorials/CMakeLists.txt
index f05fa541..e071d7a9 100644
--- a/bindings/tutorial/CMakeLists.txt
+++ b/bindings/tutorials/CMakeLists.txt
@@ -17,15 +17,14 @@
###########################################################################
-#INCLUDE_DIRECTORIES(${include_dirs})
-
MACRO(tuto num ext)
ADD_LIBRARY(tuto-${num} MODULE tuto-${num}.${ext})
SET_TARGET_PROPERTIES(tuto-${num} PROPERTIES
PREFIX ""
LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/export.map"
)
- TARGET_LINK_LIBRARIES(tuto-${num} ${link_libraries})
+ TARGET_LINK_LIBRARIES(tuto-${num} ${json-c_LDFLAGS})
+ install(TARGETS tuto-${num} LIBRARY DESTINATION ${install_datadir}/bindings/tutorials)
ENDMACRO(tuto)
diff --git a/bindings/tutorial/export.map b/bindings/tutorials/export.map
index ee2f4133..ee2f4133 100644
--- a/bindings/tutorial/export.map
+++ b/bindings/tutorials/export.map
diff --git a/bindings/tutorial/tuto-1.c b/bindings/tutorials/tuto-1.c
index 1f58be6c..1f58be6c 100644
--- a/bindings/tutorial/tuto-1.c
+++ b/bindings/tutorials/tuto-1.c
diff --git a/bindings/tutorial/tuto-2.c b/bindings/tutorials/tuto-2.c
index 10797081..10797081 100644
--- a/bindings/tutorial/tuto-2.c
+++ b/bindings/tutorials/tuto-2.c
diff --git a/bindings/tutorial/tuto-3.cpp b/bindings/tutorials/tuto-3.cpp
index 8ad69ef3..8ad69ef3 100644
--- a/bindings/tutorial/tuto-3.cpp
+++ b/bindings/tutorials/tuto-3.cpp
diff --git a/bindings/tutorial/tuto-4.c b/bindings/tutorials/tuto-4.c
index cb909fd0..cb909fd0 100644
--- a/bindings/tutorial/tuto-4.c
+++ b/bindings/tutorials/tuto-4.c
diff --git a/bindings/tutorial/tuto-5.cpp b/bindings/tutorials/tuto-5.cpp
index 458ae7b5..458ae7b5 100644
--- a/bindings/tutorial/tuto-5.cpp
+++ b/bindings/tutorials/tuto-5.cpp
diff --git a/bindings/tutorial/tuto-app1.c b/bindings/tutorials/tuto-app1.c
index 93747cdd..93747cdd 100644
--- a/bindings/tutorial/tuto-app1.c
+++ b/bindings/tutorials/tuto-app1.c
diff --git a/conf.d/packaging/deb/agl-app-framework-binder.dsc b/conf.d/packaging/deb/agl-app-framework-binder.dsc
index 9327ea39..b9c1ef53 100644
--- a/conf.d/packaging/deb/agl-app-framework-binder.dsc
+++ b/conf.d/packaging/deb/agl-app-framework-binder.dsc
@@ -1,6 +1,6 @@
Format: 1.0
Source: agl-app-framework-binder
-Binary: agl-app-framework-binder-bin, agl-app-framework-binder-dev
+Binary: agl-app-framework-binder-bin, agl-app-framework-binder-dev, agl-app-framework-binder-samples
Architecture: any
Version: 2.0-0
Maintainer: unknown <unknown@debian.org>
diff --git a/conf.d/packaging/deb/debian.agl-app-framework-binder-samples.install b/conf.d/packaging/deb/debian.agl-app-framework-binder-samples.install
new file mode 100644
index 00000000..497004f6
--- /dev/null
+++ b/conf.d/packaging/deb/debian.agl-app-framework-binder-samples.install
@@ -0,0 +1 @@
+/opt/AGL/share/af-binder/*
diff --git a/conf.d/packaging/deb/debian.control b/conf.d/packaging/deb/debian.control
index 45e98277..d8dac6f8 100644
--- a/conf.d/packaging/deb/debian.control
+++ b/conf.d/packaging/deb/debian.control
@@ -24,3 +24,9 @@ Architecture: any
Depends: agl-app-framework-binder-bin
Description: agl-app-framework-binder-devel
+Package: agl-app-framework-binder-samples
+Section: libs
+Architecture: any
+Depends: agl-app-framework-binder-bin
+Description: agl-app-framework-binder-samples
+
diff --git a/conf.d/packaging/rpm/agl-app-framework-binder.spec b/conf.d/packaging/rpm/agl-app-framework-binder.spec
index 4f701469..7102e863 100644
--- a/conf.d/packaging/rpm/agl-app-framework-binder.spec
+++ b/conf.d/packaging/rpm/agl-app-framework-binder.spec
@@ -51,13 +51,19 @@ Summary: AGL app-framework-binder-devel
Provides a test agl binder service which can be used to test agl bindings on Linux PC
This service is evolving permanently and is only designed as a helper for developper.
+%package samples
+Requires: %{name} = %{version}
+Summary: AGL app-framework-binder-samples
+%description samples
+Provides sample bindings for testing AGL framework binder
+
%prep
%setup -q -n app-framework-binder-%{version}
%build
export PKG_CONFIG_PATH=%{_libdir}/pkgconfig
-%cmake -DAGL_DEVEL=1 -DINCLUDE_MONITORING=ON"
+%cmake -DAGL_DEVEL=1 -DINCLUDE_MONITORING=ON
%__make %{?_smp_mflags}
@@ -112,6 +118,12 @@ EOF
%dir %{_libdir}/pkgconfig
%{_libdir}/pkgconfig/*.pc
+%files samples
+%defattr(-,root,root)
+%dir %{_datadir}
+%dir %{_datadir}/af-binder
+%{_datadir}/af-binder/*
+
%changelog
* Wed Sep 27 2017 Dominig
- move to git repo
diff --git a/coverage/bin/Makefile b/coverage/bin/Makefile
index c0581693..b0914c7d 100644
--- a/coverage/bin/Makefile
+++ b/coverage/bin/Makefile
@@ -60,7 +60,7 @@ ldflags = -ldl -lrt -lpthread \
cflags = $(ccflags) $(ldflags)
-defs = -DAGL_DEVEL \
+defs = -DAGL_DEVEL=1 \
-DWITH_MONITORING_OPTION \
-DAFB_VERSION=\"cov\" \
-DUSE_SIG_MONITOR_DUMPSTACK=1 \
@@ -69,6 +69,12 @@ defs = -DAGL_DEVEL \
-DUSE_SIG_MONITOR_TIMERS=1 \
-DWITH_AFB_HOOK=1 \
-DWITH_AFB_TRACE=1 \
+ -DWITH_LEGACY_BINDING_V1=0 \
+ -DWITH_LEGACY_BINDING_V2=1 \
+ -DWITH_LEGACY_BINDING_VDYN=0 \
+ -DWITH_DBUS_TRANSPARENCY=0 \
+ -DWITH_SUPERVISION=0 \
+ -DWITH_DYNAMIC_BINDING=1 \
-DBINDING_INSTALL_DIR=\"$(shell pwd)/fake\"
afb_lib_src = $(shell ls $(srcdir)/*.c | egrep -v '/afs-|/main-|/fdev-epoll.c|/afb-ws-client.c' )
diff --git a/src/afb-wsj1.c b/src/afb-wsj1.c
index 33e0d195..4080edf2 100644
--- a/src/afb-wsj1.c
+++ b/src/afb-wsj1.c
@@ -307,11 +307,13 @@ static struct afb_wsj1_msg *wsj1_msg_make(struct afb_wsj1 *wsj1, char *text, siz
/* scan */
n = wsj1_msg_scan(text, items);
- if (n < 0)
+ if (n <= 0)
goto bad_header;
/* scans code: 2|3|4|5 */
- if (items[0][1] != 1) goto bad_header;
+ if (items[0][1] != 1)
+ goto bad_header;
+
switch (text[items[0][0]]) {
case '2': msg->code = CALL; break;
case '3': msg->code = RETOK; break;
diff --git a/src/sig-monitor.c b/src/sig-monitor.c
index f15f214e..70592812 100644
--- a/src/sig-monitor.c
+++ b/src/sig-monitor.c
@@ -154,7 +154,7 @@ static inline int timeout_create()
rc = timer_create(CLOCK_THREAD_CPUTIME_ID, &sevp, &thread_timerid);
thread_timer_set = !rc;
}
- return 0;
+ return rc;
}
/*