Commit Graph

660 Commits

Author SHA1 Message Date
Nicolas Aguirre 242e108e37 ecore_con: do not try to load /etc/resolv.conf when on windows.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-26 17:46:17 +01:00
Srivardhan Hebbar 9c03e3e728 ecore_con: clean up, refactor and unpdate documentation.
Summary:
1. Have refactored code in ecore_con_local.c
2. Changed env variable from "TMP" to "TMPDIR".
3. Added check for negetive port number when type is ECORE_CON_LOCAL_USER.
4. Added check to check TMPDIR before assuming /tmp as temp directory.
5. Updated documentation in Ecore_Con.h explaining about local socket and port number.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2194

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-23 19:44:27 +01:00
Srivardhan Hebbar b1f74c615a ecore_con: fix ECORE_CON_LOCAL_SYSTEM use with negative port number.
Summary:
The socket can be created even with negative port number, but in that case the port
is ignored so that you can connect to non Ecore_Con based IPC. This patch remove
that test to make the client and server match.

@fix

Bug: While creating ECORE_CON_LOCAL_SYSTEM server and client pair, when the socket
name was "test_socket" and port number "-8" (Any negative number). Then while creating
listening socket, the code would go to line no 291 and socket is created in tmp by
".ecore_servicetest_socket|-8". When the same is passed to bind then the code would
go to line 118 and the socket it would try to bind would be ".ecore_servicetest_socket" !!
So the bind would fail.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2186

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-18 15:37:09 +01:00
Cedric BAIL b301fffe2f ecore_con: fix build with -DISCOMFITOR and OpenSSL. 2015-03-17 09:58:21 +01:00
Cedric BAIL 9b51888104 ecore_con: remove deprecated use of Eina_Binbuf functions. 2015-03-17 09:58:21 +01:00
Cedric BAIL dfe39b3d54 ecore_con: unbreak GNUTLS support. 2015-03-17 09:58:20 +01:00
Cedric BAIL a089d8cd7b emile: Add SSL support. 2015-03-17 09:58:18 +01:00
Cedric BAIL 2913e8c64e ecore_con: initialize emile cipher support on demand. 2015-03-17 09:58:17 +01:00
Cedric BAIL cc88832353 ecore_con: depend on emile for initializing crypto library. 2015-03-17 09:58:17 +01:00
Srivardhan Hebbar 034bcbace5 ecore_con: move Socks API documentation to Ecore_Con.h
Summary:

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2138

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-13 09:33:29 +01:00
Cedric BAIL 54fa8c7e42 ecore_con: fix rebase issue.
Catched by Coverity CID 1287124.
2015-03-07 15:53:40 +01:00
Srivardhan Hebbar 9b1cdff941 ecore_con: Not returning error if port is less than zero for local sockets.
Summary:
If the socket is local, then there is no need to through error if the port is less than 0 (i.e., negetive). The behavior is same in _ecore_con_connector_eo_base_finalize funtion. So applied the same here. There is code in ecore_con_local.c to handle if port is less than zero for local sockets.
In _ecore_con_connector_eo_base_finalize function, I've added a space just so that it shows difference in phabricator and  would be easy for you to review.

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2089
2015-03-06 20:19:21 +01:00
Srivardhan Hebbar 6721800e7b ecore_con: calling ecore_con_local_init/shutdown from ecore_con_init/shutdown.
Summary:
ecore_con_local doesn't currently require any initialization, but it might need
that on some platform and not having the init make the source code non obvious.
This is just a patch to improve future maintenability.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2098

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-03-06 20:19:21 +01:00
Tom Hacohen 648ad2591c Fix code to conform to recent Eo changes. 2015-02-23 17:16:02 +00:00
Srivardhan Hebbar deef299476 ecore_con: move documentation of ssl functions from ecore_con_ssl.c to Ecore_Con.h
Summary: Moved documentation of ssl functions from ecore_con_ssl.c to Ecore_Con.h.

Reviewers: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1994

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-20 12:22:12 +01:00
Boris Faure 3a7b9a86cf ecore_con_url: add ecore_con_url_head()
Just like ecore_con_url_get() or ecore_con_url_post() but to a HTTP HEAD.

