summaryrefslogtreecommitdiff
path: root/src/lib/ecore_con (follow)
AgeCommit message (Collapse)Author
2018-12-07eo: make efl_future_then have a data pointer in addition of the object pointer.Cedric BAIL
Summary: In the case when you have multiple future in flight related to one object, you couldn't use the previous version of efl_future_then. Now all function calls take a void* pointer that allow multiple future to have their private data request data accessible in all the callback. This should not break released API as Eo.h is not released yet and so was efl_future_Eina_FutureXXX_then. Depends on D7332 Reviewers: felipealmeida, segfaultxavi, vitor.sousa, SanghyeonLee, bu5hm4n Reviewed By: segfaultxavi Subscribers: #reviewers, #committers Tags: #efl Maniphest Tasks: T7472 Differential Revision: https://phab.enlightenment.org/D7379
2018-12-06ecore_con: handle timeout of the attempt to connect.Cedric BAIL
This has been the fix that prevent random ecore_con DNS tests to fail for me. This should also in case of failure make the timeout of the ecore_con itself be honored which wasn't anymore. @fix Differential Revision: https://phab.enlightenment.org/D7402
2018-12-06ecore_con: wait for thread to finish at the same time as canceled to avoid ↵Cedric BAIL
race condition. Differential Revision: https://phab.enlightenment.org/D7401
2018-12-06ecore_con: enforce connection state to not let a hanging connection continue.Cedric BAIL
It is expected that when the connection state is forcefully set, that all hanging connection should be stopped instead of them continuing and later resetting the state to having a connection. Differential Revision: https://phab.enlightenment.org/D7397
2018-12-06ecore_con: refactor TCP Dialer to always wait for thread to finish.Cedric BAIL
This is a better way to avoid race execution by the async end callback that could happen at some later random point in time. The thread are cancelled right away, so event if their is a "wait" time set, it should never actually matter and be always instantaneous. Differential Revision: https://phab.enlightenment.org/D7396
2018-12-03meson: use eolian_gen with -SMarcel Hollerbach
this ensures that eolian does not parse installed .eo files Differential Revision: https://phab.enlightenment.org/D7405
2018-11-30ecore_con: simplify code by using helper that create future directly.Cedric BAIL
The new helper help replace call to eina_future_resolved and eina_future_rejected with a scheduler lookup to just one function call. Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es> Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br> Differential Revision: https://phab.enlightenment.org/D7342
2018-11-30ecore_con: simplify code by using proper helper.Cedric BAIL
efl_loop_promise_new is a helper function that does automatically figure out an available scheduler and create a promise from it. Basically replacing the call to eina_promise_new(efl_loop_future_scheduler_get(o), ...). Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es> Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br> Differential Revision: https://phab.enlightenment.org/D7333
2018-11-28eo-docs: Remove Doxygen tags from efl*.eo filesXavi Artigas
Summary: - Replace '\@ref name' with '@name' - Remove unused \@internal tag This tag affects text AFTER it, and there is no text after it. - Remove \@note tag Replaced with a simple NOTE: text, since eolian does not have an equivalent tag. - Remove spurious \@Efl... tags They should really be @Efl... - Remove \@p tags There is no eolian equivalent, and a simpler $ suffices in this case. Fixes T7482 Reviewers: q66 Reviewed By: q66 Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T7482 Differential Revision: https://phab.enlightenment.org/D7372
2018-11-23eo: rename efl_future_Eina_FutureXXX_then in efl_future_then as this has ↵Cedric BAIL
been available for some time. Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br> Differential Revision: https://phab.enlightenment.org/D7327
2018-11-09efl net - warn - fix eldbus service struct to fill all fieldsCarsten Haitzler (Rasterman)
no more warnings about uninit fields
2018-11-09ecore con - fix buffer truncate warnign by a bigger bufferCarsten Haitzler (Rasterman)
2018-11-09efl net - fix dbus field init to init all fields in a structCarsten Haitzler (Rasterman)
2018-10-24meson: add eolian custom dependencies supportDaniel Kolesa
This uses the meson/ninja depfile functionality + eolian to make sure proper dependencies between generated files and .eo files are managed, to ensure consistent re-generation of all generated files that are affected upon .eo file modification. For custom rules with multiple outputs, Ninja currently does not support depfiles. Therefore, split those into two custom rules so that the depfiles functionality can be enabled. While this is ugly and slows down the process a little by having to invoke Eolian twice instead of once, it has to be done and it's still better than what we had in Autotools anyway. Differential revision: D7187 Fixes T6700.
2018-10-08ecore_con_legacy: fix coverity issues (use after free)JunsuChoi
Summary: for hard failures (highly unlikely), the handle would be deleted and the next use would crash. Test Plan: N/A Reviewers: Jaehyun_Cho, zmike, cedric, bu5hm4n Reviewed By: bu5hm4n Subscribers: bu5hm4n, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D7139
2018-10-05meson: unify system propertiesMarcel Hollerbach
this unifies the system types into 4 boolean flags This fixes the fact that meson changed the system string accross versions. Differential Revision: https://phab.enlightenment.org/D7144
2018-10-02here comes mesonMarcel Hollerbach
a new shiny buildtool that currently completes in the total of ~ 4 min.. 1 min. conf time 2:30 min. build time Where autotools takes: 1:50 min. conf time 3:40 min. build time. meson was taken because it went quite good for enlightenment, and is a traction gaining system that is also used by other mayor projects. Additionally, the DSL that is defined my meson makes the configuration of the builds a lot easier to read. Further informations can be gathered from the README.meson Right now, bindings & windows support are missing. It is highly recommented to use meson 0.48 due to optimizations in meson that reduced the time the meson call would need. Co-authored-by: Mike Blumenkrantz <zmike@samsung.com> Differential Revision: https://phab.enlightenment.org/D7012 Depends on D7011
2018-09-27ecore_con: Add docs for ecore_con legacy functionsJunsuChoi
Summary: Find docs of missing legacy functions from 9c33623(ecore: add ecore_con_url_ssl_ca_set.), 40edc9c(ecore: add ecore_con_url_ssl_verify_peer_set patch by Raoul Hecky.) and add them. Test Plan: make doc Reviewers: cedric, Hermet, segfaultxavi Reviewed By: segfaultxavi Subscribers: #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D7117
2018-09-03docs: Fix typos in API reference docYeongjong Lee
Reviewers: segfaultxavi, kimcinoo Reviewed By: kimcinoo Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D6960
2018-08-30docs: Fix typos and some wrong expressions in API reference doc.Myoungwoon Roy, Kim
Summary: I had fixed some typos and some wrong expressions in API reference doc Test Plan: N/A Reviewers: raster, zmike, Hermet, segfaultxavi Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D6943
2018-08-20ecore_con: migrate to eina_vpathMarcel Hollerbach
Summary: the logic here was against the xdg standard, thus we migrate to eina_vpath which uses the correct xdg standard Depends on D6745 Reviewers: zmike, stefan_schmidt, #committers Reviewed By: zmike, #committers Subscribers: #reviewers, cedric, #committers, zmike Tags: #efl Differential Revision: https://phab.enlightenment.org/D6746
2018-07-06ecore-con/proxy_helper: fix in-tree run pathMike Blumenkrantz
this is located in the bin/ecore_con directory, not bin/ecore_con/utils, so ensure that we pass the correct path in order to avoid not finding the file @fix ref T6713 Differential Revision: https://phab.enlightenment.org/D6515
2018-07-03ecore-con/legacy: kill server with DEL event if a dialer error occursMike Blumenkrantz
Summary: in the course of the efl-net rewrite, the previous relied-upon behavior sequence of error -> disconnect -> del was broken, and error events no longer triggered disconnects or server deletion. the failure was caused by a check for the 'connecting' flag, preventing DEL events from being triggered further, the ordering of the events was flipped from ERROR -> DEL to DEL -> ERROR; this is also fixed now this caused any failed connection to leak the entire server connection since existing handlers for the del event were never triggered and the server was never destroyed @fix fix T6330 Reviewers: devilhorns Reviewed By: devilhorns Subscribers: cedric, #committers Tags: #efl Maniphest Tasks: T6330 Differential Revision: https://phab.enlightenment.org/D6481
2018-06-25ecore_con: make dns resolver thread stop blocking when canceledMike Blumenkrantz
Summary: if the user or system attempts to cancel this thread then it should stop blocking and exit in order to avoid potentially exiting after efl has expected ecore-con to stop being active @fix fix T7041 Depends on D6354 Reviewers: ManMower, devilhorns Reviewed By: ManMower Subscribers: cedric, #committers Tags: #efl Maniphest Tasks: T7041 Differential Revision: https://phab.enlightenment.org/D6355
2018-06-21ecore_con: do proper version test for TLS_method.Alastair Poole
2018-06-20ecore_con: FreeBSD 11.2 not providing TLS generic methods.Alastair Poole
On some systems the TLS_client/server_method() is not available. Using fallback. In time as openssl changes propagate this really shouldn't be necessary.
2018-06-20Patch for T6342Alastair Poole
Summary: Deprecate SSLv3. Reviewers: zmike, raster, devilhorns Reviewed By: zmike Subscribers: cedric, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D6334
2018-06-07ecore_con : Fix that null pointer access for segmentation faultJunsuChoi
Summary: "cl->svr" was to be null on line 281. This problem occurred from 384f30c8ecc9. Replacing "cl->svr" with "svr" corrects the error while preserving the changes in 384f30c8ecc9. Test Plan: N/A Reviewers: #committers, cedric, Hermet, zmike Subscribers: bowonryu, zmike Tags: #efl Differential Revision: https://phab.enlightenment.org/D6255
2018-05-25ecore_con: efl_net_socket_ssl_adopted_get is EFL_NET_SOCKET_SSL_PROTECTED.Cedric BAIL
2018-05-25ecore_con : Fix class check to check inner_socket classJunsuChoi
Summary: cl->socket is a Efl.Net.Socket_Simple. it is not inherit the Efl.Loop.fd class. and The target of the class check have to be the inner_socket. But inner_socket is Efl.Net.Socket_Ssl. Efl.Net.Socket_Ssl class is not inherit FD class. Efl.Net.Socket_Tcp is inherit Efl.Loop.fd class. So, Need to add Efl.Net.Socket_Tcp to inheritance. (The server side is a similar hierarchy. (ssl -> tcp -> ip -> fd)) Test Plan: N/A Reviewers: cedric, jypark, myoungwoon, zmike, barbieri Reviewed By: cedric Subscribers: #committers, bowonryu, zmike Tags: #efl Differential Revision: https://phab.enlightenment.org/D6168 Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-24ecore_con: disconnect from the server as soon as it request it.Cedric BAIL
Ecore_Event can still be in flight while the client get freed by the server. We are protected agaist that and keep the client partially alive until the event are processed, but we need to disconnect from the server as soon as possible as we might outlive the server.
2018-05-24ecore_con: allow for NULL to do nothing.Cedric Bail
2018-05-24ecore_con: correct lifecycle of object used by Efl.Net.Dialer.Ssl.Cedric BAIL
Differential Revision: https://phab.enlightenment.org/D6084
2018-05-24ecore_con: trigger teardown during invalidate.Cedric BAIL
Delaying teardown might result in code expecting parent to still be valid, especially call to efl_provider_find won't work anymore. Differential Revision: https://phab.enlightenment.org/D6083
2018-05-24ecore_con: it is best to call the super destructor and not touch the object ↵Cedric BAIL
anymore after. Differential Revision: https://phab.enlightenment.org/D6082
2018-05-24ecore_con: correct a typo wrongly calling super destructor instead of super ↵Cedric BAIL
invalidate. Differential Revision: https://phab.enlightenment.org/D6081
2018-05-24ecore: correct lifecycle of object used by Ecore_Con legacy.Cedric BAIL
Differential Revision: https://phab.enlightenment.org/D6080
2018-05-24Revert "efl_add_ref - fis to use efl_add properly with a parent."Cedric BAIL
This reverts commit 2fb5cc3ad09f6aaf82b5d1131ac5ed22ed848bd4. Most of this change where wrong as they didn't affect the destruction of the object. efl_add_ref allow for manual handling of the lifecycle of the object and make sure it is still alive during destructor. efl_add will not allow you to access an object after invalidate also efl.parent.get will always return NULL once the object is invalidated. Differential Revision: https://phab.enlightenment.org/D6062
2018-05-23efl: rename Efl.Net.*.* -> Efl.Net.*_*Xavi Artigas
2018-05-19efl: Add missing event typesXavi Artigas
Summary: All events must have a type now, otherwise bindings don't know how to handle the event_info field. Most of the missing event types were actually "void" (no event_info present). Some struct definitions had to be moved to eo instead of h files, so they are available to bindings. Some have not, and are marked with FIXME. Some namespaces have been fixed (like Efl_Event_Cb -> Efl.Event_Cb). In general, there are hundreds of changed files, but mostly to add a type which was not present before, so there's no harm done. Also, A lot of FIXMEs have been added which should be, like, fixed. For example, some events can send different types of event_info, which is very inconvenient (and error prone). Test Plan: make with c# bindings works, make check and make examples work too. Reviewers: cedric, q66, lauromoura Subscribers: zmike Tags: #efl Differential Revision: https://phab.enlightenment.org/D6169
2018-05-18ecore_con: add check for invalid space("") nameYeongJong Lee
Summary: space("") name check had existed, but it was removed on f4306d654dc55e8a0449698da18f371644d656df (in the _efl_network_connector_efl_object_finalize) This patch restore the safety checks Reviewers: barbieri, Hermet, Jaehyun_Cho, myoungwoon, zmike Reviewed By: zmike Subscribers: cedric, zmike Tags: #efl Differential Revision: https://phab.enlightenment.org/D6177
2018-05-13eolian: first batch of unused import removalsDaniel Kolesa
Initial results of our static analysis showed a bunch of unused imports or imports used only for documentation references. In the first case, remove entirely, in the second case, change to 'parse' in order to keep references working. The static analysis is not perfect and yields false negatives for certain cases, so there will be a second batch later.
2018-05-03eolian: switch Eina.Future instances to future<T>Daniel Kolesa
2018-05-01ecore: move close_on_destructor to close_on_invalidate as that describe the ↵Cedric BAIL
behavior best. Fix all use to correctly behave on invalidate.
2018-05-01ecore_con: migrate efl_net_ip_address_resolve to use Eina_Future.Cedric BAIL
2018-05-01ecore_con: if we rely on parent lifecycle for automatic destruction, do not ↵Cedric BAIL
call efl_del in the destructor.
2018-05-01ecore_con: expose proper DBG macro with ecore_con log domain.Cedric BAIL
2018-05-01ecore_con: legacy API do not expect object to be destroyed under our feet in ↵Cedric BAIL
any circumstances.
2018-05-01ecore_con: make the ecore_con log domain available during ecore_shutdown.Cedric BAIL
2018-04-24Efl.Net.Socket_* (from Efl.Net.Socket.*)Xavi Artigas
Ref https://phab.enlightenment.org/T6847 Reviewed-by: Cedric Bail <cedric@osg.samsung.com>