Commit Graph

935 Commits

Author SHA1 Message Date
Daniel Silverstone
44f3846727 SSL Error: Enable OpenSSL hostname verification
Since OpenSSL 1.0.2 there has been hostname verification support
which cURL doesn't turn on for some reason.  Turn it on so that
we get better hostname verification handling.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-14 20:11:11 +01:00
Vincent Sanders
98f4525073 add common name ssl certificate error
This adds an ssl faliure code and explanation why curl fetcher
 does not currently set it.
2019-08-10 12:50:23 +01:00
Daniel Silverstone
1cf1ec55bc Support SSL verification through new about: handler
In doing this, also propagate why the certificates were bad
so that the page can display a reason.  We will need FatMessages
for all these.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-06 13:15:23 +01:00
Daniel Silverstone
8469f4cc8e Reimplement handling of BAD_AUTH inside browser_window
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>
2019-08-06 11:26:47 +01:00
Daniel Silverstone
170dc5d524 Excise the llcache query pathway.
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>
2019-08-05 20:56:07 +01:00
Daniel Silverstone
9742a8317f Dukky: Add and utilise a jserrors category
Normal, and verbose logging will now also log all JS errors in order that we
stand a chance of debugging things more easily when testing.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 10:12:45 +01:00
Daniel Silverstone
3fcba68fcf Logging: Also log the level and category
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-08-02 09:58:41 +01:00
Vincent Sanders
5ee910ffee update haiku package source name for 3.10 version 2019-07-17 12:52:30 +01:00
Michael Forney
6a53b447e5 Declare global variables as extern in headers
Otherwise, each source file that includes the header will create a
new definition, which are usually merged together by the linker.

Multiple definitions of an object is not allowed in ISO C.
2019-06-30 09:52:06 +01:00
Vincent Sanders
8b6f590aaa prevent out of bounds access when checking IDNA host label 2019-06-13 17:02:08 +01:00
John-Mark Bell
23698aecf8 HTTP: expose validity of max-age in Cache-Control
As max-age is an optional directive, provide a means to determine
if it is present and correct.
2019-06-10 21:35:36 +00:00
John-Mark Bell
04b790643b HTTP: add minimal parser for Cache-Control 2019-06-10 21:02:19 +00:00
Daniel Silverstone
ec0028bdb9 Add SCRIPT to core domstrings
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-05-05 16:00:03 +01:00
Daniel Silverstone
8eab64132a Add languagechange DOM string
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-05-03 13:45:16 +01:00
Daniel Silverstone
f64da1abda LOG: Add a dukky logging category
For better logging separation, add a dukky logging category

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-02-17 11:32:48 +00:00
Vincent Sanders
54371c28f0 make framebuffer use the language environment for the UI resources 2019-02-17 00:11:27 +00:00
Vincent Sanders
05ac430305 ensure filename numeric is not truncated and hence cause output buffer overflow 2018-11-06 21:59:50 +00:00
Vincent Sanders
3fd6f04e52 ensure output buffer is large enough to not be truncated 2018-11-06 21:57:23 +00:00
Vincent Sanders
04a515a8ca add sha 256 checksum fallback binary name for openbsd 2018-10-05 00:11:08 +01:00
Vincent Sanders
631a3145f8 fix sha256 file name suffix in script 2018-10-05 00:00:16 +01:00
Vincent Sanders
7ef2b8b711 fix stupid error expanding shell variable 2018-10-04 23:54:14 +01:00
Vincent Sanders
3523cdc4a4 cope with md5sum being named different things on bsd 2018-10-04 23:49:31 +01:00
Vincent Sanders
ef53336724 update the deployment script to add sha and md5 checksums 2018-10-04 23:13:28 +01:00
Vincent Sanders
9100fcb409 improve nsurl query handling.
Alter the handling of query values within nsurl to be like fragments.

This ensures callers never have to care about the query punctuation,
e.g. the question mark