@feature
2015-02-19 22:52:50 +01:00
Boris Faure b64c770046 ecore_con_url: use an enum instead of multiple defines 2015-02-19 22:52:50 +01:00
Srivardhan Hebbar 3da02b4600 ecore_con: updatet documentation about Ecore_Con events.
Summary: Ordered events into server side events, client side events and update the text.

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1976

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-16 11:57:38 +01:00
Guillaume Friloux 797c921f10 ecore_con: EAGAIN is replaced by WSAEWOULDBLOCK on Windows. 2015-02-11 17:03:39 +01:00
Guillaume Friloux d0dabf8613 ecore: improve network events handling on Windows. 2015-02-11 17:03:39 +01:00
Guillaume Friloux 83917a8c64 ecore_con: do not load /etc/hosts on Windows. 2015-02-11 17:03:38 +01:00
Guillaume Friloux 211d54dc8e ecore_con: make disconnects work on Windows. 2015-02-11 17:03:38 +01:00
Guillaume Friloux 388f8fbcaa ecore_con: fix use of FormatMessage for error reporting on windows.
@fix
2015-02-11 17:03:38 +01:00
Guillaume Friloux d6f08ba032 ecore_con: silent warning with send() usage. 2015-02-11 17:03:38 +01:00
Guillaume Friloux c77c0107a2 ecore_con: use send() instead of write() for portability. 2015-02-11 17:03:37 +01:00
Guillaume Friloux 8873bfeb2b ecore_con: use recv() instead of read for better portability. 2015-02-11 17:03:37 +01:00
Guillaume Friloux e57c1d396e ecore_con: fix _ecore_con_server_flush on Windows.
@fix
2015-02-11 17:03:37 +01:00
Nicolas Aguirre 7d4f95171c ecore_con: Fix checks from socket() and accept() under windows.
import from Guillaume Friloux ecore's fork : ab2d406a37
2015-02-11 17:03:37 +01:00
Guillaume Friloux f26977a175 ecore_con: use SOCKET and not int for socket descriptors on win32 2015-02-11 17:03:37 +01:00
Guillaume Friloux 0e8e4b2728 ecore_con: use ioctlsocket() when building for windows.
fcntl() doesnt work under windows.

References :
- http://msdn.microsoft.com/en-us/library/windows/desktop/ms738573%28v=vs.85%29.aspx
- http://msdn.microsoft.com/en-us/library/windows/desktop/ms740096%28v=vs.85%29.aspx

imported from Guillaume Friloux ecore fork : 66da77d491
2015-02-11 17:03:37 +01:00
Srivardhan Hebbar a2d40968df Ecore_con: fix initialisation clean up and avoid memory leak.
Summary: When ecore_init failed or when failed to initialize ecore_con_log_domain, then evil_shutdown was not called. So cleaned up code and added the fix.

@fix

Reviewers: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1921

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-05 11:27:00 +01:00
Srivardhan Hebbar 6fedf6819a Ecore_con: preventing _init_con_ssl_init_count to go below zero.
Summary: _init_con_ssl_init_count should not go below zero. This can occur if a developer mistakenly calls ssl shutdown before calling ssl init. So adding the check to prevent this.

Reviewers: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1925

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-02-04 14:09:38 +01:00
zmike f55c756c17 curl usage better accounts for timeouts
curl is dumb. it needs to poll its own fd for data, it gets confused with its own timeouts, and sometimes it forgets that it's supposed to be doing anything.

this fixes:

* connection timeout processing
* connection data processing order

also curl_multi_timeout calls are now done from a single function to handle all of this stupidness in one place

maybe backport after more testing...
2015-01-02 23:21:55 -05:00
Cedric BAIL a68ded6ab6 ecore_con: SSL error function is waiting for Eo object not their private data. 2014-12-30 11:19:56 +01:00
Cedric BAIL aa69cd89a6 ecore_con: the timer callback is waiting for the Eo object not its private data.
This @fix T1962 .
2014-12-30 11:19:38 +01:00
Nibha Sharma ce311db030 ecore: removed switch case 0 condition
Summary: It is removed because it was a deadcode case zero is never reached and executed.

Reviewers: singh.amitesh, seoz, raster

Reviewed By: raster

Subscribers: raster, cedric

Differential Revision: https://phab.enlightenment.org/D1432
2014-12-16 19:59:40 +09:00
Amitesh Singh d8b6271fdc ecore_con: Added NULL check in dns_so_reset() for dns_socket object.
Summary: @fix

Reviewers: zmike, tasn, seoz, raster

Subscribers: cedric, seoz

