Commit Graph

174 Commits

Author SHA1 Message Date
James Bursa
594eb74c4c Fix deadlock when fetching stylesheets when max_fetchers_per_host is reached by splitting fetch_can_be_freed() into fetch_remove_from_queues() and fetch_free().
svn path=/trunk/netsurf/; revision=3380
2007-07-04 18:44:13 +00:00
James Bursa
960c11de1a Rename register_curl_fetchers() to fetch_curl_register(). Add declarations for static functions and reorder functions.
svn path=/trunk/netsurf/; revision=3379
2007-07-04 18:05:16 +00:00
Daniel Silverstone
e671fe3707 Add debug about ring sizes. Ensure we dispatch queued jobs when a job is freed.
svn path=/trunk/netsurf/; revision=3333
2007-06-10 18:12:30 +00:00
John Mark Bell
87ca206e13 Warning fixes.
svn path=/trunk/netsurf/; revision=3332
2007-06-10 18:08:22 +00:00
Daniel Silverstone
e6d754cc96 Remove a time consuming LOG(()) and add some whitespace to help me think
svn path=/trunk/netsurf/; revision=3331
2007-06-10 17:55:07 +00:00
Daniel Silverstone
1dd7e97eb3 Merge scheme switcher branch in.
svn path=/trunk/netsurf/; revision=3330
2007-06-10 17:46:44 +00:00
Daniel Silverstone
6807b4208a Remove the netsurf/ from the include paths and rationalise use of <> vs "" in includes
NetSurf includes are now done with ""s and other system includes with <>s as C intended.
The scandeps tool has been updated to only look for ""ed includes, and to verify that the
files exist in the tree before adding them to the dependency lines. The depend rule has
therefore been augmented to make sure the autogenerated files are built before it is run.

This is untested under self-hosted RISC OS builds. All else tested and works.


svn path=/trunk/netsurf/; revision=3307
2007-05-30 22:39:54 +00:00
Daniel Silverstone
25e22eb1f5 Add a -v option to enable debug logging. Pass -v by default to the RO runimage.
svn path=/trunk/netsurf/; revision=3306
2007-05-30 22:27:58 +00:00
James Bursa
5d2a2c42b2 Log curl_version() in fetch_init().
svn path=/trunk/netsurf/; revision=3267
2007-05-06 05:55:13 +00:00
James Bursa
21407fe8ab Fix some warnings in recent gcc.
svn path=/trunk/netsurf/; revision=3261
2007-05-02 02:47:39 +00:00
James Bursa
0547422534 Move user-agent generation into fetch.c and simplify.
svn path=/trunk/netsurf/; revision=3260
2007-05-02 02:38:38 +00:00
John Mark Bell
91cfb11592 Fix crash on WWW-Authenticate header with no realm (1686714)
svn path=/trunk/netsurf/; revision=3216
2007-03-23 22:39:10 +00:00
John Mark Bell
6d0795b923 Handle redirects with partial bodies.
svn path=/trunk/netsurf/; revision=3209
2007-03-18 13:02:07 +00:00
John Mark Bell
cf17b38065 Ensure handle options are reset appropriately (fixes 1668354)
svn path=/trunk/netsurf/; revision=3189
2007-02-25 16:52:53 +00:00
Daniel Silverstone
657e384a84 Fix RING_FINDBYHOST to actually find things. jmb found the bug, I verified his patch and committed it
svn path=/trunk/netsurf/; revision=3186
2007-02-22 11:48:39 +00:00
John Mark Bell
25213dca24 Fix handling of cookies in unverifiable transactions caused by a redirect from a fetch into a browser window which was varifiable.
svn path=/trunk/netsurf/; revision=3165
2007-02-02 23:08:13 +00:00
John Mark Bell
8cf2e40daa Bring handling of submission of blank file inputs in line with other browsers.
Tidy up fetch_post_convert while I'm at it.

