summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2019-01-04Little code cleaning.Romain Forlot5-25/+12
Rename apiHandle to api. Add a missing parameter to QAfbWebsocketClient::call function comment. Change-Id: I6fb1acd7357fbea3132cd429e9477a1a0b8a4f43 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2019-01-03Adding packaging filesRomain Forlot8-0/+147
Adding the necessary packaging files for the AGL supported distributions. OpenSUSE, Fedora, Ubuntu and Debian. Bug-AGL: SPEC-2097 Change-Id: I81fe9b614366c2d9f3337f18082ed221b8931e6a Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-27Split the Qt part of the afb-helperssandbox/claneys/shared-libRomain Forlot2-39/+93
Split the Qt part of the afb-helpers in another library with only Qt helpers functions that could be enabled using the CMake option: AFB_HELPERS_QT=ON Bug-AGL: SPEC-1689 Change-Id: I761fef574ea61235226f3a1cb1663ddebec41c6d Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-17Static lib: pass afb-helpers to a static libraryguppy_6.99.3guppy/6.99.36.99.3Clément Bénier6-52/+278
- add afb-timer in helpers: rename ctl-timer from ctl-utilities into afb-timer - use the GNUinstalldirs module to set the destination directories. Change-Id: Ic88105d140edabcc96b091fb23f215db11ccb8c6 Signed-off-by: Clément Bénier <clement.benier@iot.bzh> Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-17wrap-json: ImprovementsJosé Bollo1-21/+25
* Most call "d = skip(++d);" are replaced by "d = skip(d + 1);" that is equivalent but that virtually doesn't assign transiently d with d+1. * make use of JSON_C_TO_STRING_NOSLASHESCAPE in test to improve output. Use a macro to reduce the code. * enforce 'wrap_json_check' to use 'wrap_json_vcheck' and 'wrap_json_match' to use 'wrap_json_vmatch'. Change-Id: I6e823da40415db4b54ec809455c93b39a8c5e9a5 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-12-13Revert "Added afb_list.h"Jan-Simon Moeller1-755/+0
Reverting due to: - Merged w/o full review cycle. - License unclear. This reverts commit a8b170a6131b6ad25e86745fdf10de63e16e3555. Change-Id: I810dcca9da84d930716a29b2220e49a0859df3c5
2018-12-13Added afb_list.hThierry Bultel1-0/+755
This is a user-space implementation of the kernel linked lists. Massively used in the kernel, it is really light and is contained in a single header. Change-Id: I686b5fa5707b1c59339694c460ab8f0fec9679d4 Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-12-13filescan-utils: follow symbolic links in searchThierry Bultel1-1/+3
Let the directory entities of symlink type be taken into account. Change-Id: Ic0197e81d1e0c761ca6a0fe9ea2dbcb56eee447b Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-12-13wrap-json: Fix duplicated lines in header fileJosé Bollo1-3/+0
Change-Id: I75558cf086b8b2d74297f9996abaa7f5a0b58cb7 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-12-13Add '@' as binder middle name separator.Romain Forlot1-1/+1
Used binder name if set using the application id which use '@' to separate name from version. Change-Id: I1c4d963250ac17d4e4104b6cc69aa08b8fa95505 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-13Enhance 'wrap_json_clone_depth' descriptionJonathan Aillet1-1/+5
Enhance 'wrap_json_clone_depth' description by adding details about clone depth using this function. Change-Id: Iede8fa6a697f12e8a32c1e15afdcef445edbcfe4 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-12-13Fix: use of GetBindingDirPath without dynapiRomain Forlot2-2/+10
For classic binding < 3 without dynapi this fix the error at compile time about conflicting type for this function. This worked on eel and previous version because 'struct dynapi' was declared and available for version 2 but now since binder is in V3 then it isn't the case so function signature is not valid anymore. Change-Id: I135a723d21d70b8c54f4cab1c534210757318ed0 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-13Retrieve directory list from environment variablesRomain Forlot2-4/+96
This adds a function able to retrieve from a prefix and suffix an environment variable. This is meant to search config or plugin files from potentially several sources, environment and source code. This tries to get 2 environments variables: - prefix+binderName+suffix (eg: AFT_LOWCAN_CONFIG_PATH) - prefix+suffix (eg: AFT_CONFIG_PATH) Then it returns the one found or both if they exist with the most accurate one (with the binder name) first followed by the other. Change-Id: Ic448ff017e6158bec05895d63688b8968b5c6434 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-13Remove the file .gitmodulesJose Bollo1-3/+0
This project has no dependencency to any submodule. Consequently it is cleaner to remove the file .gitmodules Change-Id: I097de9375a66c235b07626946ca8fcad196afbbd Signed-off-by: Jose Bollo <jose.bollo@iot.bzh>
2018-12-13Remove unnecessary 'AFB_DEBUG' redefinitionJonathan Aillet1-1/+1
Remove unnecessary 'AFB_DEBUG' redefinition when using app-fw v3. Change-Id: I3b0271442495882e2a10762fe54b2f3f4ebe8e6b Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-12-13Use binding version to handle dynapiJonathan Aillet2-9/+4
Use binding version to define dynamic api debug messages function. It is also cleaner to define binding version directly into repository cmake than into a header like before this commit. Change-Id: Ia14f635a7a2cec05c29f27ee4ce645711a8574a4 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-12-13At search, use the prefix parameter as a prefixJonathan Aillet1-1/+1
Be sure that prefix parameter is used as a prefix when searching for configuration files (when using 'ScanForConfig' function). Before this change, the function was only checking that the prefix parameter was present in the file name (but not necessarily at the beginning of the file name). Bug-AGL:SPEC-1239 Change-Id: I9986cce5fab0fd5cd6d3049731f4c5883056a5f4 Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-12-13Remove deprecated use of cmake/Qt macroLoïc Collignon1-1/+2
Last versions of cmake/Qt don't need the use of some macro anymore. It allows you to put *.qrc files as sources files, which are resources files. Those files need to be processed by a Qt's tool to be transformed as C++ sources files. Change-Id: Ide4b6eef53b3f6edfeac3c0553c79ce4277b1b7b Signed-off-by: Loïc Collignon <loic.collignon@iot.bzh>
2018-12-13Rename method to avoid conflict with Qt's oneLoïc Collignon2-2/+2
Each QtObject define an 'event' method, which can conflict with the 'event' method to handle events in an Application Framework meaning. Change-Id: I0fad844bfaa8fbfc2d14cc15b1f346b6f739a643 Signed-off-by: Loïc Collignon <loic.collignon@iot.bzh>
2018-12-13Fix warnings due to json-c evolutionSebastien Douheret1-3/+3
Library json-c now returns size_t instead of int. Change-Id: Ib4f8bcd5dc6382fb3d189e83707a39dee8e14683 Signed-off-by: Sebastien Douheret <sebastien.douheret@iot.bzh>
2018-12-13wrap-json: new helper functions for comparisonjobol3-29/+447
The new functions are - wrap_json_clone_depth: clone with defined depth - wrap_json_sort: sort an array accordingly to wrap_json_cmp - wrap_json_keys: compute the array of sorted keys - wrap_json_cmp: compare 2 items - wrap_json_equal: test equallity - wrap_json_contains: test inclusion Change-Id: I9787bff6c262fa2702c27802d771e2d487ce6309 Signed-off-by: jose bollo <jose.bollo@iot.bzh>
2018-12-13Removed anonymous function in ScanDir and fixed warningsSebastien Douheret1-71/+78
Change-Id: Ie6b67506be077f8fe5c2108e5dd98f9460dda485 Signed-off-by: Sebastien Douheret <sebastien.douheret@iot.bzh>
2018-12-13wrap-json: Add clone facilityJosé Bollo3-1/+97
This adds 3 new facilities: - wrap_json_clone: clones any json object superficially - wrap_json_clone_deep: clones any json object deeply - wrap_json_add: adds to an object the fields of an other object Change-Id: I3844d972aa6477c9dde6f66ad0b0604284a853a7 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-12-13Disabled debug code (only used for testing).Sebastien Douheret1-1/+1
Change-Id: I76e66e34f4dfe8d598d6ccf4c91e61932d5b75bc Signed-off-by: Sebastien Douheret <sebastien.douheret@iot.bzh>
2018-12-13Correction to include dynamic api correctlyJonathan Aillet1-1/+2
Define the correct version needed by the application framework for dynamic api. Change-Id: Ic0fd504316e2fc086545f0615ec6e83f2b1cae2d Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
2018-12-13Fixed build warnings with gcc >= 7.3Sebastien Douheret1-3/+3
Reduced the number of warnings in native host configuration (here Tumbleweed) in order to not hide true/real warnings that may appear in the future. Signed-off-by: Sebastien Douheret <sebastien.douheret@iot.bzh>
2018-12-13Added afb-helpers-utils.hThierry Bultel1-0/+17
Added this file to some useful macros, the first one here is INT_STR_MAX that permits to get rid of a warning with gcc >= 7.2.0 Change-Id: I768d216ab5494d346d5ee6e0df66f93410bfab57 Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-12-13Fixed compilation warnings with gcc-7.2.0Thierry Bultel1-5/+5
Replaced some 'size_t' by 'int' Change-Id: I07492dad242b2c8f608f9cc90a4a257e48acec6a Signed-off-by: Thierry Bultel <thierry.bultel@iot.bzh>
2018-12-13Fixed spellingSebastien Douheret2-3/+3
Signed-off-by: Sebastien Douheret <sebastien.douheret@iot.bzh>
2018-12-13More secure way to use strncat and strncpyRomain Forlot1-3/+3
This ensure not data will be written out of bound of the destination variable buffer Change-Id: I4d736855f085fc5f728258c5928fed7191df46b4 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-13Fix: compile errors depending API versionRomain Forlot1-4/+7
Change-Id: I9c1476ab35f9bf70322ad4cd81ab0790e4d0724b Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-13wrap-json: Fix warningsjobol1-4/+4
Signed-off-by: jobol <jose.bollo@iot.bzh>
2018-12-13wrap-json: Update the documentationjobol1-0/+13
Signed-off-by: jobol <jose.bollo@iot.bzh>
2018-12-13wrap-json: Accept null as valid base64jobol1-9/+18
Signed-off-by: jobol <jose.bollo@iot.bzh>
2018-12-13wrap-json: Record result of testsjobol1-0/+405
Signed-off-by: jobol <jose.bollo@iot.bzh>
2018-12-13wrap-json: Fix bug decoding empty base64jobol1-1/+2
The function 'decode_base64' was buggy because it freed 2 times the pointer 'result'. This came from the fact realloc frees the pointer and return NULL when the size if 0. Signed-off-by: jobol <jose.bollo@iot.bzh>
2018-12-13wrap-json: Improve base64 en-de-codingjobol1-8/+26
The optional characters '*' and '?' weren't managed so the packing of y/Y base64 wasn't really entire. Signed-off-by: jobol <jose.bollo@iot.bzh>
2018-12-13Fix: wrong searchPath parameterRomain Forlot1-5/+10
Change initialization parts of the function to be clearer and ensure that at least searchPath has been correctly passed Change-Id: Ic055e2c244b261b33960072f51193fcbbd48c222 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-13Documentate, formating, linting.Romain Forlot4-16/+51
Change-Id: Id77b9de1b847ca26133abd87511de4e78c7d01f7 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-13Adapt function to dynamic APIRomain Forlot2-7/+8
A dynamic API being dynamic, you need to pass as parameter on behalf of which API you want to act. If you are using classic v2 API then just pass a NULL pointer value. Change-Id: I9ac6b606ff25c63a05a647e418a7c2bcc4b2a7fe Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-13FormatingRomain Forlot2-15/+10
Change-Id: I16ee9154f4f5a7e71af83a22899a94f00e07aa79 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-13Make CURL Wrapping functions optionalRomain Forlot1-10/+22
Search CURL package in your system and add it if found. This will add a libcurl to be linked with the target. Change-Id: Ie4a720fd11de97abead7a92a7fb18b5c8af21ec5 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-13Add new function to retrieve HTTP response codeRomain Forlot2-0/+11
Change-Id: I1d01c95d6418646ef9d2f8f4b07210a33b10c117 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-13POST using unescaped argumentsRomain Forlot4-15/+103
Add the ability to make a POST request without urlencode the arguments. This will only concatenate them instead. You can also specify the used separator. Change-Id: Icb61a5a20771a89e89159132365d86ee4c982d1c Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-13Added a Qt's websocket client to AFB into helpersLoïc Collignon4-1/+264
This add a single Qt class to serve as a client to Application Framework Binder. It's optional, not enabled by default. To enable you have to set AFB_HELPERS_QTWSCLIENT to ON. Change-Id: Ia0759a95688e48183e6661082693c410a575b14b Signed-off-by: Loïc Collignon <loic.collignon@iot.bzh>
2018-12-13Fix GCC < v7 warning on maybe unitialized variableRomain Forlot1-2/+2
Initialization done under a switch case statement within a "for" loop which throw warning with GCC v6. Change-Id: I47b51598cc68943bab6f98bd87b7ba6f40caeafc Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-13wrap-json: Add base64 byte buffer supportjobol2-4/+225
Signed-off-by: jobol <jose.bollo@iot.bzh>
2018-12-13Rename cmake target accordingly to the git repoRomain Forlot1-1/+1
Change-Id: I7e05205fe392884c25d1370564cad61119894754 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-13Adds a CURL wrapper library to help using libcurlRomain Forlot5-1/+707
Change-Id: If73bab16a5d4a5258f730c599630bd5fa8e5684f Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
2018-12-13Linting/Fix: remove warning int/size_t conversionRomain Forlot1-5/+5
Change-Id: I831bac418f5c12c9a747b08ea8be72dcbe1d4ea3 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>