Differential Revision: https://phab.enlightenment.org/D1411
2014-12-16 19:56:33 +09:00
Mike Blumenkrantz 08e1f2f4f3 ecore-con now prints error messages when local socket creation fails 2014-12-05 13:20:13 -05:00
Andreas Metzler ecfcb59c44 ecore con: Fix GnuTLS build error.
By making the respective changes on the GnuTLS side for upstream commits
d9b5f192d4 and
d72f809fb8
which only take care of OpenSSL.

@fix
2014-12-03 12:11:05 +00:00
Daniel Kolesa b598aefa67 ecore_con: move Ecore_Con_Dns_Cb back to C
We'll be removing function pointer support from Eolian, instead
replacing any callback we can with events (arbitrary callbacks are
very difficult to support in bindings). As we'll be handling all
callbacks at once, we'll do this one at that point as well.
2014-11-27 17:13:20 +00:00
Carsten Haitzler 731bf3c34e ecore-con - silence bsd source wanrings for dns.c
silence this annoying warning we've had for a while:

In file included from /usr/include/stdint.h:25:0,
                 from
/usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.2/include/stdint.h:9,
                 from lib/ecore_con/dns.c:45:
                 /usr/include/features.h:148:3: warning: #warning
"_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
[-Wcpp]
 # warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use
_DEFAULT_SOURCE"
2014-11-25 17:03:53 +09:00
Carsten Haitzler b97778a1c2 ecore-con - url. fix curl init check to not access NULL _c context
this fixes T1738 (or should)
2014-11-07 08:45:18 +09:00
Srivardhan Hebbar be5b00cfd1 ecore_con: Added test case to check if _ecore_con_init_count goes below zero.
Summary:
_ecore_con_init_count should not go below zero. I've added a test case to test this and also the code to fix this.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1603
2014-10-29 08:24:53 -04:00
Pierre Le Magourou 6a9cfbcfef ecore: update the doxygen groups to compile forgotten parts of the API.
Some parts of the API documentation where not compiled at all by doxygen
because of missing '@{' and '@}' tags. This commit adds the missing tags
in Ecore_Getopt.h, Ecore_Con_Eet.h, and Ecore_IMF.h headers.
2014-10-20 18:17:26 +02:00
Pierre Le Magourou 55623537ea ecore_con: update missing Ecore_Con_Eet.h API documentation. 2014-10-20 18:17:26 +02:00
Pierre Le Magourou 8fdf3241b5 ecore_con: update missing Ecore_con.h API documentation. 2014-10-20 18:17:26 +02:00
Guillaume Friloux 101c13d582 ecore_con: Fix connect() handling
If connect() returns 0, we must send the ECORE_CON_EVENT_SERVER_ADD event
because it wont be given by select(). select() will ONLY notice it if connect
returns -1 with errno set to EINPROGRESS.

This bug is reproductible with 100% chance using ecore_con_telnet_client example
from https://github.com/gfriloux/examples if you connect to 127.0.0.1 instead of
of an external network ip, under FreeBSD (and likely any BSD).

Seems very rare to trigger it under GNU/Linux as it seems that connect()
doesnt want to return 0 when having non blocking sockets (or is too slow),
but it seems i was having this bug too on production servers, without being
ever able to reproduce it.
2014-10-08 15:34:48 -04:00
Cedric BAIL 93b865767f ecore_con: check that we have an actual server data before using it. 2014-10-07 16:28:52 +02:00
Marcel Hollerbach f5e24c3bcf ecore_con: Fix error goto, scope data should not be freed
Summary:
If the function jumpes to the error, the scope data is freed, this is
wrong, just the object should be destroyed, so not free, just eo_unref
the object. Cause the object is just added above the object ref count
should get 0 and obj will get removed

Test Plan: Use the ecore_con_server_client_limit_set function and set the max count to 1, at the connect of a second client the server will fail at this free.

Reviewers: tasn

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1459
2014-09-19 02:16:37 +01:00
Savio Sena 5bc2efcf87 ecore-con: Fixed header to allow compilation in C++.
Summary: C++ takes the second typedef as redefinition and yields errors.

Reviewers: zmike, tasn

Reviewed By: tasn

Subscribers: larry, cedric, felipealmeida

Differential Revision: https://phab.enlightenment.org/D1455
2014-09-18 07:07:53 +01:00
Daniel Kolesa 7786b96359 eolian: builtin complex types
From now on, there are 5 builtin complex types, particularly accessor, array,
iterator, hash and list. All other types are simple - they can't have a complex
part. Also, the <> now binds to the type itself, not the pointer. More builtin
complex types will be added as needed.
2014-09-08 14:53:13 +01:00
Stefan Schmidt fdc8e455e4 ecore_con: Make sure host_server is not NUL before dereferencing
This was intended to get fixed in f53683f76a