svn path=/trunk/netsurf/; revision=3159
2007-01-30 23:19:21 +00:00
Rob Kendrick
5426a708a9 Generates and use a User-Agent: string based on new netsurf_version_major/minor values, and results of uname().
svn path=/trunk/netsurf/; revision=3158
2007-01-30 19:51:54 +00:00
James Bursa
a0b6661eb6 Make GTK build compile on FreeBSD.
svn path=/trunk/netsurf/; revision=3154
2007-01-29 22:27:15 +00:00
John Mark Bell
df4dbaf4cf Handle cookies in unverifiable transactions
svn path=/trunk/netsurf/; revision=3151
2007-01-27 20:58:20 +00:00
John Mark Bell
f629a4f00f Revert hack around broken pipe (not caching fetch handles used for SSL
connections).
Ignore SIGPIPE completely as nothing other than OpenSSL is expected to 
generate it.

svn path=/trunk/netsurf/; revision=3145
2007-01-18 01:26:58 +00:00
James Bursa
e76140557d Add fetch_http_code() to retrieve the HTTP status code of a fetch.
svn path=/trunk/netsurf/; revision=3139
2007-01-13 00:19:02 +00:00
Daniel Silverstone
cf0718f649 Update the file comment for fetch.c as requested.
svn path=/trunk/netsurf/; revision=3133
2007-01-02 13:07:28 +00:00
John Mark Bell
98b451ffae Add option to set Accept-Charset header (Stefaan Claes)
svn path=/trunk/netsurf/; revision=3124
2006-12-28 00:42:14 +00:00
John Mark Bell
abcce3dfe7 Fix typo.
Default type -> text/plain

svn path=/trunk/netsurf/; revision=3123
2006-12-28 00:36:37 +00:00
Michael Drake
ba23e4b693 Update project URL.
svn path=/trunk/netsurf/; revision=3073
2006-11-27 15:35:18 +00:00
Chris Williams
f4e4ec00b7 Ignore body data from 401 replies to prevent disruption of auth login handling
svn path=/trunk/netsurf/; revision=2972
2006-10-01 13:17:52 +00:00
John Mark Bell
5bbd5f259e Don't cache curl handles that were used to fetch https URLs; with any
luck, this should fix broken pipe crashes.

svn path=/trunk/netsurf/; revision=2723
2006-07-09 01:25:06 +00:00
John Mark Bell
8c3e9b882b Fix crash when url_* fails
svn path=/trunk/netsurf/; revision=2678
2006-06-29 22:04:56 +00:00
John Mark Bell
83ef76adc7 Only accept cookies from cookie-enabled transactions
svn path=/trunk/netsurf/; revision=2668
2006-06-29 00:01:24 +00:00
John Mark Bell
4f249f9d0a Merge cookies changes into head - unvalidated transactions and a UI
still need implementing.

svn path=/trunk/netsurf/; revision=2632
2006-06-19 21:49:25 +00:00
James Bursa
312bece1d0 Make static function names consistent.
svn path=/trunk/netsurf/; revision=2537
2006-04-16 10:30:51 +00:00
John Mark Bell
ef301b8619 Fix URL file loading and add support for file:/// URLs to urldb
Convert file:/... to file:///... (the former isn't a valid URL)

svn path=/trunk/netsurf/; revision=2524
2006-04-12 08:09:27 +00:00
John Mark Bell
c09eb457df Unify information databases
svn path=/trunk/netsurf/; revision=2519
2006-04-09 23:21:13 +00:00
Daniel Silverstone
7ddb6b6f19 [project @ 2006-03-14 15:01:57 by dsilvers]
Urgh, unconditional variables made my brain hurt

svn path=/import/netsurf/; revision=2129
2006-03-14 15:01:57 +00:00
Daniel Silverstone
40260f177a [project @ 2006-03-14 14:21:00 by dsilvers]
Multi-parallel fetch. Needs documenting, works in basic GTK tests, makes things way faster on GTK port. Needs testing on RO and in general more testing is good.

svn path=/import/netsurf/; revision=2127
2006-03-14 14:21:01 +00:00
Michael Drake
b48ed604f5 [project @ 2006-03-04 10:48:40 by tlsa]
Tweak timeouts.

svn path=/import/netsurf/; revision=2103
2006-03-04 10:48:40 +00:00
John Mark Bell
d4d3e5ee1c [project @ 2006-02-23 15:06:53 by jmb]
Handle invalid SSL certificates better - UI still needs work.
Modify fetch callback data parameter type to remove compiler warnings.
Constify things.
Lose global ssl_verify_certificates option.
Fix issue when closing a dialog without input focus.

