summaryrefslogtreecommitdiff
path: root/gweb
AgeCommit message (Collapse)AuthorFilesLines
2015-12-23Apply tpkp-gnutls #2refs/changes/15/55315/1hyunuktak1-5/+9
Change-Id: I2cbd57173eea6720389d60324b4e6f374e66611d Signed-off-by: hyunuktak <hyunuk.tak@samsung.com>
2015-12-17Apply tpkp-gnutlsrefs/changes/37/54637/1hyunuktak2-0/+12
Change-Id: I291b210c7f241492df945d565d9d44c7ad57054f Signed-off-by: hyunuktak <hyunuk.tak@samsung.com>
2015-08-07Base Code merged to SPIN 2.4submit/tizen/20150810.034432refs/changes/38/45538/1hyunuktak7-0/+4
Signed-off-by: hyunuktak <hyunuk.tak@samsung.com> Change-Id: I84a42375b5c59739e4caca1f726699ea7647ef17
2014-07-17Imported Upstream version 1.24upstream/1.24Zhang zhengguang7-313/+336
2013-02-18gresolv: Optimize the response parserTomasz Bursztyka1-5/+5
It will check first if the response belongs to a query, before interpreting any of its content (rcode, count...).
2013-02-18gresolv: Do not remove a query on failure if other results are pendingTomasz Bursztyka1-9/+19
Fixes BMC#25973 In the case one of the resolving failed, the query is removed and destroyed from the queue. So the responses of the requests sent to the other namerservers - which might be successful - will thus be lost since they cannot be matched anymore to their initial request.
2013-01-28gresolv: Destroy query at the relevant place when parsing the responseTomasz Bursztyka1-4/+2
parse_response() will eventually call sort_and_return_results() which in turn will call the result function. But the result function might cancel the gresolv. At that point all queries belonging to this gresolv are destroyed. Returning back to parse_response(), it calls again destroy_query() on an already destroyed one. Thus leading to a crash. Same issue with query_timeout() Reported by Daniel Wagner
2013-01-11gweb: Make sure to destroy the lookup before calling any result functionTomasz Bursztyka1-2/+4
Program received signal SIGSEGV, Segmentation fault. Backtrace: 0 0x00000000004219fe in _debug (resolv=0x75f9a0, file=0x497267 "gweb/gresolv.c", caller=0x497598 "destroy_lookup", format=0x497278 "lookup %p id %d ipv4 %p ipv6 %p") at gweb/gresolv.c:136 1 0x0000000000421ac5 in destroy_lookup (lookup=0x760e40) at gweb/gresolv.c:154 2 0x00000000004224ce in sort_and_return_results (lookup=0x760e40) at gweb/gresolv.c:520 3 0x0000000000422597 in query_timeout (user_data=0x760510) at gweb/gresolv.c:542 4 0x00007ffff7b1b26b in g_timeout_dispatch (source=0x760ea0, callback=<optimized out>, user_data=<optimized out>) at gmain.c:4095 5 0x00007ffff7b1a643 in g_main_dispatch (context=0x6f5110) at gmain.c:2784 6 g_main_context_dispatch (context=0x6f5110) at gmain.c:3288 7 0x00007ffff7b1a988 in g_main_context_iterate (dispatch=1, block=<optimized out>, context=0x6f5110, self=<optimized out>) at gmain.c:3359 8 g_main_context_iterate (context=0x6f5110, block=<optimized out>, dispatch=1, self=<optimized out>) at gmain.c:3296 9 0x00007ffff7b1ade5 in g_main_loop_run (loop=0x6f4fe0) at gmain.c:3553 10 0x0000000000442a5f in main (argc=1, argv=0x7fffffffdea8) at src/main.c:705 Reported by Daniel Wagner
2012-12-20gweb: Use glib memory functionsDaniel Wagner1-1/+1
Use for all memory allocation/dealocation operation the glib functions. This allows us to use g_mem_profile().
2012-11-13gweb: Check null before referenceDanny Jeongseok Seo1-2/+2
2012-10-19web: Make debug func print more useful informationJukka Rissanen1-3/+11
The file and function name are printed in debug prints.
2012-10-19gresolv: Remove query from queue before destroying the queryJukka Rissanen1-1/+1
The order of actions is important here.
2012-10-19gresolv: Make sure we will not receive DNS data after closingJukka Rissanen1-1/+3
We must close the channel when freeing the resolver object, otherwise we might still receive data when the resolver has been freed already. Fixes BMC#25757
2012-10-19gresolv: Add more debug printsJukka Rissanen1-5/+31
2012-10-19gresolv: Make debug func print more useful informationJukka Rissanen1-3/+11
The file and function names are printed in debug prints.
2012-10-16gresolv: Remove the lookup for realJukka Rissanen1-1/+1
The call to g_resolv_cancel_lookup() will do nothing because we just removed the lookup from the queue. The fix is to remove the lookup directly and not call the cancel function.
2012-10-16gresolv: Remove all pending lookups when resolver is removedJukka Rissanen1-0/+4
Remove all lookups found in queue when GResolv object is removed.
2012-10-16gresolv: Avoid accessing already freed memoryJukka Rissanen1-3/+6
We must remove the lookup from lookup queue and query from query queue before calling user callback. The callback might unref the GResolv which in turn would remove the lookup/query what we are trying to access after the callback is returned. So it is enough to remove the lookup or query entry from queue before cb is called and then manually remove it after the callback has returned.
2012-10-12gresolv: Remove lookup from correct queueJukka Rissanen1-1/+1
The lookup must be removed from lookup queue and not from query queue when cancelling the lookup. Otherwise it is possible that we might access an already removed lookup that is still found in lookup queue. Fixes BMC#25728
2012-09-11gweb: Don't use debug functionality after possible freePatrik Flykt1-4/+1
When the callback has been called, the whole structure might be freed. Thus don't call the debug function tied to the structure.
2012-07-17gresolv: Use predefined mnemonics rather than magic numbersGrant Erickson1-6/+6
Use predefined mnemonics from arpa/nameserv.h for the return value from ns_msg_getflag rather than magic numbers.
2012-07-17gresolv: Do not update successful status with unsuccessful oneGrant Erickson1-3/+9
When performing a resolver lookup from timeserver or wpad, both perform queries with an unspecified address family. This means that both A and AAAA record queries are issued. In cases where a valid, successful A response comes back but where the AAAA query results in a timeout, do not smash the successful A status with the time out AAAA status; otherwise, the timeserver or wpad will appear to fail to them when, in fact, the A query was successful and more than satisfies its unspecified address family requirement. Partial fix for BMC#25486.
2012-07-17gresolve: Fix a typo in conditional check for returning resultsGrant Erickson1-1/+1
In both parse_response and query_timeout there exists logic that checks to ensure that both an A and AAAA lookups have either been responded to or timed out before processing and returning results to the caller. In query_timeout, there was a typo in the condition check such that it did not match those conditions tested in parse_response.
2012-06-26gweb: Use g_try_realloc instead of g_reallocJukka Rissanen1-1/+3
2012-05-22gweb: Adding a function to know if TLS is supported or notTomasz Bursztyka2-0/+7
2012-05-21gweb: Add function to check for TLS supportMarcel Holtmann3-0/+12
2012-04-28gweb: Update copyright informationMarcel Holtmann7-7/+7
2012-04-27gweb: Define GWebRouteFuncPatrik Flykt2-7/+22
Define GWebRouteFunc that will be called when a route to the intended destination may need to be set up.
2012-04-20gweb: don't use deprecated gnutls_session typedefLucas De Marchi1-1/+1
According to gnutls/compat.h, gnutls_session typedef was deprecated since 2.x in favor of gnutls_session_t. Use the new typedef then.
2012-04-05gweb: Add more debug prints when error happensJukka Rissanen1-0/+3
These prints are useful when checking why network connection failed.
2012-03-20gweb: workaround for setsockopt failureSébastien Bianti1-12/+56
Setting socket option BINDTODEVICE requires CAP_NET_RAW capability.
2012-01-11gweb: process_send_file after HTTP Header is sentSébastien Bianti1-0/+3
2012-01-05gweb: Add null pointer checks to avoid connman unstabilityThierry Boureille1-2/+7
Fix null pointer derefencing in "free_session" and "process_send_buffer" functions
2011-12-19gweb: Extend gweb to send fileRonald Tessier2-6/+80
2011-11-28gweb: Bind socket to the right interfaceTomasz Bursztyka1-0/+17
2011-11-28gresolv: Bind socket to the right interfaceTomasz Bursztyka1-2/+22
2011-11-10gweb: Use gcc atomics instead glib's onesDaniel Wagner3-10/+10
g_atomic_int_exchange_and_add() has been removed from glib 2.30 and g_atomic_int_add() should be used. Though there are still quite a few distros out which do not ship a glib version with g_atomic_int_add(). Instead of maintaing a compatiblilty glib layer we just use the built-in functions for atomic memory access.
2011-10-25gweb: Add SOCK_CLOEXEC to socket()Daniel Wagner2-2/+4
Make sure all file descriptor are closed.
2011-09-12gresolv: Fix buffer sizeJukka Rissanen1-3/+5
Make buf just big enough and initialize it in order to get rid of valgrind error (accessing uninitialized memory).
2011-07-24gweb: Fix gnutls_priority_set_direct() for various GnuTLS versionsMarcel Holtmann1-3/+5
2011-07-06gweb: Apply address family restiction to resolverTomasz Bursztyka1-0/+2
2011-07-06gresolv: Queries address family scope restrictionTomasz Bursztyka2-8/+35
Adding the capability to restrict DNS queries to a specific address family through gresolv_set_address_family(). By default, AF_UNSPEC is applied.
2011-07-02gweb: Use GnuTLS priority string to provide wide compatibilityLucas De Marchi1-1/+2
This priority string will only enable SSL 3.0 and TLS 1.0 as protocols and will disable, via the %COMPAT keyword, several TLS protocol options that are known to cause compatibility problems. Reference: http://www.gnu.org/software/gnutls/manual/html_node/Interoperability.html#Interoperability
2011-07-02gweb: Remove call to deprecated GnuTLS functionLucas De Marchi1-0/+2
If we use gnutls 2.12.0 or later it's necessary to call gnutls_transport_set_lowat() to disable the lowat functionality. Since this function is deprecated in new versions of gnutls, call it only if using an older version.
2011-06-27gweb: added the capability to restrict the requests to a specific address ↵Tomasz Bursztyka2-0/+21
family.
2011-06-13gweb: Make debug for write simplerMarcel Holtmann1-4/+2
2011-05-27gweb: Remove usage of unused variablesMarcel Holtmann1-2/+4
2011-04-11gweb: numeric session address was not resolved properly.Jukka Rissanen1-0/+21
Reported by: Sebastien Bianti <sebastien.bianti@linux.intel.com>
2011-04-01gweb: Add port string to getaddrinfoSamuel Ortiz1-1/+4
Without doing so, the socket address returned will have its port field uninitialized. Fixes BMC#14753 Fixes BMC#15026
2011-03-25gweb: Add support for connecting to IPv6 host.Jukka Rissanen1-9/+20