CID 1232731
2014-09-04 10:57:19 +02:00
Tom Hacohen 0c9a1d8a99 Ecore con: Add Connector class (the connecting variant of server).
This change also consists of cleaning up the server class and adding a
constructor and a finalizer to it.
2014-09-01 12:35:22 +01:00
Tom Hacohen 056c54ebc9 Ecore con server: Fix destructor to call super correctly. 2014-09-01 11:12:17 +01:00
Tom Hacohen a58c1b6c97 Ecore con url: Migrate to eo. 2014-09-01 11:12:17 +01:00
Mike Blumenkrantz 7b0db79c2d revert all recent ecore-con related eo changes. completely broken.
please test things before committing.

reverts all changes since and including f6156c9a62
2014-08-30 08:12:54 -04:00
Tom Hacohen 0f9627c363 Ecore con: Fix constructing (the whole object was broken).
We were constructing some things too late which caused url setting to not
work at all.
2014-08-29 11:41:51 +01:00
Daniel Kolesa 3e5da03f7d eolian: update virtual to the new syntax (as per wiki) 2014-08-29 11:40:29 +01:00
Tom Hacohen 607901fb0e Ecore con server: Fix destructor to call super correctly. 2014-08-29 10:26:23 +01:00
Tom Hacohen 61cd629a59 Ecore con: Limit some functions to only be called from inside eo_add(). 2014-08-29 10:26:23 +01:00
Tom Hacohen bba7ac87f1 Ecore con: Add Connector class (the connecting variant of server).
This change also consists of cleaning up the server class and adding a
constructor and a finalizer to it.
2014-08-28 14:31:17 +01:00
Tom Hacohen bdb60f017f Ecore con: Update migration TODO. 2014-08-28 12:00:31 +01:00
Tom Hacohen f6156c9a62 Ecore con url: Migrate to eo. 2014-08-28 11:52:38 +01:00
Tom Hacohen 2a144e5717 Ecore con: Fix to the correct parameter type.
Can finally be done because the eolian cycle bug was fixed.
2014-08-28 10:26:17 +01:00
Tom Hacohen 18895e2489 Ecore con: Fix some ecore con runtime issues on windows. 2014-08-27 16:25:27 +01:00
Tom Hacohen 98281cc523 Ecore con: Fix compilation on windows. 2014-08-27 16:19:25 +01:00
Carsten Haitzler 1383f025d3 ecore-con - fix typo in error handling for ssl client init
fixes CID 1232730
2014-08-27 17:18:22 +09:00
Carsten Haitzler f53683f76a ecore-con - fix explicit null dereference
fix CID 1232731
2014-08-27 17:16:17 +09:00
Carsten Haitzler 9de5c8131d ecore-con - fix explicit null ptr deref
fix CID 1232729
2014-08-27 17:14:30 +09:00
Carsten Haitzler 8762004bf1 ecore-con - check return of mkdir
fix CID 1039699
2014-08-27 16:28:46 +09:00
Carsten Haitzler cbf5e0ef1d ecore-con - check return of ecore con ssl init
check return of ssl init for server connection

fixes CID 1039700
2014-08-27 16:25:51 +09:00
Carsten Haitzler f5b975174f ecore-con - use return valude of sendto.
fixes CID 1232726
2014-08-27 14:49:47 +09:00
Tom Hacohen 00b3996ee1 Ecore con: Fix compilation on windows.
Hopefully. I don't have a winodws box to test it on. Go Jenkins go.
2014-08-26 14:53:23 +01:00
Tom Hacohen 540581f629 Ecore con: Hopefully fix for windows. 2014-08-26 11:11:20 +01:00
Marcel Hollerbach 8749504b5c ecore_con: pass the correct pointer as data in the callback.
Summary:
The pass of the wrong pointer caused a wrong scope get call cause the the
passed pointer was not a valid eo pointer.

Test Plan: Run enlightenment entrance, it wont crash anymore

Reviewers: tasn

Subscribers: cedric, Sachiel