svn path=/import/netsurf/; revision=2092
2006-02-23 15:06:54 +00:00
John Mark Bell
5ce5fe084c [project @ 2006-02-19 18:26:23 by jmb]
Rewrite HTTP authentication.
Fix extraction of realm from WWW-Authenticate header.
Tidy up login dialog code.

svn path=/import/netsurf/; revision=2085
2006-02-19 18:26:23 +00:00
James Bursa
07d55db910 [project @ 2006-02-13 23:04:32 by bursa]
Disable sending of Expect: 100-continue for POSTs (fixes using the bug tracker). Remove unnecessary setting of Host header.

svn path=/import/netsurf/; revision=2080
2006-02-13 23:04:32 +00:00
John Mark Bell
e724672302 [project @ 2006-02-08 00:35:05 by jmb]
Handle case where no cache expiry headers are sent; use (now - last_modified) / 10. This should reduce the frequency of cache entry validation.

svn path=/import/netsurf/; revision=2064
2006-02-08 00:35:05 +00:00
John Mark Bell
6be0b8e60c [project @ 2006-02-07 00:44:52 by jmb]
Squash leaks and fake ETag header for local objects.

svn path=/import/netsurf/; revision=2060
2006-02-07 00:44:52 +00:00
John Mark Bell
0f228ada91 [project @ 2006-02-06 00:10:09 by jmb]
Implement HTTP caching algorithm; this should avoid stale cache entries being used.

svn path=/import/netsurf/; revision=2059
2006-02-06 00:10:09 +00:00
John Mark Bell
745deb7a9d [project @ 2006-01-08 01:51:33 by jmb]
Make data file locations user-configurable (no UI for this as yet)
Reduce intrusiveness of ncos modifications
Fix GTK build
Remove Cookies file details from Messages (this data never belonged in there anyway)
Make gui_init more robust against memory exhaustion.

svn path=/import/netsurf/; revision=2014
2006-01-08 01:51:33 +00:00
John Mark Bell
07d4f5c57b [project @ 2006-01-07 02:33:36 by jmb]
Fix 1347726.

svn path=/import/netsurf/; revision=2011
2006-01-07 02:33:36 +00:00
John Mark Bell
05bb6641e1 [project @ 2006-01-03 17:01:17 by jmb]
Fix 1371902.
fetch_filetype now receives the unix path with the leading / (which it always should have done, tbh).

svn path=/import/netsurf/; revision=1976
2006-01-03 17:01:17 +00:00
James Bursa
ad13eb98af [project @ 2005-12-19 21:54:51 by bursa]
Fix busy polling in gtk build.

svn path=/import/netsurf/; revision=1900
2005-12-19 21:54:51 +00:00
James Bursa
666cdaf8dd [project @ 2005-12-11 21:54:30 by bursa]
Disable some log messages.

svn path=/import/netsurf/; revision=1896
2005-12-11 21:54:30 +00:00
Adrian Lees
dbcfa470c4 [project @ 2005-07-16 16:23:08 by adrianl]
Bounds checking in Content-Length handling

svn path=/import/netsurf/; revision=1799
2005-07-16 16:23:08 +00:00
James Bursa
c4d3ac1d8f [project @ 2005-04-09 10:00:00 by bursa]
Serialize fetches with no host (should fix multiple local files not loading in certain cases).

svn path=/import/netsurf/; revision=1611
2005-04-09 10:00:00 +00:00
Richard Wilson
422df90089 [project @ 2005-01-23 16:09:05 by rjw]
Further work on theme installing

svn path=/import/netsurf/; revision=1463
2005-01-23 16:09:05 +00:00
James Bursa
1fb2e5f2c3 [project @ 2005-01-22 22:42:48 by bursa]
Fix proxy authentication bug (libcurl does not copy string options)

svn path=/import/netsurf/; revision=1461
2005-01-22 22:42:48 +00:00
John Mark Bell
efce778a9e [project @ 2004-11-11 23:55:23 by jmb]
Fix for redirects causing crashes

