summaryrefslogtreecommitdiff
path: root/content/llcache.c
Commit message (Collapse)AuthorAgeFilesLines
* create netsurf inttypes header to have portable integer formatting macrosVincent Sanders2017-01-211-3/+1
|
* fix spelling in low level cache codeVincent Sanders2016-11-201-47/+47
|
* Allow certificate verification user prompt creation to return errorsVincent Sanders2016-07-311-0/+9
|
* move misc header into public APIVincent Sanders2016-05-301-1/+1
|
* create date and time to seconds since epoch processing utility functionVincent Sanders2016-04-161-29/+53
| | | | | | | currently NetSurf uses curl_getdate to convert textural date and time strings into seconds since epoch. It is betetr to move this functionality to a utility function so curl_getdate can easily be replaced if required.
* complete the rename of the gui browser tableVincent Sanders2016-04-161-4/+4
| | | | | | When the operations tables were created the browser table was renamed to miscellaneous except the actual rename patch was never applied, this fixes that situation.
* Fix size_t printf formattingVincent Sanders2016-03-171-6/+7
| | | | | | | The printf formatting for size_t is set in c99 as %zu but in windows it is %Iu this is solved by adding and inttypes style PRI macro for size_t This also uses this macro everywhere size_t is formatted.
* Log the cache limit along side size, after clean.Michael Drake2016-02-081-1/+1
|
* Style: Wrap some long lines.Michael Drake2016-02-081-18/+31
|
* Add URL to llcache object destruction logging.Michael Drake2016-02-081-1/+2
|
* Remove unused variable.Michael Drake2015-12-201-3/+0
|
* Add support for retrying timed-out cURL fetches.Daniel Silverstone2015-11-101-0/+19
| | | | | | | | | | | | | This is an attempt to amelioriate the situation found in #2384 where we see the cURL connect() failing to complete. Based on the pcap from the bug log, we believe that RISC OS is likely failing to signal the completion of the connection to cURL. As such, cURL times out. This change permits retries of timed out connections in the hope that a fresh socket FD might subsequently function correctly. The defaults chosen mean that the previous behaviour of 30 seconds before timeout is reported will remain the same, but in that time we will make 3 separate attempts to connect the socket.
* Fix error reporting from fetch_startVincent Sanders2015-06-241-26/+40
| | | | | | | Any fetch start error was being reported as "out of memory" which was clearly insufficient. Foe example bad urls (reported was file:// with a missing /) were causing a warn_user with out of memory. This change now at least causes a "bad url" message.
* fixup all the remaining logging macro callsitesVincent Sanders2015-05-281-42/+43
| | | | | The semantic patch tool appears to have missed some difficult to reason about callsites which have now been manually cleaned up
* Change LOG() macro to be varadicVincent Sanders2015-05-281-21/+14
| | | | | | | | | | | | This changes the LOG macro to be varadic removing the need for all callsites to have double bracketing and allows for future improvement on how we use the logging macros. The callsites were changed with coccinelle and the changes checked by hand. Compile tested for several frontends but not all. A formatting annotation has also been added which allows the compiler to check the parameters and types passed to the logging.
* Fix format string type missmatches on 32-bit systems.Michael Drake2015-05-121-3/+7
| | | | Use C99 inttypes header for format string macros.
* Avoid generating confusing warning.Michael Drake2015-05-121-1/+1
| | | | Now the disc cache will be disabled silently if its too slow.
* Improve the logge dinformation about written cache dataVincent Sanders2015-05-081-7/+7
|
* Ensure bandwidth minimum check is only performed when enough data hasVincent Sanders2015-04-301-6/+15
| | | | been written.
* Improve metadata deserialisation to only update object on successVincent Sanders2015-01-281-22/+46
| | | | | | | The low level cache deserialisation was leaving bad data in an low level cache object in the error case. This fixes it so the object state only gets modified on successful deserialisation of all the metadata.
* Ensure no division by zero occours if no time has ever been spent writing ↵Vincent Sanders2015-01-031-2/+6
| | | | llcache
* add missing includesVincent Sanders2014-12-271-0/+1
|
* improve comments in low level cache and remove completed todoVincent Sanders2014-12-041-4/+4
|
* move the low bandwidth check to allow for an average over a much longer timeVincent Sanders2014-12-031-21/+72
|
* Use translated messgae for low bandwidth errorVincent Sanders2014-12-021-1/+1
|
* cope with backing store writeout making no progressVincent Sanders2014-12-011-44/+52
|
* ensure the backing store write reports at least a minimal amount of timeVincent Sanders2014-12-011-0/+7
|
* Improve writeout rescheduling if list of objects is completed quicklyVincent Sanders2014-11-301-9/+11
|
* correctly calculate writeout bandwidth and properly impose limitsVincent Sanders2014-11-291-19/+63
|
* Improve llcache writeout stratagyVincent Sanders2014-11-281-21/+42
|
* update the backing store to allow for invalidating entries which have an ↵Vincent Sanders2014-11-271-1/+5
| | | | allocation
* stop using gettimeofday and use the monotonic time interface fron nsutilsVincent Sanders2014-11-261-8/+10
|
* caclulate the total amount of time spent writing an object outVincent Sanders2014-11-251-19/+34
| | | | | | In order to calculate the writeout bandwidth we need to know how long it took to write the data to peristant storage in addition to how much was written.
* correctly release source data from llcacheVincent Sanders2014-11-231-1/+8
|
* Improve doxygen comments and add todo for cache and backing storeVincent Sanders2014-11-231-56/+135
|
* change the persistant data store to owning the allocationsVincent Sanders2014-11-221-19/+17
|
* Doxygen cleanupsVincent Sanders2014-11-091-3/+3
|
* Update the core to use the split operations table headersVincent Sanders2014-10-161-2/+5
| | | | Second in the series to decouple the core API usage from the frontends.
* clean up the fetcher factory and improve its APIVincent Sanders2014-06-191-8/+0
|
* turn off debugging and add some comments and todo from dsilversVincent Sanders2014-06-031-7/+9
|
* Adjust the llcache behaviour to use scheduler for user notification.Daniel Silverstone2014-06-031-2/+43
| | | | | | | | | | | | | This change updates the llcache to use the scheduler to notify users of the llcache of events. This should be just as safe as before and is part of an effort to remove hlcache_poll and llcache_poll eventually because fetchers should schedule themselves if need-be. This is a big change despite the diminutive nature of the patch. Please report issues promptly if they turn up after this and are not visible before it. Signed-off-by: Daniel Silverstone <dsilvers@netsurf-browser.org> Reviewed-by: Vincent Sanders <vince@netsurf-browser.org>
* attempt to purge low level cache on out of memory during fetchVincent Sanders2014-05-291-42/+60
|
* Fix leak of url schemes.Michael Drake2014-05-161-0/+1
|
* add helpers for time_t reading/writingVincent Sanders2014-05-151-26/+36
|
* add strptime compatabilityVincent Sanders2014-05-131-0/+2
|
* Extend low level source data cache with persistant storageVincent Sanders2014-05-131-139/+854
|
* Improve llcache header processingVincent Sanders2014-03-091-7/+22
| | | | | | By skipping empty headers and correctly dealing with whitespace around header names we store fewer entries with better adherance to allowed values in http responses.
* only try and cache http and https urlsVincent Sanders2014-03-091-7/+28
|
* remove unnecessary caching of whether a url has a query elementVincent Sanders2014-03-091-10/+1
|
* make nsurl_defragment() API more obvious and remove duplicated parameter ↵Vincent Sanders2014-03-091-7/+3
| | | | checking