This also means the strings generated will no longer have trailing
question marks which now conforms to behaviour in whatwg url spec
on url serializing in section 4.5
2018-09-26 17:21:33 +01:00
Vincent Sanders
6ce6b62099 stop defining _XOPEN_SOURCE
This is necessary with some libc as it overrides _POSIX_C_SOURCE
and removes definitions of scandir etc.
2018-09-06 11:33:02 +01:00
Vincent Sanders
f45d84631c fix up package version on haiku 2018-08-29 11:49:05 +01:00
Vincent Sanders
912aa3774e remove use of strcpy 2018-08-29 10:24:23 +01:00
Vincent Sanders
9142bab736 remove a warning on openbsd 2018-08-28 22:17:02 +01:00
Vincent Sanders
865796486d make ssize_t type available on some platforms 2018-08-23 21:18:54 +01:00
Vincent Sanders
bec6428c6c pass PACKAGER variable to pakage build target 2018-08-21 19:55:08 +01:00
Vincent Sanders
5f1defd4a7 fix size_t format specifiers 2018-08-18 23:44:15 +01:00
Vincent Sanders
7d22759f5e display some system and environment values in CI build script 2018-08-15 16:52:54 +01:00
Vincent Sanders
c1fb25e074 correct package name for artifact generation 2018-08-15 16:24:03 +01:00
Michael Drake
fa546661ad nsurl: Move debug logging over to nslog. 2018-08-09 16:19:42 +01:00
Michael Drake
add6dcc015 nsurl: Add variant of nsurl_access for logging. 2018-08-09 16:19:42 +01:00
Michael Drake
bc280f0e3f nsurl: Add data to scheme type enum. 2018-08-09 16:19:42 +01:00
Daniel Silverstone
527541ddbd Make CI NetSurf builds compile in DEBUG level logging 2018-07-28 14:10:26 +01:00
Vincent Sanders
7c3da95a07 Resolve resource leak on error (coverity issue 1390560) 2018-05-18 10:02:03 +01:00
Vincent Sanders
43582c5055 allow hash table add inline to be uncompressed 2018-04-22 14:03:18 +01:00
Vincent Sanders
b94b96e272 add hash table population from file or memory 2018-04-22 14:03:18 +01:00
John-Mark Bell
f2121d1c0f NSURL: add ability to create replacement scheme 2018-04-22 11:39:12 +00:00
John-Mark Bell
1c05280b5c HSTS: add parser for Strict-Transport-Security 2018-04-22 11:39:12 +00:00
Daniel Silverstone
e864997842 Fix last uses of !NetSurf outside of riscos build 2018-04-22 10:55:22 +01:00
Daniel Silverstone
83e8f377ad Support compression on output stream 2018-04-22 10:11:11 +01:00
Michael Drake
7bd1fb50c6 Utils: Filename: Squash warning: -Wformat-truncation=
We need to check the snprintf return value, or GCC7 whinges:

    warning: ‘snprintf’ output may be truncated before the last
             format character [-Wformat-truncation=]