svn path=/import/netsurf/; revision=1360
2004-11-11 23:55:23 +00:00
John Mark Bell
49ce807e3c [project @ 2004-10-01 21:31:55 by jmb]
A somewhat better implementation of referrers which no longer sends the referer if the URL schemes don't match.

Things to do:
1) Preservation of referer across redirects (see comment in browser.c:284)
2) GUI templates/code for configuration of referer sending (simple on/off toggle only)
3) Make referer sending when fetching objects/stylesheets for a page pay attention to option_send_referer?
4) Handle the case where the referer is in the form of http://moo:foo@mysite.com/ (ie the login details embedded in the referer - not good).

svn path=/import/netsurf/; revision=1297
2004-10-01 21:31:55 +00:00
James Bursa
fb5082605c [project @ 2004-09-03 22:33:05 by bursa]
Fix bugs relating to aborting fetches.

svn path=/import/netsurf/; revision=1264
2004-09-03 22:33:05 +00:00
John Tytgat
7264ae50e5 [project @ 2004-08-14 15:07:19 by joty]
- Rename len() to css_len2px().
- Less compiler warnings concerning float/int implicit casts.
- More stddef.h type usuage.

svn path=/import/netsurf/; revision=1232
2004-08-14 15:07:21 +00:00
John Tytgat
402c4ca66c [project @ 2004-08-14 14:30:10 by joty]
Removed a chunk of Norcroft compiler warnings.  Re-ident some pieces.

svn path=/import/netsurf/; revision=1231
2004-08-14 14:30:12 +00:00
John Mark Bell
c9bd6fa9fc [project @ 2004-08-09 16:11:58 by jmb]
Rework the interface of the URL handing module to allow for multiple error types.
Modify save_complete URL rewriting appropriately.

svn path=/import/netsurf/; revision=1206
2004-08-09 16:11:58 +00:00
James Bursa
534b464bec [project @ 2004-07-27 15:49:28 by bursa]
Implement proxy authentication. Bring templates in line with style guide (icon sizes and fill display fields), and remove dead icons. Clean up choices dialog code. Fix persistent dialog code. Make browser choices the default pane.

svn path=/import/netsurf/; revision=1153
2004-07-27 15:49:28 +00:00
James Bursa
48130c473b [project @ 2004-07-10 10:05:16 by bursa]
Fix crash related to aborting fetches.

svn path=/import/netsurf/; revision=1067
2004-07-10 10:05:16 +00:00
John Mark Bell
ba22b4e753 [project @ 2004-07-10 02:35:30 by jmb]
Use libcurl's progress callback functionality to display fetch status.
This will update the status line once a second, more frequently requires hacking libcurl.

svn path=/import/netsurf/; revision=1066
2004-07-10 02:35:31 +00:00
James Bursa
a1d73ecd11 [project @ 2004-06-27 23:24:11 by bursa]
Rewritten download window. Now downloads direct to file. New download window gui.

svn path=/import/netsurf/; revision=1020
2004-06-27 23:24:11 +00:00
James Bursa
fdaf72417a [project @ 2004-06-22 17:37:51 by bursa]
Fix aborting of fetches.

svn path=/import/netsurf/; revision=990
2004-06-22 17:37:51 +00:00
James Bursa
d938fe135b [project @ 2004-06-10 23:55:23 by bursa]
Split fetchcache() into fetchcache() and fetchcache_go() to solve problems of callbacks being called before fetchcache() returns. Fix <style> breakage. Error handling fixes & improvements.

svn path=/import/netsurf/; revision=957
2004-06-10 23:55:23 +00:00
John Mark Bell
e6cec7dbe8 [project @ 2004-06-10 22:40:56 by jmb]
Allow configuration of SSL certificate verification

svn path=/import/netsurf/; revision=955
2004-06-10 22:40:56 +00:00
James Bursa
08177fa581 [project @ 2004-06-10 20:41:26 by bursa]
Add global content list. Better error handling in content code. Improved code documentation. Remove some obsolete functions. Implement debug window listing contents.

svn path=/import/netsurf/; revision=951
2004-06-10 20:41:26 +00:00
James Bursa
bb41604045 [project @ 2004-05-05 16:33:15 by bursa]
Fix some compiler warnings. Ignore size attribute for file inputs.

