summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2018-02-06jobs: Add argument to startJosé Bollo3-5/+10
Change-Id: I89a75a036c60097fb898ab8723007ca6ebfc7f39 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-02-06afb-xreq: Export afb_request facilitiesJosé Bollo2-73/+73
Internally, the binder can need to convert afb_request to xreq and conversely. Exporting this facilities is good. Change-Id: I5bb01d701eee0ac30ad6ce490609f6124a9d5860 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-02-06afb-trace: Replace daemon by api nameJosé Bollo3-11/+11
This replacement greatly improves the code. Change-Id: If3fd6e6080eda2268ccf551998f99af01799be29 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-01-31afb-evt: Add event creation with prefixJosé Bollo3-11/+32
Change-Id: I2fd35e8ed59c28f4283be698a2586cdae5f7c8cf Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-01-31afb-api: Enforce api names to be hookableJosé Bollo7-8/+8
Change-Id: Ic1d5cb208c636d3261e1a96c4a81b488cb84a60e Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-01-31afb-hook: Allow to unhook some apisJosé Bollo2-33/+47
The apis starting with a $ (dollar) will not be tracked by hooks Change-Id: I3b83458c288ef1eb27993d4c71785b32e5a72deb Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-01-18jobs: Integrate systemd watchdog by defaultJosé Bollo1-0/+9
Change-Id: Iaa3ce3ee9188e3ddaf6ee70964963d29df78689f Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-01-18jobs: Split jobs_get_sd_eventJosé Bollo1-5/+16
Provide a mutex locked internal function for getting the event loop: get_sd_event_locked Change-Id: I2635f901b3ec0fcf2c52f569f4c57cfd046601af Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-01-18afb-common: CleanupJosé Bollo1-25/+0
Change-Id: Ifc5adbdc92c3d034c92dd432c72057f3267c4964 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-01-18afb-hreq: Dichotomic mimetype searchJosé Bollo1-7/+11
Change-Id: I6d906c31cdcf07c5404f1eb81cd44683976465f7 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-01-18afb-hreq: Sort mimetypesJosé Bollo1-9/+9
Change-Id: I45ae5a702b83dabe081b625b4bcaf5de33ffa1e6 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-01-18afb-hreq: Add json to known mimetypesLoïc Collignon1-0/+1
Change-Id: Ic11ebf7e569160dd25e66a1273904dfcd82bdeb8 Signed-off-by: Loïc Collignon <loic.collignon@iot.bzh>
2018-01-05afb-client-demo: Fix memory leakJosé Bollo1-0/+1
Change-Id: I636b95459715f3b272509eb76e304a49593fb527 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-01-05afb-api-so: Exclude directories starting with .José Bollo1-0/+42
Exclude from the search of bindings any directory starting with a dot (.) by default. It is possible to reactivate the prvious behaviour by defining the following preprocessor variables - AFB_API_SO_ACCEPT_DOT_PREFIXED_DIRS When this variable is defined, the directories starting with a dot are searched except if their name is "." or ".." or ".debug" - AFB_API_SO_ACCEPT_DOT_DEBUG_DIRS When this variable is defined and the variable AFB_API_SO_ACCEPT_DOT_PREFIXED_DIRS is also defined scans any directory not being "." or "..". The previous behaviour was like difining the 2 variables, meaning that only . and .. were excluded from the search. This change is intended to definitely solve the issue SPEC-662. Yocto installed the debugging symbols in the subdirectory .debug. For example the binding.so also had a .debug/binding.so file attached. Opening that debug file made dlopen crashing. See https://sourceware.org/bugzilla/show_bug.cgi?id=22101 Bug-AGL: SPEC-662 Change-Id: Ic38a83aaa5f16d938e504aba66597bb9a219c193 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-01-02afb-binding.hpp: Fix constexpr of 'binding'José Bollo1-1/+1
Change-Id: Icdee4029f11dcb6c0f75e945e0b411ea63654afe Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-12-21genskel: Add afb:: namespace prefixJosé Bollo1-3/+3
Change-Id: I0cd2d09f97fac7a1976d2bfcd5ab616472bf970a Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-12-21genskel: Add option for C++ outputJosé Bollo1-10/+26
The option --cpp or -x tell to produce a C++ output that uses the 'constexpr' c++ feature. Change-Id: I4eda4d21260573acbb01057ed95476bd4fc7ebe5 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-12-21sig-monitor: Handle signals in exitJosé Bollo1-2/+23
Change signal treatment when exit is called internally by sig-monitor. Change-Id: Ieb6261b2143811d7abcbc49b134e919c8c5626dc Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-12-21sig-monitor: Make signal list globalJosé Bollo1-22/+22
Change-Id: I456a08dccf65d1a188e7bb7e0a6ab905ae823a25 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-12-18afb-hreq: Add predefined mime-typesJosé Bollo1-7/+18
Add mimetypes for common extensions for conformance to https://www.w3.org/TR/widgets/#rule-for-identifying-the-media-type-of-a-file Change-Id: I3ae51afbbc2916b7237e4fa546392ec7ec5ea42a Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-12-05afb-api-ws: Make weak ws-client by default (to be fixed)José Bollo3-4/+16
The case of unicens service that can be here or not creates problem to the binding 4a when the service is not here. This commits makes the requirement of ws-client socket optional. This unblocks the situation but need to be fixed later. Bug-AGL: SPEC-1151 Change-Id: I569fa781c003492a4c6a7ad84c5b140ecdb05b65 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-12-04Remove unused and confusing filesJosé Bollo5-387/+0
Change-Id: I8362d8d7bf0f11a41ef2275614e9ef2bcf0fee29 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-12-01jobs: Fix locks in event loopsJosé Bollo1-11/+17
Change-Id: Ie07a9bc4f930a0ecd2102a94e7f5f7b0daa705ef Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-30jobs: Fix possible race conditionJosé Bollo1-2/+4
Sending the signal while not being sure that is is expected could be a race condition. Taking the mutex avoids it. In the same time, switch to broadcasting. Change-Id: I3f43d0d860cccc61ec140ceef223f572f806872c Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-29afb-config: Check environment variablesJosé Bollo1-0/+35
The following environment variables allows several setting by the environment: * AFB_TRACEREQ, AFB_TRACEDITF, AFB_TRACESVC, AFB_TRACEEVT These variables allows setting of options --tracereq, --traceditf, --tracesvc, --traceevt * AFB_LDPATHS Set the option --ldpaths Change-Id: I22700c658ce3fa1ceb15eab8f67adaaf41627b8f Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-29jobs: rewrite of the event loop handlingJosé Bollo1-106/+108
This new version use an eventfd to unlock the event loop when needed. This reduce the count of sd_event needed. Bug-AGL: SPEC-1091 Change-Id: I9bc273e89ab1a70ccc2187c2571e68c9c771ee25 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-29afb-ws & websocket: Fix writing very long dataJosé Bollo3-21/+47
This version loops to write very long data on websockets. Bug-AGL: SPEC-1091 Change-Id: I8f17e75e4ef483be29fa8cae2c0af159783ec2c6 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-20CMAKE: refactor optionseel_4.99.3eel/4.99.34.99.3José Bollo8-52/+40
The option ALLOW_NO_BINDER is removed and the option ONLY_DEVTOOLS is introduced. Change-Id: Ia19eb977ee25a3871582605028fdef75e552363f Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-20Merge "Fix build for native package"José Bollo1-3/+5
2017-11-20Fix build for native packageRonan Le Martret1-3/+5
* If the package is natively compile, the gcc used is the host gcc, and host gcc version must be >4.9. This is unneeded for the mode ALLOW_NO_BINDER (like in native). Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh>
2017-11-17fix build errorJosé Bollo1-1/+1
Change-Id: I6ff16055597d36290f50b40d6dfe960aea691652 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-17afb-proto-ws: Fix autolock in proto-wsJosé Bollo4-50/+249
Because a systemd event loop can not be reentered while evaluating an event callback, the event loop was removed from the threads. It had the effect to enter in deadlock when calling a synchronous call while in an event callback. Queueing a job solves the issue. But because using queued job has implications on libafbws, a fake job manager is added for libafbws. Change-Id: Id793bea55743790082eaab48cd4cc87f7993772a Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-17CMAKE: allow to compile afb-genskel onlyJosé Bollo3-13/+44
When missing components are detected, allows to not compile the binder if ALLOW_NO_BINDER is ON Change-Id: I0fb27844e3f36d4dd643bdf250f05b4f6769bc53 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-13afb-export: Ensure monitoring of eventsJosé Bollo2-1/+2
Change-Id: Id82c624f695a229023447c16652bcc912b6d6fed Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-12monitoring: Set default token to HELLOJosé Bollo2-2/+2
Change-Id: I3c158598da70089b9646233c632f14f62f1baa15 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-11afb-proto-ws: fix self locking issueJosé Bollo1-29/+82
Calling synchronously a verb on an event of the same API was blocking. Change-Id: I58a988c6df8c60cd3a38c3cdff23d7be8b6be54e Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-07afb-stub-ws: autoclose session on disconnectionJosé Bollo3-1/+12
Change-Id: If46ca2fa34a080b7087edb4e0da109c5ee85b14f Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-07afb-stub-ws: manage closed sessionsJosé Bollo3-47/+76
Change-Id: I16620f12719c222c0da03caf330a865149fe9051 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-07afb-session: improve namingJosé Bollo1-12/+12
Change-Id: I6692f9089be355995d5caf979f4344ed3b8337a7 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-07afb-stub-ws: Track sessions for releasing itJosé Bollo1-0/+47
Change-Id: If0ff0f491e0fd8267137aa742d7acbe0157f88ad Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-06afb-session: Improve readabilityJosé Bollo1-28/+34
Change-Id: I4035a59d125e0768b0366c3dc5e7509e416ab9c6 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-06afb-session: fix reference countingJosé Bollo2-7/+21
Change-Id: If36c9210f0982ba35299de52f0c8fd96e7c836e2 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-06afb-session: optimizationJosé Bollo1-104/+103
Change-Id: Ic3b0ec8e7bcbf21f7ae3a9f2b1a5719118a7912d Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-06afb-session: add commentsJosé Bollo1-19/+64
Change-Id: I88026384d3f5e98659fba2bb774e41e931d45f51 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-06afb-session: remove unused access timeJosé Bollo1-3/+0
Change-Id: I1e8ca2adfec5bf7df5a7da02e6d093ae099ec9a3 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-06afb-session: Add timeout features for sessionsJosé Bollo4-13/+24
Change-Id: I0aa8a82c0bbf709aa380ef7e5efe2e4ebaf454c0 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-06afb-session: add function afb_session_searchJosé Bollo3-11/+29
Also the function afb_session_get always create a session even if 'created' is NULL Change-Id: Ia5ac1231e1d61e92cb9bbc07c968e3000d6864ff Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-06afb-trace: improve and simplify session managementJosé Bollo1-70/+37
Change-Id: I828e0498bc68c9f1d1635a886e0a93fcb2d2389c Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-06afb-session: improves comments and namesJosé Bollo1-3/+6
Change-Id: I05850b05dc6747563ef38800821bfcaf5c45b5d0 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-11-06afb-session: redefine the function 'afb_session_create'José Bollo4-13/+7
Change-Id: Ib8a66af30ea2438248adb66c9a95ac82663ec223 Signed-off-by: José Bollo <jose.bollo@iot.bzh>