Fossil

History of src/http_socket.c of c24e1c278580b243
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History of file src/http_socket.c at check-in c24e1c278580b243

2025-12-21
00:49
Rename a new routine for consistent naming in the http_socket.c source file. file: [0c1acae4dd] check-in: [fa63c94422] user: drh branch: ssl-with-socket, size: 6409
2025-12-20
23:46
When handling HTTPS urls, open a socket and then upgrade the socket to use TLS. See discussion starting with [forum:/forumpost/3726ae4219|forum post 3726ae4219]. file: [93cf020060] check-in: [61b3f488a6] user: andybradford branch: ssl-with-socket, size: 6446
2025-12-19
12:17
Add the --ipv6 option to "fossil clone" to force the use of IPv6. file: [947bc98cef] check-in: [6f55dbd00b] user: drh branch: trunk, size: 6310
2025-07-23
15:58
Minor optimization: replace calls to mprintf("%s", X) with fossil_strdup(X). file: [db9603e27c] check-in: [4c3e1728e1] user: danield branch: trunk, size: 6175
2025-06-03
20:26
Fix port not being set file: [10f6347732] check-in: [15619e620b] user: js branch: morphos, size: 7296
2025-04-22
01:10
Initial incomplete port to MorphOS. Needs some manual overrides to compile and has some locking issues in SQLite. file: [c18ff81ec1] check-in: [66f279e143] user: js branch: morphos, size: 7257
2023-01-06
21:33
Do not try to resolve the IP from the hostname when syncing using ssh:// protocol. Ssh may use the provided name as an alias defined in ~/.ssh/config which may not be resolvable or even resolve to an unrelated ip. This change can potentially avoid long timeout during name resolution failure. Equivalent to [52f08008e2790a81]. file: [b8ce752283] check-in: [e5c5622d4b] user: mgagnon branch: no_ssh_sync_ip_resolve, size: 6175
2021-10-26
16:17
Make sure the g.zIpAddr is reset for each new ssh: URL. file: [620913579c] check-in: [be18690cad] user: drh branch: trunk, size: 7085
16:11
Ensure that UrlData.fossil is always dynamically allocated. Fix a harmless valgrind warnings. Improve comments on UrlData. file: [f5a27fa020] check-in: [cd5715513e] user: drh branch: trunk, size: 7042
2021-02-09
13:34
The canonical Fossil homepage is now https://fossil-scm.org/home without the "www." in the domain and with the main path at /home, not /index.html or /fossil. Update all URLs in documentation to reflect this fact. file: [f31b7e2341] check-in: [09908ab058] user: drh branch: trunk, size: 7006
2018-10-19
22:37
Now that type has changed due to [d0fa9eee56], cast back to match total variable. file: [55293f904f] check-in: [77371043a4] user: andybradford branch: trunk, size: 7010
22:12
Use a signed type to avoid an infinite loop in socket_send(); socket_receive() is already fine. file: [0b540bebf5] check-in: [d0fa9eee56] user: andybradford branch: trunk, size: 6994
2018-08-07
23:01
Fix harmless compiler warning. file: [9f816484df] check-in: [7014c2ddf1] user: mistachkin branch: trunk, size: 6993
2018-07-11
19:46
Fix the socket_receive() function so that it compiles on systems that lack the MSG_DONTWAIT macro (Windows). Such systems lose non-blocking capabilities, but they work otherwise. file: [a84161dc37] check-in: [31d274d02e] user: drh branch: smtp, size: 6936
2018-06-28
21:38
Add the smtp_send_msg() function capable of encoding and sending a complete email message. file: [e83d5f3f89] check-in: [0388860407] user: drh branch: smtp, size: 6895
17:15
The test-smtp-probe command is now working. file: [8a6fdf10fe] check-in: [9281d52a91] user: drh branch: smtp, size: 6889
15:23
Incremental check-in of initial code for client-side SMTP. Does not work. file: [d4bac78838] check-in: [20006a866c] user: drh branch: smtp, size: 6698
2018-06-27
19:15
Begin the smtp.c module. Start with a routine to locate the hostname on which to contact the SMTP server for a domain. file: [012683c506] check-in: [735af578e7] user: drh branch: smtp, size: 6657
2017-12-28
21:06
Initiate the TCP FIN on Windows before closing a socket. file: [c9dba13158] check-in: [ef44abc6db] user: drh branch: trunk, size: 6657
2016-11-04
17:28
Further magic _WIN32_WINNT changes to fix the build for mingw. file: [6d14a9c8e2] check-in: [45b7634436] user: drh branch: trunk, size: 6603
2016-04-08
11:24
Each call to socket_open() automatically closes any previously opened socket. file: [c38d7bff25] check-in: [a0dae8555a] user: drh branch: trunk, size: 6619
2015-03-26
13:35
Fix http_socket.c so that it builds on Solaris. file: [cdd5f9adf9] check-in: [f93184125d] user: drh branch: trunk, size: 6624
2015-02-08
22:26
Fix the socket_open() routine so that it returns a non-zero error code if it fails to connect. file: [49403e7633] check-in: [aee65577cb] user: drh branch: trunk, size: 6518
2015-01-27
16:21
Alternative fix for the SSH remote-host problem for which Andy Bradford supplies a patch at [52f08008e2]: Continue to provide a numeric IP address, but try to get the IPv6 address if it is available, and always include the hostname in g.zIpAddr regardless of whether or not an IP address was found. file: [f571eba5d2] check-in: [9bc7041ae7] user: drh branch: trunk, size: 6506
07:39
For SSH clients we cannot know what IP address SSH will choose when connecting to the remote IP address, so just log the URL hostname instead which is arguably better than recording the misinformation of an IP to which Fossil did not connect. (drh adds:) See alternative implementation at [9bc7041ae74d]. file: [19d254a334] check-in: [52f08008e2] user: andybradford branch: pending-review, size: 5675
2015-01-24
22:13
Enhance the "fossil sync" command to retry all of the returned values from getaddrinfo() until it finds one that actually works. That way, it will find the IPv4 version on machines that do not have an IPv6 gateway. file: [55dc2fabcf] check-in: [ae3ef4d3d9] user: drh branch: trunk, size: 6294
21:46
Add the --ipv4 option to force the use of IPv4 on "fossil clone" and "fossil sync" and so forth. file: [30a0ac7284] check-in: [317bd3cb3d] user: drh branch: trunk, size: 6276
2015-01-23
05:49
Fix build issue for MinGW due to missing 'ws2tcpip.h' functions. file: [b39665e9f5] check-in: [4c247512a8] user: mistachkin branch: trunk, size: 6256
01:58
Use IPv6 when available for "fossil sync". file: [8c94157fad] check-in: [3842742871] user: drh branch: ipv6-sync, size: 6186
2014-12-12
16:04
Reset memory in addr for good measure just to be certain nothing is left over. file: [957fcf6bde] check-in: [522cf5f66d] user: andybradford branch: trunk, size: 6259
06:30
On 302 redirects, cause addr and socket reinitialize so it has the info for the new location and not the old. This may address a bug reported on the ML by Ashwin Hirschi in which a redirect was causing Fossil to segfault, likely due to redirecting to the same site repeatedly because addr was remaining unchanged. file: [6764d44297] check-in: [6e7cb7f27a] user: andybradford branch: trunk, size: 6223
2014-07-20
13:20
Merge from trunk file: [e7abc65c4b] check-in: [c4fca467f7] user: ashish branch: ashish-ipv6, size: 7445
2014-06-26
07:40
Make format parameter in socket_set_errmsg() and ssl_set_errmsg() functions a const. file: [ce93672847] check-in: [cfb8d6604f] user: jan.nijtmans branch: trunk, size: 6208
2014-03-31
16:48
Get rid of the GLOBAL_URL() kludge. Change the global "g" variable to contain an instance of the UrlData object instead of individual fields of the UrlData object. file: [7d3cb5844c] check-in: [5fdad9bd8c] user: drh branch: trunk, size: 6203
2013-12-25
07:16
Merge from trunk file: [6ddf67d9b3] check-in: [a30d1f58d1] user: ashish branch: ashish-ipv6, size: 7431
2013-10-14
07:08
Phase 3, the TH1 http command now uses non-global URL data. This also required heavy refactoring of some other callers that use the global URL data. file: [09d140a27e] check-in: [8ce9c1af8f] user: mistachkin branch: tkt-change-hook, size: 6214
2013-10-10
02:52
Merge from 'trunk' file: [6d0a124b64] check-in: [9c3021b097] user: ashish branch: ashish-ipv6, size: 7348
2013-08-24
19:02
Make a best effort to record the IP of the remote host in rcvfrom. file: [9d44a02ecd] check-in: [5627d795c3] user: andybradford branch: ssh-test-http, size: 6131
2013-06-22
01:44
Work around a networking problem on WinXP when transferring large files. file: [f4b1e57391] check-in: [74eec78b3b] user: drh branch: trunk, size: 5549
2013-06-10
13:32
Merge all the latest trunk changes into the ipv6 branch. file: [b4de3930a5] check-in: [d5f6e08c09] user: drh branch: ipv6, size: 5835
2013-04-21
08:08
Merge with trunk - Remove reverse-proxying support which is already provided by --baseurl option. file: [5794c4fa4e] check-in: [940b0b33c9] user: ashish branch: ashish-ipv6, size: 6680
2012-12-14
11:50
include <winsock2.h> before <ws2tcpip.h> whenever needed. Thanks to Konstantin Khomoutov for reporting this. file: [168bdbca66] check-in: [0658068a23] user: jan.nijtmans branch: trunk, size: 5463
2012-11-04
12:59
Fix typos. file: [326f54adf8] check-in: [45065c5c28] user: dmitry branch: spelling, size: 5510
2012-09-21
09:27
Eliminate usage of TCHAR and the associated Win32 API macros. file: [61d4e1c764] check-in: [4abd4c5d38] user: mistachkin branch: noTCHAR, size: 5509
2012-09-05
12:55
const-qualification file: [dfc31eb996] check-in: [645f34834d] user: jan.nijtmans branch: eclipse-project, size: 5643
2012-08-29
13:57
Allow UTF-8 characters in sources. translate.exe will translate it to ASCII file: [b9965a92b2] check-in: [9f6abc5968] user: jan.nijtmans branch: msvc-broken, size: 5636
2012-08-21
11:18
In file included from /usr/x86_64-w64-mingw32/sys-root/mingw/include/ws2tcpip.h:11:0, from src/cgi.c:29: /usr/x86_64-w64-mingw32/sys-root/mingw/include/winsock2.h:15:2: warning: #warning Please include winsock2.h before windows.h src/file.c:47:0: warning: "stat" redefined /usr/x86_64-w64-mingw32/sys-root/mingw/include/sys/stat.h:258:0: note: this is the location of the previous definition In file included from /usr/x86_64-w64-mingw32/sys-root/mingw/include/ws2tcpip.h:11:0, from src/http_socket.c:35: /usr/x86_64-w64-mingw32/sys-root/mingw/include/winsock2.h:15:2: warning: #warning Please include winsock2.h before windows.h src/shell.c:67:0: warning: "popen" redefined /usr/x86_64-w64-mingw32/sys-root/mingw/include/stdio.h:503:0: note: this is the location of the previous definition src/shell.c:68:0: warning: "pclose" redefined /usr/x86_64-w64-mingw32/sys-root/mingw/include/stdio.h:504:0: note: this is the location of the previous definition file: [9ad16c2e11] check-in: [b5d69afed7] user: jan.nijtmans branch: jn-mingw-w64-compiler-warnings, size: 5637
2012-07-07
13:32
Fix the URL parser so that it is able to handle IPv6 addresses. Fixes to the IPv6 client-side code. file: [0c2b260910] check-in: [beea59873a] user: drh branch: ipv6, size: 6009
2012-07-05
21:25
Work toward getting Fossil to be able to sync over IPV6. This check-in compiles, but we do not yet have a server to test it on. file: [49883508d5] check-in: [0268e771ef] user: drh branch: ipv6, size: 5711
2012-03-29
14:54
Add vim modline everywhere file: [4b443a3c75] check-in: [a496d8e88d] user: mgagnon branch: mgagnon_fix, size: 5679
2012-01-15
18:06
Merge latest changes from trunk file: [d5890915a6] check-in: [b3130baa06] user: ashish branch: ashish-ipv6, size: 6854
2011-12-16
15:10
Reorder some #includes for OpenBSD. file: [91e3dc023c] check-in: [339a0f49d2] user: drh branch: trunk, size: 5637
2011-11-16
10:48
Clean getaddrinfo() code in src/http_socket.c incorporating suggestions from Gé Weijers Add getaddrinfo() code to src/cgi.c file: [58d56cb2ef] check-in: [c24e1c2785] user: ashish branch: ashish-ipv6, size: 6854
2011-10-16
12:53
Add initial IPv6 support code file: [a2c45f3370] check-in: [92c59f1202] user: ashish branch: ashish-ipv6, size: 6961
2011-10-01
20:50
Variable used for return value of send(2) must be signed, otherwise error conditions just result in infinite loops. file: [b954ec7a36] check-in: [5e3519873f] user: joerg branch: trunk, size: 5637
2010-11-19
22:29
Further work on getting a "commit" or "update" to continue operating after an autosync failure. The "commit" command prompts to verify that you want to continue. file: [b8dcbe3275] check-in: [0cc4875fde] user: drh branch: trunk, size: 5620
2010-08-28
06:59
This is the first check-in on the windowscompilers branch and it adds the <a href="http://www.digitalmars.com/">Digital Mars C compiler</a> The user should have dmc installed in c:\DM with zlib in c:\DM\extra\lib and c:\DM\extra\include. typing c:\DM\bin\make -f win\Makefile.dmc builds fossil.exe in dmcobj The following files were edited or added: <p>Checks if one of the windows compilers is used. If so we define _WIN32. Defining _WIN32 is normally done by<br>#include &lt;windows.h&gt;<br> However most of the time we don't use windows.h. </p> <p>Adding an other windows compiler is done by adding<br> "|| defined(__COMPILER_IDENTIFIER__)"<br> and maybe some special things in the files below. Like <pre> </pre> </p> <p>These have all __MINGW32__ replaced by _WIN32. And in some places special processing for either MINGW32 or DMC <p>In popen2 the _open_osfHandle call first parameter is cast to a long. DMC refused to compile without the cast.</p> <p>DMC complained that it didn't knew of time_t in rss.h. time.h came after rss.h. Switching the two solved it! </p> <p>added tcl code to generate Makefile.dmc. tclsh src/makemake.tcl dmc prints to stdout the makefile. As a convienience to the end-user I added the win/Makefile.dmc to the repository. There are few changeable variables in there for adjusting path, CFLAGS LIBS etc. </p> <p>These are needed because DMC and MSVC doesn't provided them. dirent.h is copied verbatim from the net. unistd.h I found on the net too, but added some defines. <p>The problem with windows it doesn't have AWK standard installed. version.c creates VERSION.h. It is a very simple C-program and doesn't do a lot of checking. </p> file: [3d682b3130] check-in: [f66f414fd3] user: renez branch: windowscompilers, size: 5622
2010-05-16
19:08
Change from GPL to the Simplified BSD License. file: [a9ca689aee] check-in: [c06edd231f] user: drh branch: clear-title, size: 5440
2009-03-30
00:31
Added: Refactor the HTTP client logic to make it much easier to add support for "file:" and "https:" URLs on push, pull, sync, and clone. file: [b09f0278f6] check-in: [737e76a69f] user: drh branch: trunk, size: 5716