Differential Revision: https://phab.enlightenment.org/D1352
2014-08-23 16:39:14 +09:00
Tom Hacohen 974e3afabc Ecore con: Rename to Ecore.Con.Base for the C++ bindings. 2014-08-22 17:37:56 +01:00
Tom Hacohen 9a8a416325 Ecore con server: Add support for some eo events. 2014-08-22 17:37:56 +01:00
Tom Hacohen d72f809fb8 Ecore con server: Migrate to eo. 2014-08-22 17:37:56 +01:00
Tom Hacohen 718a942bde Ecore con client: Add support for some eo events. 2014-08-22 17:11:54 +01:00
Tom Hacohen d9b5f192d4 Ecore con client: Migrate to eo. 2014-08-22 17:11:54 +01:00
Tom Hacohen 218e76fd30 Ecore con: Start migration to eo. 2014-08-22 17:00:49 +01:00
Carsten Haitzler c0ca1bcf44 ecore-con - fix possible leak due to other fix
this fixes potential leak due to
ff652084e0 fixing a valgrind access
issue. make sure the server is in the list before handling error
conditions in case a callback sets delete_me (should never though).
2014-08-13 08:44:44 +09:00
Carsten Haitzler ff652084e0 fix valgrind report on ecore con server connect failure
this should fix T1508 - my testing seems to indicate so. test suite
succeeds, some manual tests of mine work. so is ay this is a good fix
that could fix critical segvs in apps using ecore-con - eg like
weather module in e
2014-08-11 20:49:42 +09:00
Mike Blumenkrantz 9c5d565d2b call ecore_init() for ecore_con_url_init()
ecore functions are used by this api, so ecore must be initialized
2014-07-28 09:48:18 -04:00
Cedric BAIL 29226ee49d ecore_con: just a reminder to look at later. 2014-06-27 13:41:20 +02:00
Carsten Haitzler 4b24b386db fix duplicate function call names in ecore and ecore_con that can clash
this fixes T1341. also it removes the pointless return value from
these two functions as the return is never used. also the ifdef in
ecore_main.c seemed wrong as it wasd using fcntl not execvp but the
ifdef was for execvp. this just never was discovered, so it's slid
under the hood for a long time.
2014-06-16 15:57:05 +09:00
Raoul Hecky 06a343afda Fix curl dynamic loading on windows
With win-builds.org curl dll name is libcurl-4.dll. Try to load this
correct filename first
2014-06-03 18:09:14 +02:00
Guillaume Friloux 08a70a113f Fix warning with undefined ntohl(). 2014-05-30 14:15:27 +02:00
Jean-Philippe Andre f4a0c8054f Win64: Fix a bunch of warnings
Fix invalid casts.
Use printf("%z") where appropriate.
Fix unused variables warnings.

Thanks vtorri for the patch.

@fix
2014-05-29 20:02:16 +09:00
Carsten Haitzler 7c00bd5123 fix ecore_con_url using 100% cpu and just let fd handler do work
this fixes T1251 - @fix
2014-05-15 15:48:18 +09:00
Stefan Schmidt 9f7c9f9536 ecore_con: Force unsigned to unsigned comparison
num was changed to size_t which makes it unsigned while count is a normal
(signed) int. Comparing them does not always work as expected but in this
case we already checked if count is < 0 before and would have returned if
that would be true. Thus we can safely cast count to unsigned here as it
will be greater 0 anyway.
2014-04-11 11:50:47 +02:00
Stefan Schmidt b53a68d4c6 ecore_con: Remove superfluous >= 0 check for unsigned
Since num was changed from (signed) int to (unsigned)  size_t in
16d7b981eb this check no longer
makes sense as it will always be true.
2014-04-11 11:26:18 +02:00
Carsten Haitzler 16d7b981eb ecore-con - deal with internal buffer growing over 2g in size
@fix this fixes a corner case where you may buffer 2g or more of data
in ecore-con buffers. this leads to a stall. @fix
2014-04-04 19:36:50 +09:00
Chris Michael 24ac2e278d Fix doxy typo
Signed-off-by: Chris Michael <devilhorns@comcast.net>
2014-01-19 12:06:05 +00:00
ChunEon Park 84cd13bf96 efl/ecore_con - compare same types. 2014-01-18 18:50:51 +09:00
Cedric BAIL 313cd699f2 ecore_con: fix build on windows by matching the #if around the if statement. 2014-01-09 14:30:43 +09:00
Carsten Haitzler e8c13118eb fix mingw build for setuid fix/checks 2014-01-08 22:06:41 +09:00
Carsten Haitzler b95ef3801f setuid safeness - ensure if an app that is setuid doesn't do bad things
this makes efl ignore certain env vars for thnigs and entirely removes
user modules (that no one ever used) etc. etc. to ensure that *IF* an
app is setuid, there isn't a priv escalation path that is easy.
2014-01-08 19:46:23 +09:00
Nicolas Aguirre 503e7a5b03 ecore_con - Fix binary buffer when using ECORE_CON_REMOTE_UDP.
ERR<7807>: lib/eina/eina_binbuf_template_c.x:95 eina_binbuf_append_length() *** Eina Magic Check Failed !!!
This fix a problem where eina_binbuf was used without
calling eina_binbuf_new when ECORE_CON_REMOTE_UDP is used.
2014-01-03 18:57:56 +01:00
Daniel Juyung Seo 76d8532b54 efl: Unified eina critical manro to CRI.
Being annoyed by different types of eina critical macros - CRI, CRIT,
 CRITICAL -, I concluded to unify them to one. Discussed on IRC and
 finally, CRI was chosen to meet the consistency with other macros -
 ERR, WRN, INF, DBG - in terms of the number of characters.