svn path=/import/netsurf/; revision=828
2004-05-05 16:33:15 +00:00
John Mark Bell
8cb321ec78 [project @ 2004-05-02 00:21:40 by jmb]
Minimal fixes to allow compilation with Norcroft

svn path=/import/netsurf/; revision=813
2004-05-02 00:21:41 +00:00
John Tytgat
49ac08e2e4 [project @ 2004-05-01 21:37:29 by joty]
fetch_curl_header() : better protection against malformed header lines;
realm data line is now properly terminated with NUL character.

svn path=/import/netsurf/; revision=810
2004-05-01 21:37:29 +00:00
John Mark Bell
29578a4fd8 [project @ 2004-04-07 19:19:31 by jmb]
Take account of file path when creating POST data.

svn path=/import/netsurf/; revision=738
2004-04-07 19:19:31 +00:00
James Bursa
c08ffc97c5 [project @ 2004-04-03 14:58:46 by bursa]
Request only gzip compression, since deflate is broken on many servers (see http://www.gzip.org/zlib/zlib_faq, 36).

svn path=/import/netsurf/; revision=712
2004-04-03 14:58:46 +00:00
James Bursa
27562bf838 [project @ 2004-04-02 13:51:13 by bursa]
Implement fetch_can_fetch().

svn path=/import/netsurf/; revision=699
2004-04-02 13:51:13 +00:00
James Bursa
697be91e3b [project @ 2004-03-28 17:18:52 by bursa]
Fix for errors with compressed content.

svn path=/import/netsurf/; revision=689
2004-03-28 17:18:52 +00:00
James Bursa
043d1e58c6 [project @ 2004-03-27 23:19:34 by bursa]
Replace in_callback with locked counter to fix crash.

svn path=/import/netsurf/; revision=683
2004-03-27 23:19:34 +00:00
James Bursa
48c8934431 [project @ 2004-03-27 00:50:58 by bursa]
Add fetch_blank_curl, break out fetch_set_options(), fetch_free(), fetch_done(), recover from errors more cleanly, enable compression.

svn path=/import/netsurf/; revision=674
2004-03-27 00:50:58 +00:00
John Mark Bell
2d42fc01f9 [project @ 2004-03-24 00:03:38 by jmb]
Improve handling of filename generation.

svn path=/import/netsurf/; revision=658
2004-03-24 00:03:38 +00:00
John Mark Bell
083d96493e [project @ 2004-03-21 23:44:53 by jmb]
Add a couple of assertions.

svn path=/import/netsurf/; revision=649
2004-03-21 23:44:53 +00:00
John Mark Bell
7f2d86b2f6 [project @ 2004-03-21 23:36:05 by jmb]
Make the filename unixified and leafnamelike

svn path=/import/netsurf/; revision=648
2004-03-21 23:36:05 +00:00
John Mark Bell
7e922c290f [project @ 2004-03-21 21:32:15 by jmb]
Fix for SparkFS causing problems with uploading zip files.
Map filetypes to mimetype properly.

svn path=/import/netsurf/; revision=646
2004-03-21 21:32:15 +00:00
John Mark Bell
3aeafecd7b [project @ 2004-03-21 20:07:14 by jmb]
<input type="file" support>
Broken in places.

svn path=/import/netsurf/; revision=645
2004-03-21 20:07:14 +00:00
James Bursa
a25c9bb1c3 [project @ 2004-03-13 20:45:00 by bursa]
Remove unescaping on redirect.

svn path=/import/netsurf/; revision=617
2004-03-13 20:45:00 +00:00
James Bursa
7d9bf053b4 [project @ 2004-03-08 00:03:58 by bursa]
Implement Accept-Language option.

svn path=/import/netsurf/; revision=591
2004-03-08 00:03:58 +00:00
James Bursa
1c85bf0429 [project @ 2004-03-02 18:02:17 by bursa]
Add new url functions and modify to use them.

svn path=/import/netsurf/; revision=578
2004-03-02 18:02:41 +00:00
James Bursa
1319ff78c8 [project @ 2004-02-13 16:09:12 by bursa]
Clean up and rewrite options code.

svn path=/import/netsurf/; revision=536
2004-02-13 16:09:12 +00:00
John Mark Bell
e8290de904 [project @ 2004-02-02 23:38:02 by jmb]
Fix issues highlighted by teoma.com

svn path=/import/netsurf/; revision=531
2004-02-02 23:38:02 +00:00
John Mark Bell
0dab93fe76 [project @ 2004-01-20 19:08:34 by jmb]
Allow toggling of POST support.
Add new toolbar icon numbers to riscos/gui.h

svn path=/import/netsurf/; revision=490
2004-01-20 19:08:34 +00:00
John Mark Bell
62245d13ec [project @ 2004-01-05 02:10:59 by jmb]
Add ability to turn off browser features in build.
This may be useful when hunting down bugs.

svn path=/import/netsurf/; revision=480
2004-01-05 02:10:59 +00:00
John Mark Bell
02915bb583 [project @ 2003-12-27 02:23:10 by jmb]
Fix a couple more warnings

svn path=/import/netsurf/; revision=457
2003-12-27 02:23:10 +00:00
James Bursa
894703b53b [project @ 2003-12-26 16:20:57 by bursa]
Enable cookies.

svn path=/import/netsurf/; revision=443
2003-12-26 16:20:57 +00:00
James Bursa
f1b59814f8 [project @ 2003-12-26 00:17:55 by bursa]
New url_join using liburi, <base href=...>.

svn path=/import/netsurf/; revision=441
2003-12-26 00:17:55 +00:00
James Bursa
9328a742f6 [project @ 2003-11-08 19:18:37 by bursa]
Fix queueing bugs.

svn path=/import/netsurf/; revision=413
2003-11-08 19:18:37 +00:00
James Bursa
b212e59a20 [project @ 2003-11-06 19:41:41 by bursa]
Mask null polls and use PollIdle when appropriate.

svn path=/import/netsurf/; revision=406
2003-11-06 19:41:41 +00:00
John Mark Bell
f07a47d252 [project @ 2003-10-26 00:09:27 by jmb]
Fix bug involving while loop exiting early.
Move the xstrdup of the realm into riscos/401login.c

svn path=/import/netsurf/; revision=389
2003-10-26 00:09:27 +00:00
John Mark Bell
ab8edd9da4 [project @ 2003-10-25 22:51:45 by jmb]
Fix bug relating to
http://www.mw-software.com/software/artworks2/aw2support.html

svn path=/import/netsurf/; revision=388
2003-10-25 22:51:45 +00:00
James Bursa
43145ba6e4 [project @ 2003-10-25 21:50:16 by bursa]
Temporary workaround for libcurl bug.

svn path=/import/netsurf/; revision=384
2003-10-25 21:50:16 +00:00
John Mark Bell
ad6185490d [project @ 2003-10-25 19:21:42 by jmb]
Turn on support for other http auth methods (other than Basic).
This is untested.

svn path=/import/netsurf/; revision=383
2003-10-25 19:21:42 +00:00
John Mark Bell
c9e188a4d1 [project @ 2003-10-25 19:20:13 by jmb]
HTTP Auth login improved (greatly).
Addresses all three issues in the previous version.

svn path=/import/netsurf/; revision=382
2003-10-25 19:20:13 +00:00
James Bursa
146011f919 [project @ 2003-10-25 16:22:11 by bursa]
Implement multipart/formdata POST.

svn path=/import/netsurf/; revision=377
2003-10-25 16:22:11 +00:00
James Bursa
28f974f00f [project @ 2003-10-25 14:13:49 by bursa]
URL encoded POST support.

svn path=/import/netsurf/; revision=375
2003-10-25 14:13:49 +00:00
John Mark Bell
caac2628a7 [project @ 2003-10-23 00:09:16 by jmb]
Enable logging into sites which require Basic Authentication
Has a couple of issues:
	1) Opens the page in the first window in the list
	2) Doesn't save the login details so you have to log in to each page.
	3) The call to ro_gui_401login_open shouldn't be there.

svn path=/import/netsurf/; revision=372
2003-10-23 00:09:17 +00:00