summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2017-05-18Fix a bug in subscribers countingJosé Bollo1-3/+4
To avoid as much as possible allocation/deallocation when possible sequences of subscribe/unsubscribe are encountered, the watch strucutre of events is destroyed only when either the event or the client is destroyed. This commit fixes a bad handling in the count of active subscribers. Change-Id: I3f240e69c3b21356ff07f584fe9bfb578d46732b Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-15Fix the timer signal numberJosé Bollo1-1/+1
Change-Id: I2dc7520f41472afefc31be7d3ac1a205611c1828 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-12free SIGALRM for boost timersJosé Bollo2-4/+6
Change-Id: Ib6825c21b6589db6c7e9b8c5a179c347bcc0a93d Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-11generate skeleton from OpenAPI 3José Bollo4-353/+566
Change-Id: Ia2c9d42a12e9b425d34a3a70ae255d82a9320e8c Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-11improve logJosé Bollo2-3/+3
Change-Id: I218356c3122179887e8be885affb82cdc6403dbf Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-11Compiles for cynara if presentJosé Bollo2-8/+31
Change-Id: If8ef53f8a0a57bf6d19b0da3d13a7794a8d0eef9 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-11implement authorisation checkJosé Bollo4-6/+126
Change-Id: I2ef74b715a115acd11fa13744ba921e875f0bc65 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-11refactor hsrv using jobs queueJosé Bollo1-13/+16
Change-Id: I3d0c70efc2053340fcec93695006e01bb6b49e2c Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-05remove afb-perm compilerJosé Bollo2-539/+0
Change-Id: Ib35f33440ae7fafe72870ad437d39508aec7894e Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-05Add default cred to HTTP linkJosé Bollo2-0/+5
Change-Id: Ibb73cebc99094b33b61820482327296049c2026a Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-05Add user to contextJosé Bollo3-7/+22
At this time, user is the string representation of the uid. Change-Id: I65fbb4112f209fdb948d24e9c47fa73dacdf571f Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-05Expose session UUID from contextJosé Bollo2-3/+12
Change-Id: Ifcf08e840b4ac92889874700c630495b6dfc3e66 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-05Improve includesJosé Bollo2-4/+4
Change-Id: I87278ce38270782e74bd29a7920fe6a6e63eea0d Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-05make function afb_context_set return a statusJosé Bollo2-5/+3
Change-Id: I5172c58288e5974001f3478f7cee94d7a98abe7d Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-05Change the effect of close sessionJosé Bollo1-5/+3
Using the flag AFB_SESSION_CLOSE now has effect only on the requesting binding. Before, all the session was closed. This could lead to unexpected conflicts. Change-Id: Ic945e8d164a8558eae05d169b0c5f372b036cf36 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-05session: start to manage concurrencyJosé Bollo4-34/+91
Change-Id: I5895fa14fcb496e71fba600994e7e454cf1d110b Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-04Make LOA local to the bindingJosé Bollo4-40/+20
Change-Id: If0494a19a4ce2865af699491c1f6d7b73bce8f11 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-04fix a warningJosé Bollo1-1/+1
Change-Id: Iaebb861a56a490decdca0eada52e26b902457d1d Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-04add function to get the current LOAJosé Bollo2-0/+6
Change-Id: I0f2a0eae8b4de982549fa4a87e2e0f8150c7d6cc Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-04Prepare permission for binding version 2José Bollo6-263/+10
Change-Id: I38c1291b3c11a9b436d00ef6dab4f7efb86e4996 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-04Prepare bindings version 2José Bollo13-92/+160
Change-Id: Ic9e417d9a36f5da08883c3ded127d8350ff893cc Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-04Prepare xreq to be aware of the versionJosé Bollo4-35/+18
Change-Id: If8a1ac53e58ff644d7903aebd263d7d42308c756 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-05-04Eliminate use of AFB_SESSION_CREATEJosé Bollo2-12/+2
AFB_SESSION_CREATE is obsolete since a while. Change-Id: I3dc3eb374f0842d7b210a106b72bce2e4c5c1512 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-26fix a warningJosé Bollo1-1/+1
Change-Id: I9aa2d121771a4a1cca2c4733b3f78ee72db70840 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-26cleanupJosé Bollo1-4/+1
Change-Id: I6296e8d0897e3a1619d1ad832a27dcb9828eae99 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-26Print credential in default request hookJosé Bollo1-1/+11
Change-Id: I67af78d8838de4c5386fd62c8f3b26d1ad8fb338 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-26Use upgrade abitlity of libmicrohttpdJosé Bollo3-25/+45
Since version 0.9.52, libmicrohttpd correctly handles upgrading of connections. Leveraging that feature is a best. Change-Id: Icde686cd9a3c12dda5ee74f354086ccff435796c Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-26Sort verbs and compute their permissionsJosé Bollo1-7/+68
For the version 2, the verbs are alphabetically sorted and the permissions are computed for further evaluation. Change-Id: I10b50f841c920e9912bf734238f35e52aecedcc1 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-25Add 'afb_daemon_queue_job' for bindingsJosé Bollo3-13/+41
This allow bindings to queue asynchronous jobs. Change-Id: I2a228388c9defde23adb672d579c4a299f212850 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-25Make monitor use the interface version 2José Bollo3-82/+28
Enforce monitor API to be a kind of standard binding. Change-Id: I4739f879d5e076eb3505f5fe2cf658e6f9299de6 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-25Update the monitor interface for private featureJosé Bollo2-6/+66
Change-Id: I14caa33d2abad26bf244e93f7efe93206c6c50da Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-25Add private binding interface featureJosé Bollo1-5/+23
Also make correct strings Change-Id: Iac63fb8202c115458910ca1ec42fbca9872df9f8 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-25genskel: add tiny skeleton generatorJosé Bollo5-0/+867
This adds a tiny generator of skeleton for bindings version 2. This is a research work. Change-Id: Id72f6addfd18ebb866e3b609bb49e74ee676b83d Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-21afb-monitor: draft of monitoringJosé Bollo4-0/+425
this is a draft version to be continued. Change-Id: I1062a6f872a2b36d4e0434fb18d1857961d50aab Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-21afb-api: add a 'describe' functionJosé Bollo2-1/+49
this is intended for introspection Change-Id: I2518893c8cb04295159c3646f1286ffd30f739e0 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-21afb-api-so-v2: split the declaration in two partsJosé Bollo2-31/+47
Having a part not linked to an existing opened shared library might be useful for internal APIS. Change-Id: I56348f07c87f6844682e3ea56dc07d7ee296bfbf Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-21main: init session module firstJosé Bollo1-3/+5
Change-Id: If2acee2fa6469cbfb6c2d11eb1e3fd622b093155 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-21apiset: improvementsJosé Bollo2-9/+48
Change-Id: I476ab17bb5c48dbb3cd6c215687989203407549f Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-21afb-client-demo: Handle commentsJosé Bollo1-3/+6
Change-Id: I39287c5b5bba8b3ec18dc36e58a0d0102c5b48d6 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-21fix bug on incoming eventJosé Bollo1-1/+5
Change-Id: I7678412374565fd5802b0312e5808e2645df3728 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-20cleanup and improvement of xreqJosé Bollo5-60/+131
Change-Id: Iefda7f9d8f979a50fb2586a27edf0ca16d056a1f Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-20Add default api to apisetJosé Bollo4-96/+112
Also improve interface of apiset. Change-Id: I3c256ce1ecb089f0b518e45f0dee139c04943f2e Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-20Use of 'afb_api_is_valid_name'José Bollo1-37/+1
Use the common function 'afb_api_is_valid_name' instead of 'afb_apiset_valid_name'. Change-Id: I2d761473d4aa1cd90adf1b7a2c1976e727b437fc Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-19simplify main fileJosé Bollo1-9/+2
Change-Id: I590bf289ce597531622dc95bb00df11e0a8bdbb6 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-14Create afb-stub-ws by spliting afb-api-wsJosé Bollo4-1184/+1259
The file afb-stub-ws only carries the protocol of the internal remote calling conventions. It as the following benefits: - it easies transition to symetric connection (not planned) - it allows to have server stub on client socket and conversely, client stub on server socket (planned for debugging). Change-Id: I57dc8e78d7bd63427421a180abcb844f8313d37b Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-14allow abstract unix socketsJosé Bollo1-1/+3
unix sockets named "unix:@something" are now treated as abstract sockets. Change-Id: Ieb2bb9dd1c7b420b9e3fae81590ef49c32f63802 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-14use heuristic message idsJosé Bollo1-3/+16
Change-Id: I9492288de61b79074db38818c459f7447b12b4e6 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-13Introduce apiset for grouping apisJosé Bollo30-316/+613
This will be used at the end for debugging facilities. Change-Id: I75e3345667e1f58143c77a885e166375680ca194 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-13Implement subcall for services over websocketsJosé Bollo1-56/+258
This modification make subcalls pushed back to the client that will issue it for itself. This will at the end ensure the security context of the client. Change-Id: Ib4bb5125ffe1b942103b72d1a3d13892dda87baa Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-13secure subcall api and verbJosé Bollo1-4/+11
Change-Id: Ia1df54bfd139f247137f4373a2cbd75dcf74efc8 Signed-off-by: José Bollo <jose.bollo@iot.bzh>