If there is any missing bits, please let me know.
2013-12-26 12:27:13 +09:00
discomfitor dd666a6ffd bugfix: free the entire ecore_con dns struct on info clear to prevent crashes later on 2013-12-20 22:16:59 -05:00
discomfitor 2a143393f9 split ecore_con_dns free functions into one that removes from list and one that does the freeing 2013-12-20 22:16:29 -05:00
discomfitor 0808259eff Revert "workaround for a weird ecore-con crash"
This reverts commit c751a220d6.
2013-12-20 22:04:58 -05:00
discomfitor c751a220d6 workaround for a weird ecore-con crash
kuri ping in case I don't get to this soon it needs to be fixed somewhere else
2013-12-20 21:36:58 -05:00
discomfitor 41fe698fc2 reformat ecore_con so I can read it... 2013-12-20 00:08:43 -05:00
Carsten Haitzler 8cdef1831c ecore-con - fix possible unterminated buffers
this should fix CID 1039725 and CID 1039724
2013-12-13 21:26:05 +09:00
Carsten Haitzler 675309d9d9 ecore_con - dns.c - re-fix coverty double-free. coverity was and is right.
fixes CID 1039909 again (it's back after rebase). it is an actual bug.
2013-12-13 09:41:23 +09:00
discomfitor 5a549c8e97 rebase dns.c from upstream 2013-12-12 09:29:02 -05:00
Carsten Haitzler 1c267deb8f ecore-con - dns.c - fix double free
this fixes CID 1039909
2013-12-11 19:32:54 +09:00
Cedric Bail 8e7921dffa ecore_con: remove unecessary code. 2013-11-28 16:36:21 +09:00
Cedric Bail 1e70d703b3 ecore_con: fix unitialized use of buffer from strncpy.
Fix CID 1039725.
2013-11-27 14:30:03 +09:00
Cedric Bail d0837ee5f5 ecore_con: fix non initialized use of buf with strncpy.
This fix CID 1039723.
2013-11-27 14:27:00 +09:00
Chris Michael 164269a2da Malloc cannot accept a negative number so check 'num' parameter before
calling malloc.

Fixes Coverity CID1039352

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-11-18 11:50:42 +00:00
Carsten Haitzler 85a86e77f7 ecore_con - socks support - warning that shows invalid size calc
zmike - i think this was the problem. gcc warning caught it. size was
2013-11-09 10:11:12 +09:00
Guillaume Friloux 838c3bed85 Fixes a bug where when you try to connect to a server using an
inexistant DNS, or having a DNS resolution error, there isnt any event
generated for the application to know.

This is not a complete fix has you need to fix a timeout value for it to
happen, but still, it makes it possible to work around it.

More work is needed on this.
2013-11-06 14:32:11 +01:00
Carsten Haitzler 8ed6324a31 ecore-con - followup commit to curl dynamic load - support win and osx names 2013-10-11 08:13:35 +09:00
Carsten Haitzler 2c1c6b9335 ecore-con: make curl support entirely runtime loaded via eina_module
this makes curl support a pure runtime-only thing. libcurl is loaded by
eina_module (dlopen/dlsym) when curl is actually first needed (when a
url connection/object is created). this means that ecore-con has no
link or compile dependencies on curl, only runtime, AND this saves
memory (due to curl inits using apparently a chunk of private pages).
so this saves memory and moves the dependency to runtime (though still
consider libcurl a dependency of efl - but like a binary executed,
it's at runtime).
2013-10-10 22:31:18 +09:00
Chris Michael cc1a2d4b6b _ecore_con_dns_free already frees the timer and whole dns structure,
so setting dns->timer = NULL here b0rks.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-05 13:52:06 +01:00
Chris Michael 0f925220e1 Fix potential double-free of so->answer.
NB: dns_so_submit calls dns_so_reset twice (once at start, once at end
on error). As so_reset will free so->answer the first time through,
add validity check of so->answer for the second iteration.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-05 13:48:23 +01:00
Chris Michael d9f8e6b525 Do not call _ecore_con_client_flush with a NULL client.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-08-05 12:39:19 +01:00
Guillaume Friloux 6aab5a9690 This patch is a port of commit 4b885b9b24de9e188c861422d7d2738b49359d22.
It fixes ecore_con_server_timeout_set().
2013-07-17 16:20:45 +02:00
Carsten Haitzler cc400c5c7f fix clang sizeof complaint 2013-07-16 20:45:24 +09:00
Sebastian Dransfeld 336f6ec328 efl: formatting 2013-06-20 13:28:18 +02:00
Sebastian Dransfeld 068f1ddc62 efl: formatting 2013-06-20 13:08:36 +02:00
Daniel Willmann 16cbbb202f ecore_con: Server start time was not initialized correctly
ecore_con_event_server_add() is never called (at least not in the
standard TCP connection case, so initialize svr->start_time in
ecore_con_server_add(). This shouldn't regress any other behaviour as
this is done at the very beginning and any later change to start_time
will still happen.

Signed-off-by: Daniel Willmann <d.willmann@samsung.com>
2013-05-24 16:18:02 +01:00
Guillaume Friloux 7b88439346 cl->start_time isnt initialized, so ecore_con_client_uptime_get() just doesnt work. This patch fixes it. Bug found by asdfuser. 2013-05-24 15:14:09 +01:00
Guillaume Friloux 359c17be56 I missed a timer_reset for the case we did set a server timeout and no client timeout. Thanks again Cravix for the awesome reports. 2013-05-24 15:14:09 +01:00
Guillaume Friloux 996c98f36a Fixes another bug found by Cravix (IRC) where even if data is going over the socket, we still timeout the connection if ecore_con_client_timeout_set and ecore_con_server_timeout_set are used! This is even a worst bug than the previous one. This patch should also be applied and tested on 1.8. Thx Cravix! 2013-05-24 11:33:06 +01:00
Guillaume Friloux 0a293dd981 Fix a bug introduced on 2011-12-10 05:42:32 (GMT) and nobody ever noticed because there isnt enough people that cares about ecore_con (and the lower level libs in general). Big thanks to Cravix (IRC) for finding this issue! 2013-05-24 11:33:06 +01:00
Cedric BAIL 2063e4353d efl: integrate eina_log_timing. 2013-03-27 21:43:45 +09:00
Cedric Bail d4172f555a ecore_con: fix warnings when curl is not available. 2013-03-17 10:34:40 +09:00
Cedric Bail 1959898724 ecore_con: improve portability. 2013-03-16 15:40:26 +09:00
Mike Blumenkrantz 4ab02d7f6b fix writes/flushes with servers for ecore-con 2013-03-14 11:48:05 +00:00
Mike Blumenkrantz bbc7a0bf3e clean up gnutls session init for ecore-con in 1.8 2013-03-11 04:57:12 +00:00
Cedric Bail 8d5e33077e efl: use HAVE_FCNTL around call to fcntl. 2013-03-10 23:10:27 +09:00
Cedric Bail 9176271492 ecore_con: add systemd socket activation.
Be careful, systemd socket activation require you to always order
server socket creation in the same order as defined in the unit file.
This means ecore_con_server_add should always been in the same order
for those of them using systemd socket activation.
2013-03-10 16:00:32 +09:00
Henrique Dante de Almeida ca8fc827a3 efl: Fixes to support compiling with CFLAGS=-Werror
This allows compiling with gcc 4.7.2 without errors (using the
default configuration).
2013-02-26 10:55:04 -03:00
Guillaume Friloux 8acf1ebdf2 Improving ecore_con_server_flush to avoid a faceplant over the OOM
Killer when sending big files. I will explain more in a mail comming 
after this commit.


SVN revision: 83766
2013-02-08 08:35:27 +00:00
Guillaume Friloux a3f013ad2f Fixing a mem leak by adding a call to dns_ai_close which will save us
800 bytes per ecore_con_server_connect() call.


SVN revision: 83517
2013-01-31 14:04:54 +00:00
Mike Blumenkrantz 10a10310e8 rebase dns.c against upstream
SVN revision: 83058
2013-01-22 08:01:13 +00:00
Lucas De Marchi 06ff74834f efl: remove checks for socket.h, net/*, arpa/*
SVN revision: 82585
2013-01-10 20:26:02 +00:00
Lucas De Marchi 3e4eb4437e efl: remove check for errno.h
SVN revision: 82581
2013-01-10 20:25:44 +00:00
Carsten Haitzler ee00e0fd5b ok- enable again.. but i think they should be DBG(). :)
SVN revision: 82163
2013-01-04 08:45:31 +00:00
Gustavo Sverzut Barbieri 0a2d116119 efl: eina_alloca.h to simplify alloca() usage.
having to replicate 18 lines per file just to access alloca() is
insane. Let's do that in Eina.h and avoid that crap :-/



SVN revision: 82082
2013-01-03 15:10:34 +00:00
Mike McCormack cf2f4d3e29 SVN revision: 82013
Signed-off-by: Mike McCormack <mikem@atratus.org>

SVN revision: 82044
2013-01-03 07:34:37 +00:00
Carsten Haitzler 90bc1aa27c fix ecore-con client double-free case
SVN revision: 82042
2013-01-03 06:56:42 +00:00
Mike McCormack 81cf390f17 efl: Fix shadow warnings
Signed-off-by: Mike McCormack <mikem@atratus.org>

SVN revision: 82013
2013-01-02 20:36:40 +00:00
Mike McCormack 8d1f3f7851 efl: Fix initializer overwritten warnings
Signed-off-by: Mike McCormack <mikem@atratus.org>

SVN revision: 82012
2013-01-02 20:36:36 +00:00
Carsten Haitzler 69c0e8a09c misplaced ERR-- - maybe DBG?
SVN revision: 81945
2013-01-01 08:12:09 +00:00
Gustavo Sverzut Barbieri 66ebe6a3f8 efl: remove checks for EINA_HAVE_THREADS
SVN revision: 81937
2012-12-31 17:31:17 +00:00
Carsten Haitzler 717f0823e0 small change - use xdg runtime dir if available instead of home. nicer
in xdg worlds. still falls back tho.



SVN revision: 81858
2012-12-29 03:39:20 +00:00
Gustavo Sverzut Barbieri f29be8f793 efl/ecore_con: fix doxygen hierarchy.
SVN revision: 81834
2012-12-28 19:48:12 +00:00
Carsten Haitzler 4cd65475d4 this is small but critical - failure to connect isnt something to
ERR() log about... it's simply a matter of the other end not being
there... it can be a perfectly normal condition.



SVN revision: 81734
2012-12-27 08:16:05 +00:00
Mike Blumenkrantz b2de05f49a all efl object deletion functions now take NULL without crashing or erroring
SVN revision: 81667
2012-12-24 09:35:56 +00:00
Jonas M. Gastal e3ae81e65f efl: Created Ecore group and added existing Ecore groups to it.
SVN revision: 81293
2012-12-18 18:38:44 +00:00
Carsten Haitzler 05066801d3 lets have fcntl.h in eh?
SVN revision: 80521
2012-12-08 14:07:24 +00:00
Cedric BAIL 88ba56d9d5 efl: don't leak fd on exec.
SVN revision: 80434
2012-12-07 11:01:41 +00:00
Gustavo Sverzut Barbieri 48120ec0c8 efl: both eet and ecore_con now share --with-crypto and defines.
* rename USE_GNUTLS and USE_OPENSSL to HAVE_GNUTLS and HAVE_OPENSSL
   in ecore_con, to match other modules such as Eet.

 * define requirements_pc_crypto, requirements_pc_deps_crypto and
   requirements_libs_crypto so modules can use that.

 * move to a common check section.



SVN revision: 80288
2012-12-06 00:11:14 +00:00
Vincent Torri 5afa16903d ecore: backport #79766 and #79769
SVN revision: 80013
2012-12-03 07:14:13 +00:00
Vincent Torri 7d6010b12c merge: add escape ecore, fix several bugs
SVN revision: 79995
2012-12-02 22:35:45 +00:00