Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Reimplement handling of BAD_AUTH inside browser_window | Daniel Silverstone | 2019-08-06 | 1 | -1/+1 |
| | | | | | | | | | | | | | We now handle authentication requests via an `about:` page which presents a nice form built into the browser window. In order to do this, we add internal navigation as a concept to the browser window and we strip the 401login support from all frontends except monkey. The 401login callback is now intended for password safe type support rather than an immediately interactive prompt. Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org> | ||||
* | Excise the llcache query pathway. | Daniel Silverstone | 2019-08-05 | 1 | -89/+24 |
| | | | | | | | | In further preparation for the auth and cert queries being handled as special contents from `about:` this excises the query pathway from the llcache pretty much entirely. Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org> | ||||
* | Migrate SSL certificate storage to the browser window | Daniel Silverstone | 2019-08-05 | 1 | -9/+12 |
| | | | | | | | | | | * Fetchers now provide the certificates before headers * This is propagated all the way to the browser window * When a query occurs, we retrieve it from there and fire the query with those stored certificates. * The serial number is a bignum, store it as hex. Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org> | ||||
* | llcache: Do not delete objects if they were iterator targets | Daniel Silverstone | 2019-08-04 | 1 | -1/+1 |
| | | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org> | ||||
* | llcache: pass the cb_pw in query_finished | Daniel Silverstone | 2019-08-04 | 1 | -0/+1 |
| | | | | Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org> | ||||
* | Migrate query dispatch up from llcache to hlcache | Daniel Silverstone | 2019-08-03 | 1 | -37/+37 |
| | | | | | | | | | | | | As a first step in refactoring query handling to be managed by `browser_window`, this migrates the calling of the query handler from the llcache object code up to the hlcache. In theory this may result in multiple queries happening for one object, but we mitigate multiple-responses in the llcache so all should be well. Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org> | ||||
* | llcache: Ensure we preserve iteratorness when sending messages | Daniel Silverstone | 2019-08-02 | 1 | -1/+2 |
| | | | | | | | | | In order to prevent a problem where iterating causes an abort which causes an iteration which clears the iteratorness of a user allowing it to delete itself causing a segfault, preserve the iteratorness when iterating in send_message Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org> | ||||
* | llcache: Use last_modified instead of date | Daniel Silverstone | 2019-08-02 | 1 | -2/+2 |
| | | | | | | | | | When sending an If-Modified-Since header we should use the `last_modified` rather than the `date` property of the cached object in order to not incorrectly assume things have a modification date when they do not. Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org> | ||||
* | llcache: Abort cleanly if called back during shutdown | Daniel Silverstone | 2019-06-15 | 1 | -0/+7 |
| | | | | | | | | | | In order to help us debug shutting down with active fetches, this will abort the process cleanly if we get a callback to an "active" llcache handle after the abort process has actually killed them all. This can happen with deferred fetcher aborts in the cURL fetcher. Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org> | ||||
* | LLCache: validate max-age before use | John-Mark Bell | 2019-06-10 | 1 | -1/+3 |
| | |||||
* | LLCache: use Cache-Control parser | John-Mark Bell | 2019-06-10 | 1 | -48/+18 |
| | |||||
* | use jmb suggested fix to cache-control header parse error | Vincent Sanders | 2019-06-10 | 1 | -7/+6 |
| | |||||
* | fix parsing of invalid syntax max-age value Cache-control header | Vincent Sanders | 2019-06-10 | 1 | -2/+8 |
| | |||||
* | fix size_t format specifiers | Vincent Sanders | 2018-08-18 | 1 | -10/+12 |
| | |||||
* | refactor llcache header processing | Vincent Sanders | 2018-08-12 | 1 | -115/+159 |
| | | | | | refactor the header processing in the low level object cache to make cache control header processing more explicit. | ||||
* | HSTS: make llcache update policy on 3xx responses | John-Mark Bell | 2018-04-22 | 1 | -0/+2 |
| | |||||
* | HSTS: prevent llcache being nice | John-Mark Bell | 2018-04-22 | 1 | -9/+25 |
| | | | | | | | | If the server has defined a HSTS policy, then the user no longer gets to click-through a garbage certificate. Additionally, if the server has provided a HSTS policy, it should do TLS properly, so don't permit client-driven TLS version downgrades in that case, either. | ||||
* | HSTS: teach llcache to update and enforce policy. | John-Mark Bell | 2018-04-22 | 1 | -13/+126 |
| | |||||
* | LLCache: correct typos/grammar/etc. | John-Mark Bell | 2018-04-22 | 1 | -21/+21 |
| | |||||
* | Squash remaining GCC7 -Wimplicit-fallthrough warnings. | Michael Drake | 2017-10-23 | 1 | -3/+1 |
| | |||||
* | fix time_t logging | Vincent Sanders | 2017-09-08 | 1 | -1/+1 |
| | |||||
* | Hopefully quash warning about time_t formatting on openbsd | Daniel Silverstone | 2017-09-08 | 1 | -1/+1 |
| | |||||
* | add low level cache category and use it | Vincent Sanders | 2017-09-06 | 1 | -76/+69 |
| | |||||
* | Use coccinelle to change logging macro calls in c files | Vincent Sanders | 2017-09-06 | 1 | -19/+26 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | for F in $(git ls-files '*.c');do spatch --sp-file foo.cocci --in-place ${F};done @@ expression E; @@ -LOG(E); +NSLOG(netsurf, INFO, E); @@ expression E, E1; @@ -LOG(E, E1); +NSLOG(netsurf, INFO, E, E1); @@ expression E, E1, E2; @@ -LOG(E, E1, E2); +NSLOG(netsurf, INFO, E, E1, E2); @@ expression E, E1, E2, E3; @@ -LOG(E, E1, E2, E3); +NSLOG(netsurf, INFO, E, E1, E2, E3); @@ expression E, E1, E2, E3, E4; @@ -LOG(E, E1, E2, E3, E4); +NSLOG(netsurf, INFO, E, E1, E2, E3, E4); @@ expression E, E1, E2, E3, E4, E5; @@ -LOG(E, E1, E2, E3, E4, E5); +NSLOG(netsurf, INFO, E, E1, E2, E3, E4, E5); @@ expression E, E1, E2, E3, E4, E5, E6; @@ -LOG(E, E1, E2, E3, E4, E5, E6); +NSLOG(netsurf, INFO, E, E1, E2, E3, E4, E5, E6); @@ expression E, E1, E2, E3, E4, E5, E6, E7; @@ -LOG(E, E1, E2, E3, E4, E5, E6, E7); +NSLOG(netsurf, INFO, E, E1, E2, E3, E4, E5, E6, E7); | ||||
* | create netsurf inttypes header to have portable integer formatting macros | Vincent Sanders | 2017-01-21 | 1 | -3/+1 |
| | |||||
* | fix spelling in low level cache code | Vincent Sanders | 2016-11-20 | 1 | -47/+47 |
| | |||||
* | Allow certificate verification user prompt creation to return errors | Vincent Sanders | 2016-07-31 | 1 | -0/+9 |
| | |||||
* | move misc header into public API | Vincent Sanders | 2016-05-30 | 1 | -1/+1 |
| | |||||
* | create date and time to seconds since epoch processing utility function | Vincent Sanders | 2016-04-16 | 1 | -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 table | Vincent Sanders | 2016-04-16 | 1 | -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 formatting | Vincent Sanders | 2016-03-17 | 1 | -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 Drake | 2016-02-08 | 1 | -1/+1 |
| | |||||
* | Style: Wrap some long lines. | Michael Drake | 2016-02-08 | 1 | -18/+31 |
| | |||||
* | Add URL to llcache object destruction logging. | Michael Drake | 2016-02-08 | 1 | -1/+2 |
| | |||||
* | Remove unused variable. | Michael Drake | 2015-12-20 | 1 | -3/+0 |
| | |||||
* | Add support for retrying timed-out cURL fetches. | Daniel Silverstone | 2015-11-10 | 1 | -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_start | Vincent Sanders | 2015-06-24 | 1 | -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 callsites | Vincent Sanders | 2015-05-28 | 1 | -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 varadic | Vincent Sanders | 2015-05-28 | 1 | -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 Drake | 2015-05-12 | 1 | -3/+7 |
| | | | | Use C99 inttypes header for format string macros. | ||||
* | Avoid generating confusing warning. | Michael Drake | 2015-05-12 | 1 | -1/+1 |
| | | | | Now the disc cache will be disabled silently if its too slow. | ||||
* | Improve the logge dinformation about written cache data | Vincent Sanders | 2015-05-08 | 1 | -7/+7 |
| | |||||
* | Ensure bandwidth minimum check is only performed when enough data has | Vincent Sanders | 2015-04-30 | 1 | -6/+15 |
| | | | | been written. | ||||
* | Improve metadata deserialisation to only update object on success | Vincent Sanders | 2015-01-28 | 1 | -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 Sanders | 2015-01-03 | 1 | -2/+6 |
| | | | | llcache | ||||
* | add missing includes | Vincent Sanders | 2014-12-27 | 1 | -0/+1 |
| | |||||
* | improve comments in low level cache and remove completed todo | Vincent Sanders | 2014-12-04 | 1 | -4/+4 |
| | |||||
* | move the low bandwidth check to allow for an average over a much longer time | Vincent Sanders | 2014-12-03 | 1 | -21/+72 |
| | |||||
* | Use translated messgae for low bandwidth error | Vincent Sanders | 2014-12-02 | 1 | -1/+1 |
| | |||||
* | cope with backing store writeout making no progress | Vincent Sanders | 2014-12-01 | 1 | -44/+52 |
| |