2018-01-01 13:51:40 +00:00
Vincent Sanders
3b88e0ef9e fix amigaos3 building 2017-12-11 13:17:14 +00:00
Vincent Sanders
3ac65ef6e2 add m68k to amigaos targets builds 2017-12-11 12:48:28 +00:00
Daniel Silverstone
8123e65351 Finalise nslog layer properly in closedown 2017-09-10 14:22:05 +01:00
Vincent Sanders
c1c8ed794d Revert "Hopefully quash INFO confusion on Atari MINT platform"
This reverts commit 9c93ed1bca.
2017-09-08 21:49:59 +01:00
Daniel Silverstone
bb056e55b1 Sort out the logging so that -v etc do the right thing 2017-09-08 21:15:54 +01:00
Daniel Silverstone
9c93ed1bca Hopefully quash INFO confusion on Atari MINT platform 2017-09-08 19:56:23 +01:00
Vincent Sanders
3f3e7de6d9 do not attempt to log when output is not enabled 2017-09-07 21:07:03 +01:00
Vincent Sanders
86c3f3e005 update layout logging to use a catagory 2017-09-07 18:26:53 +01:00
Vincent Sanders
5d6f189d8b Fixup everything the semantic patch missed 2017-09-07 18:12:09 +01:00
Vincent Sanders
2b0a5ef2e7 update framebuffer toolkit logging to use a ctagory 2017-09-07 16:57:58 +01:00
Vincent Sanders
b9bdc279f2 Update scheduler logging to use catagory 2017-09-07 15:30:08 +01:00
Vincent Sanders
b346790cf6 update plotter logging to use a catagory 2017-09-06 18:45:35 +01:00
Vincent Sanders
71225624f6 update fetch debug logging to use catagory 2017-09-06 18:45:35 +01:00
Vincent Sanders
72e6050eb3 add low level cache category and use it 2017-09-06 18:45:35 +01:00
Vincent Sanders
75018632a9 Use coccinelle to change logging macro calls in c files
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);
2017-09-06 18:45:27 +01:00
Vincent Sanders
8d9b2efc11 use nslog library for logging if available. 2017-09-03 23:40:32 +01:00
Michael Drake
c6717f1ade Messages: Correct code comment. 2017-08-30 09:47:49 +01:00
Michael Drake
c2ac1a713f Errorcodes: Add SPRITE_ERROR and use it in sprite content handler. 2017-08-30 09:43:13 +01:00
Michael Drake
41f30992aa Messages: Return the unknown message if we get to the unhandled errorcode.
We shouldn't get there though.
2017-08-28 12:21:03 +01:00
Michael Drake
7ba93407ad Messages: Do message lookups for all errorcodes. 2017-08-28 11:39:21 +01:00
Michael Drake
3a0e87e89f Errorcodes: Remove redundant MNG error. 2017-08-28 11:11:40 +01:00
Michael Drake
9fd0e06501 Whitespace: Tidy up errorcodes. 2017-08-28 11:08:18 +01:00
Michael Drake
9e64f37846 RSVG content handler: Convert to using content_broadcast_errorcode(). 2017-08-28 10:21:11 +01:00
Michael Drake
cae1c44f8f PNG content handler: Convert to using content_broadcast_errorcode(). 2017-08-28 10:14:22 +01:00
Michael Drake
d1a493f569 ICO content handler: Convert to using content_broadcast_errorcode(). 2017-08-27 13:32:53 +01:00
Michael Drake
d83f6ea3c1 GIF content handler: Convert to using content_broadcast_errorcode(). 2017-08-27 13:28:21 +01:00
Michael Drake
337bd98f6c BMP content handler: Convert to using content_broadcast_errorcode(). 2017-08-27 13:28:21 +01:00
Michael Drake
7338f3ce88 nsurl: Remove redundant code path. 2017-03-27 18:09:29 +01:00
Michael Drake
8b4df800be nsurl: Use ascii header for hex to value conversion. 2017-03-27 15:40:08 +01:00
Michael Drake
0e7ebb4ee0 ASCII: Add function for converting two hex chars to value. 2017-03-27 15:37:25 +01:00
Michael Drake
b14aa97a2a ASCII: Add hex char to value conversion function. 2017-03-27 15:35:59 +01:00
Michael Drake
8caae83d35 ASCII: Split out a-f test. 2017-03-27 14:57:56 +01:00
Michael Drake
3ec522429a ASCII: Split out A-F test. 2017-03-27 14:50:36 +01:00
Michael Drake
8e96e9bc27 nsurl: Don't allow credentials or host for file: URLs. 2017-03-27 12:20:33 +01:00
Michael Drake
372df59f28 nsurl: Set path of "/" for file: URLs with empty path. 2017-03-27 12:11:16 +01:00
Michael Drake
465ad9f0ab nsurl: Add detection of "file:" URL schemes. 2017-03-27 12:09:45 +01:00
Michael Drake
b605270d42 nsurl: Add "file:" entry to enum of known URL schemes. 2017-03-27 12:05:11 +01:00
Vincent Sanders
6fb654d356 rework corestring implementation
This removes special casing for some strings and importantly the
multiple huge lists of variables in code.
2017-03-19 14:27:05 +00:00
Vincent Sanders
0f69965805 clean up some of the doxygen generation warnings 2017-02-19 11:32:17 +00:00
Michael Drake
3f5d8d1a2e nsurl: Tidy up shared components code. 2017-02-08 17:27:13 +00:00
Michael Drake
5c8f4c9c8c nsurl: Rationalise debug build option. 2017-02-08 17:27:13 +00:00
Michael Drake
91a7fffd56 nsurl: Tidy up component helper macros. 2017-02-08 17:27:13 +00:00
Michael Drake
2acd90e28a nsurl: Consolidate conversion to string. 2017-02-08 17:27:13 +00:00
Michael Drake
95e5ede775 nsurl: Split out URL parsing. 2017-02-08 17:27:13 +00:00
Michael Drake
4c47f9c046 nsurl: Split internal structure out into private header. 2017-02-08 17:27:13 +00:00
Michael Drake
299a85fa7a nusrl: Move into utils/nsurl directory. 2017-02-08 17:27:13 +00:00
Daniel Silverstone
108cc0cebd Support fixed nsgenbind bindings 2017-02-05 11:20:08 +00:00
Vincent Sanders
6075feb487 create netsurf inttypes header to have portable integer formatting macros 2017-01-21 14:20:55 +00:00
Vincent Sanders
70d700b26c rationalise use of utils/utils.h header 2017-01-19 21:15:08 +00:00
Vincent Sanders
7dab7cb43d move plot style header to netsurf include directory
move plotter style header and adjust all callers to use only what they
actually require.
2017-01-13 10:03:24 +00:00
Vincent Sanders
7a5b50be94 move test script into utils 2016-12-16 14:45:16 +00:00
Chris Young
407e58406b Remove nonsense comments 2016-12-11 17:33:31 +00:00
Chris Young
4ad375c3b0 Ensure memory used by Messages is freed on exit 2016-12-11 16:43:48 +00:00
Michael Drake
67b7854737 IDNA: Update to upstream-compatible utf8proc API. 2016-11-23 15:43:37 +00:00
Daniel Silverstone
1fb06929d9 Remove internal BASE64 in favour of nsutils' one 2016-11-19 14:40:10 +00:00