Fossil

History of src/http.c of c56af61e5e40db61
Login

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

History of file src/http.c at check-in c56af61e5e40db61

2026-01-09
16:41
If the reply to an HTTP request omits the content-length, assume that the server wants us to close the connection. [forum:/forumpost/815e4320c8|Forum post 815e4320c8]. file: [22e5ffbb56] check-in: [aa7a087726] user: drh branch: trunk, size: 30783
2025-12-30
20:11
Fix "fossil sync" so that it returns non-zero if the sync fails. Add the --ping and --quiet options to "fossil sync". file: [19085b5a57] check-in: [8fa8fe8e1d] user: drh branch: trunk, size: 30983
2025-12-27
12:21
Spelling fixes in docs/comments. file: [186e41134e] check-in: [33d3bf3edb] user: km branch: trunk, size: 30286
2025-12-23
16:06
Assorted fixes of typos and grammar in code comments. No functional changes. file: [1eed66612c] check-in: [e2bdc10572] user: danield branch: trunk, size: 30290
2025-12-19
12:17
Add the --ipv6 option to "fossil clone" to force the use of IPv6. file: [bd38326724] check-in: [6f55dbd00b] user: drh branch: trunk, size: 30289
2025-10-15
20:12
The "ssh:"-style requests are eating the query parameters, somewhere. I don't know where yet. Don't use query parameter for the time being. file: [ae189b4605] check-in: [8028c868d3] user: drh branch: get-command, size: 30240
15:53
Add the subpath field to the UrlData object. If that field is non-NULL, then the http_exchange() routine will build the request header using subpath rather than path. This allows the path for ssh: and file: to be distinct from the HTTP request path. Enhance the test-httpmsg command to work with file: and ssh: URLs as long as the new --subpath option is provided. file: [1c3fbbcc5f] check-in: [9abda29734] user: drh branch: get-command, size: 30178
2025-07-25
18:47
Do not add the sync login cookie unless we know the remote supports it. It's harmless in that case but it doesn't need to be there. Rename the login cookie from the unweildy x-f-x-l (X-Fossil-Xfer-Login) to x-f-l-c (X-Fossil-Login-Card) because the former is unsightly. file: [03400bcfd7] check-in: [9789e1dce7] user: stephan branch: xfer-login-card, size: 29806
2025-07-24
05:26
Remove the now-obsolete parsing of the X-Fossil-Xfer-Login HTTP header. file: [a4ce396551] check-in: [8dbcf2acba] user: stephan branch: xfer-login-card, size: 29702
05:10
Use a Cookie, instead of a custom HTTP header and/or URL param, to send the sync login header, as suggested in [forum:9959d2d9d9be22d2 | forum post 9959d2d9d9be22d2]. This is simpler. file: [b663843e71] check-in: [756ad2f23c] user: stephan branch: xfer-login-card, size: 29916
03:16
Previous checkin should not have compiled - clean rebuild uncovered a stale dep. Re-map the fLoginCardMode to a bitmask so that it's possible to tell when multiple paths toggle that on, and which paths they were. file: [89b0e2e0f0] check-in: [780d3b2fe3] user: stephan branch: xfer-login-card, size: 30993
02:20
Doc improvements and internal API renaming for clarity. No functional changes. file: [23454fa483] check-in: [286110dec0] user: stephan branch: xfer-login-card, size: 31033
2025-07-23
23:31
Remove some xfer login process debug output. file: [3e4e933bac] check-in: [815a84cbcc] user: stephan branch: xfer-login-card, size: 30891
20:56
Account for CGI-hosted fossil instances by sending the xfer login card as a URL argument. This is somewhat inelegant but works around their inability to read HTTP headers. This version is still more verbose than it needs to be, and requires more testing for compatibility with trunk fossil versions. file: [6548d0e642] check-in: [439af9348b] user: stephan branch: xfer-login-card, size: 30939
17:39
Add the x-fossil-xfer-login header check in one additional place. With the help of the included debug output, the login problem seems to be caused by CGI (only) instances not reading the inbound HTTP headers. My attempts to make it do have, so far, only triggered HTTP 500 responses. (Edit: i'd forgotten that CGIs don't get headers. The headers are necessarily consumed by the web server to find the CGI script and populate its environment.) file: [fffa1421e3] check-in: [6c900645ea] user: stephan branch: xfer-login-card, size: 29804
2025-07-22
22:53
Add some debugging 'message' cards to help trace how the remote is handling the login. file: [ec95db5773] check-in: [21be2978af] user: stephan branch: xfer-login-card, size: 29574
18:11
Remove some dead code. Add some internal docs. Add a couple of const qualifiers to help me reason through the xfer payload buffer's lifetime. file: [ef5db2e248] check-in: [459d0cbbc7] user: stephan branch: xfer-login-card, size: 29575
17:52
Remove lots of debug output. Replace a couple of mprintf() with fossil_strdup() and a couple free() with fossil_free(). Milestone: libfossil has successfully logged in to this version of fossil. file: [94d7d8b357] check-in: [1078a123c1] user: stephan branch: xfer-login-card, size: 29645
15:12
Get sync working from both login card forms and add a temporary --login-card-header CLI flag to force it to emit the HTTP header form of the card in output requests. If all is well, this checkin should be able to push to the canonical repo, despite their differences. file: [4891650b6b] check-in: [042560df54] user: stephan branch: xfer-login-card, size: 29834
02:32
The previous checkin left me unable to push because (of course) the remote trunk doesn't know how to use the login card header. This checkin disables, via a macro toggle, the use of that header on outbound sync requests. file: [de22332a94] check-in: [cb42278d84] user: stephan branch: xfer-login-card, size: 29126
02:16
For testing purposes only, unconditionally use the X-Fossil-Xfer-Login HTTP header for sync requests, rather than add it to the payload (which seems to work okay). This is primarily so that apples-to-apples comparisons can be made in libfossil's testing, and will be reverted (or applied conditionally) once the libfossil side is working. file: [79b4e29b24] check-in: [ff942066d5] user: stephan branch: xfer-login-card, size: 29046
2025-07-21
23:45
Move the X-Fossil-Xfer-Login header check to the correct end of the connection. It is receiving these from libfossil tests but is failing to validate them, but that may well be a bug in that brand new downstream code. file: [4734632b49] check-in: [b49c9b3685] user: stephan branch: xfer-login-card, size: 28357
18:42
Replace an mprintf() with fossil_strdup(). file: [d59b3bedf8] check-in: [73a2bd06b1] user: stephan branch: xfer-login-card, size: 28483
18:40
And this time compile before committing. file: [9c87616f33] check-in: [a62ffc1922] user: stephan branch: xfer-login-card, size: 28483
18:38
Enable an /xfer login card to be delivered via the X-Fossil-Xfer-Login HTTP header, which is expected to be in the same format as the sync protocol's login card. The purpose of this is to simplify generation of the login card from non-fossil(1) clients, namely libfossil. This is untested until libfossil can generate such cards (it's just missing a bit of glue for that). file: [92233069ca] check-in: [cfddded40e] user: stephan branch: xfer-login-card, size: 28486
2025-05-26
14:12
Fix several minor typos in HTTP error messages and HTTP test commands. Remove the unavailable --debug option from the test-http command help screen. file: [5a4752d338] check-in: [9cabc138da] user: florian branch: trunk, size: 28363
2025-05-07
13:23
Adjust comment to http_build_login_card() to include clarification regarding the source of randomness in NONCE for the login card. No functional changes. file: [61f393a899] check-in: [ea40cbb0c0] user: andybradford branch: trunk, size: 28363
2025-03-21
14:15
Fix a bug that preventing a redirect on sync from remembering the new URL. [forum:/forumpost/ea4b2ec3fe577e79|Forum post ea4b2ec3]. file: [67530619f1] check-in: [754e2c1b6e] user: drh branch: trunk, size: 28288
13:50
Fix the SSL transport so that it honors the --ipv4 flag. See [forum:/forumpost/ea4b2ec3fe577e79|forum post ea4b2ec3f]. To facilitate testing, add the --ipv4 flag to the test-httpmsg command and report the IP-address when the -v flag is present. file: [1727b7f76e] check-in: [136dbe9ce0] user: drh branch: trunk, size: 28135
2024-11-13
07:20
Amend the previous commit not to break (test) builds with SSL/TLS disabled. file: [23f2acacf9] check-in: [aa0b696ea3] user: florian branch: trunk, size: 28002
2024-11-04
12:12
Add the --no-cert-verify option to the test-httpmsg command. file: [6bdea07494] check-in: [5a6fd8820c] user: drh branch: httpmsg-debug, size: 27962
2024-10-13
22:38
When an initial HTTP request fails with error code "400 Bad Request" when using NL-only line endings, retry using CRLF to see if the problem is a web server that does not follow RFC-2616 section 19.3 paragraph 3. <p> Follow-up: Too many incompatible systems discovered. And too much push-back. The revolution is over. So sad.... file: [e60bbb61c6] check-in: [537cc60b5f] user: drh branch: omit-cr, size: 28669
2024-10-12
12:03
Emit only \n, not \r\n, even in places where protocols technically require a full \r\n. Provide a compile-time option -DSEND_CR=1 that includes the CRs when necessary. file: [cb8d87440c] check-in: [0dcce257b0] user: drh branch: omit-cr, size: 27825
2024-08-27
11:06
Move the file-specific definitions of the isatty() and fileno() macros into util.c's fossil_isatty() and fossil_fileno() in prep for an upcoming change which needs isatty(). file: [3f1e118b64] check-in: [898a70ce82] user: stephan branch: trunk, size: 27811
2024-04-21
15:37
Simplify parsing of the Connection: header in HTTP replies. file: [88ee80fc18] check-in: [77f25829d2] user: drh branch: connection-http-header, size: 27899
06:15
Only accept commas as separators for multiple values in "Connection:" HTTP headers, and ignore any white space surrounding (but not embedded into) values. The previous method would fall for (fictional) HTTP header values containing spaces, like "Connection: don't close", and recognize a value of "close". file: [9101df2d39] check-in: [6173fbf526] user: florian branch: connection-http-header, size: 28348
2024-04-20
14:42
Fix parsing of "Connection:" HTTP headers with multiple values. file: [d2f91adc1c] check-in: [7ac3db68d5] user: florian branch: connection-http-header, size: 28227
2024-04-17
14:02
Output a warning if a client sync or clone gets back a keep-alive HTTP reply that lacks a content-length header. file: [8bbee93f3a] check-in: [f4ffefe708] user: drh branch: trunk, size: 27921
13:27
Only process HTTP replies that lack a Content-Length header if the connection is set to be closed. Suggested by [https://bz.apache.org/bugzilla/show_bug.cgi?id=68905]. file: [de26ee380c] check-in: [71919ad1b5] user: drh branch: trunk, size: 27788
12:49
Fix ssh: clones, broken by the previous check-in. file: [aec38a4445] check-in: [de647e8652] user: drh branch: content-length-errors, size: 27766
12:18
Arrange for the HTTP reply parser to be able to deal with a missing Content-Length header. Add the --xverbose option to the "fossil clone" command. file: [85217a1079] check-in: [dfefd069b6] user: drh branch: content-length-errors, size: 27721
2024-04-16
22:55
Attempt to provide more useful error messages when an intermediate server (such as Apache) does something wrong and messes up an HTTP request. file: [e630c4fee2] check-in: [131ba0fa1b] user: drh branch: content-length-errors, size: 26906
2024-02-07
15:11
Fix the "test-ssh-needs-path" command so that it works even if run from outside of an open check-out. file: [98ab94b391] check-in: [46e7855a4e] user: drh branch: trunk, size: 26200
12:16
For the "fossil ui REMOTE:path" command, initially omit the PATH= prefix but add it in if the initial attempt fails to find a fossil executable. file: [f354090d65] check-in: [ed6495baa6] user: drh branch: trunk, size: 26084
2024-02-06
23:45
Detailed header comment on the ssh_add_path_argument() function explaining what this PATH= business is all about, for future reference. file: [3d84a581e2] check-in: [ac52d12e66] user: drh branch: trunk, size: 26084
23:18
Fix the "fossil patch push" and "fossil patch pull" commands so that, like "fossil sync", they initial try to run ssh without the PATH= argument, but add in the PATH= argument if the initial attempt does not work. file: [73d317580b] check-in: [eb135ef204] user: drh branch: trunk, size: 23913
15:32
Merge commonly used operations associated with the PATH= of a remote fossil run using ssh into subroutines, so that they do not get out of sync with each other. file: [8e70aa14e8] check-in: [efd3a5ec07] user: drh branch: trunk, size: 22814
15:03
Print a diagnostic message if the first attempt to connect to a remote using SSH fails and a retry with or without PATH= is about to commence. See [forum:/forumpost/9584923cf6|forum post 9584923cf6] for an explanation of why this is important. file: [a637599164] check-in: [f80041ebc5] user: drh branch: trunk, size: 22119
13:57
Stderr of ssh subcommand goes is read by the main process now, instead of going to the console. Improved error messages following failure on ssh: sync. file: [781842c8ff] check-in: [fb156a12bf] user: drh branch: trunk, size: 22078
12:01
Always adjust the use-path-for-ssh setting when an ssh retry succeeds, even if the REMEMBER flag is not set. And store the setting locally instead of globally. file: [ae3e4b6d34] check-in: [857495ec92] user: drh branch: trunk, size: 21900
2024-02-05
22:00
Omit the PATH= prefix on the ssh fossil syncs unless the first attempt to contact the remote fails. Change the prefix to include common directories for Fossil on Macs. Remember whether or not the PATH= prefix is needed based on hostname. See the discussion at [forum:/forumpost/4903cb4b691af7ce|forum thread 4903cb4b691af7ce]. file: [5c06c6778e] check-in: [d07689d11d] user: drh branch: ssh-path-prefix, size: 21935
2024-02-02
22:18
Remove trailing whitespace from non-external C files. file: [3fa90199ad] check-in: [7db0a2d910] user: danield branch: fix-overlength-lines, size: 20276
2023-04-10
08:46
Do not save the password for syncing operations if the user denied the save password prompt or if the FOSSIL_SECURITY_LEVEL environment variable is ≥1. file: [bf1ea5de5a] check-in: [2916ec970b] user: florian branch: trunk, size: 20283
2023-01-09
13:06
Further consistency improvements in docs for various commands. file: [ac29fd96e6] check-in: [2512d2d472] user: km branch: trunk, size: 20245
2022-12-30
20:54
Security enhancement: Do not store the passwords for remote URLs directly, but instead store the sha1_shared_secret() encoding of those passwords. It is the SHA1 encoding that gets transmitted to the server anyhow, so we might as well just store that. The SHA1 encoding cannot be used to log in. The password is still protected using obscure() even though it is now a SHA1 hash. file: [f33e409bc6] check-in: [41ba6ea7db] user: drh branch: trunk, size: 20248
2022-11-13
16:26
Apply fixes to all web views to pass WCAG 2.1 tests performed by "axe DevTools" browser extension. Most fixes related to screen reader compatibility, like making sure that form elements have labels. Some color changes to improve contrast on Default skin. Made more HTML5 compliant. Minor improvement to select combo boxes for UX. Improved Search form UX. Two minor bug fixes for malformed HTML. Fixed help pages to resolve issues with non-compliant HTML being generated. Mostly documented at https://fossil-scm.org/forum/forumpost/aafb17a981df4166 file: [33289918ad] check-in: [1f231db380] user: ericwikman branch: wcag-2.1, size: 19420
2022-02-18
22:05
Do not try to uncompress generic HTTP content when the NOCOMPRESS flag is set. file: [1c4ead0bd1] check-in: [66ef906118] user: drh branch: trunk, size: 19423
2022-01-20
21:43
The test-httpmsg command does not need to open a repository. file: [e53bbeeae9] check-in: [b145f19df5] user: drh branch: trunk, size: 19364
2021-12-22
20:40
Add documentation for the --transport-command options on the various sync commands. Improvements to the documentation of the sync protocol. file: [284701477c] check-in: [505d9d48eb] user: drh branch: trunk, size: 19433
16:41
The --transport-command now deals correctly with passwords in the URL. file: [a3f29a5cb4] check-in: [f485a164af] user: drh branch: trunk, size: 19434
15:46
Add the --transport-command option to "fossil sync" and similar. The option is currently undocumented. file: [1ef6802a8a] check-in: [3cd412eb5c] user: drh branch: trunk, size: 19367
14:03
Enhance the test-httpmsg command with the new --xfer option and with an optional extra argument to specify the output file. file: [0861421b6d] check-in: [450cfbbfac] user: drh branch: trunk, size: 18009
2020-08-20
13:18
Version 2.10.2 file: [3d31b9c8fa] check-in: [12d2ad00de] user: drh branch: branch-2.10, size: 17305
2020-08-17
09:16
Prohibit redirects from HTTP or HTTPS over to SSH or FILE. Fix for ticket [61613b0a9cf843b6]. file: [2a94ef8304] check-in: [253dbd15e2] user: drh branch: sec2020, size: 17308
2020-04-05
23:45
Match the COMMAND and WEBPAGE names with _cmd and _page functions; [https://fossil-scm.org/forum/forumpost/045bffda68|forumpost/045bffda68] file: [1e2a90a025] check-in: [06afb7022f] user: ashepilko branch: api-cleanup, size: 16991
2020-03-20
04:02
Rename test function to match the test command name file: [b9938ada40] check-in: [77be1777e1] user: andygoth branch: trunk, size: 16995
2019-08-07
19:10
Have the test-httpmsg command try to open the repository database in case that repository database contains TLS certificate exceptions. file: [a25166d6ae] check-in: [bf25835f6b] user: drh branch: trunk, size: 16992
2019-08-02
00:10
The test-httpmsg command now sends the payload uncompressed unless the new --compress option is used. file: [5c5b14244a] check-in: [c31ff76fe9] user: drh branch: trunk, size: 16923
2019-07-23
19:17
Make sure an HTTP request always has at least a single "/" in the pathname. file: [4863f2d371] check-in: [35d609a0ba] user: drh branch: trunk, size: 16661
16:16
Do not follow a redirect from HTTPS to HTTP. file: [ccfb079aa8] check-in: [c19f782e54] user: drh branch: trunk, size: 16615
16:10
Add the test-httpmsg command. file: [496a0c8552] check-in: [1ad56ceeaf] user: drh branch: trunk, size: 16463
13:16
Use HTTP/1.1 for the sync protocol, not HTTP/1.0. file: [86e80044a0] check-in: [c51b61ff1b] user: drh branch: trunk, size: 13303
2019-04-18
00:00
Only remember a new URL for permanent redirects. file: [b92f1c1da4] check-in: [b36783e89b] user: mistachkin branch: httpRedir, size: 13303
2019-04-17
18:32
If a "fossil sync" gets a 301 or 302 redirect, then change the saved remote URL to the redirected URL. file: [bfaa5500d4] check-in: [e0026b6e46] user: drh branch: trunk, size: 13212
2019-04-06
19:03
Sync and Clone HTTP requests omit the extra /xfer path element from the end. This should work fine with all versions of Fossil server published since 2010, but might require that the /xfer path element be added manually to the URL for server instances that predate check-in [94bb313444b0165e]. file: [3152cb4c9d] check-in: [19c60b7fc9] user: drh branch: trunk, size: 13190
2017-06-06
17:49
Do not double-prompt for HttpAuth passwords. file: [7de3f16908] check-in: [f423b10f79] user: drh branch: trunk, size: 13199
2015-05-07
19:50
Fix a potential use-after-free problem. file: [5d5c19958b] check-in: [df12c1b053] user: drh branch: trunk, size: 13199
2015-01-28
09:24
Minor compiler warning in shell.c (already fixed in SQLite). "char const" -> "const char" for consistancy. file: [4045dd21bd] check-in: [5330d107b2] user: jan.nijtmans branch: trunk, size: 13199
2015-01-10
02:54
Abort clone if we don't get the full payload until we have a better way to handle partial clones. file: [5dc3ca7f80] check-in: [e1893dc6ab] user: andybradford branch: trunk, size: 13207
2014-12-20
21:06
Improve diagnostic output for HTTP redirects. file: [7fe8a2731d] check-in: [a1e256cc83] user: mistachkin branch: trunk, size: 12996
19:26
Handle 301 redirect the same as 302 redirect. file: [93e8175024] check-in: [2678d87d6a] user: andybradford branch: trunk, size: 12977
2014-12-16
02:37
Improvements to HTTP redirect on sync. file: [7d19b4cc02] check-in: [3a00b612d4] user: drh branch: trunk, size: 12921
2014-12-12
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: [b670bab6a0] check-in: [6e7cb7f27a] user: andybradford branch: trunk, size: 12921
2014-10-20
15:01
Add a custom static analysis program that verifies the arguments to printf-style varargs routines used in Fossil. Adjust the source code to be more robust for printf format errors and to fix a few minor problems found by the static checker. file: [2bdf374282] check-in: [0a7e326fa4] user: drh branch: compile-time-print-checking, size: 12880
2014-09-21
19:40
typos file: [8fef56c0b4] check-in: [b2a4b66f4b] user: jan.nijtmans branch: trunk, size: 12868
2014-05-05
03:54
Don't exit fatally during http_exchange, but return an error so partial sync can also be handled on network errors. file: [061752d44c] check-in: [1317331eed] user: andybradford branch: per-round-trip-commit, size: 12868
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: [9a997856a5] check-in: [5fdad9bd8c] user: drh branch: trunk, size: 12775
2014-03-16
09:06
Added missing int return. Reported on ML. file: [e30d1c45c6] check-in: [d6bd38fa5c] user: stephan branch: trunk, size: 12824
2014-02-11
03:58
Only prompt to use Fossil username/password for Basic Authorization if they are available. file: [21860054ee] check-in: [9223f0226c] user: andybradford branch: http-auth, size: 12822
2014-02-05
08:23
This looks like a duplicate commit of [cf471cbb3f6f] file: [97e0ab8b27] check-in: [09634aee60] user: andybradford branch: mistake, size: 12839
06:35
Simplify code and no longer rely on MAX_REDIRECTS because 20 password prompts are too many. file: [a57c7b96ec] check-in: [9493a9c763] user: andybradford branch: http-auth, size: 12735
2014-02-04
01:53
Display the name of the server requesting HTTP Authorization to clarify interaction. file: [0f74febdc6] check-in: [d581ef0057] user: andybradford branch: http-auth, size: 13139
2014-02-03
08:27
Use function that will prompt twice for sanity check. file: [f323539f39] check-in: [6289a97e40] user: andybradford branch: http-auth, size: 13137
07:59
Musn't forget about autosync commands that also need the Basic Authorization. file: [c55d09a9cb] check-in: [06bff8c629] user: andybradford branch: http-auth, size: 13001
07:09
Remove redundant code. file: [e822f93186] check-in: [3afd0289f3] user: andybradford branch: http-auth, size: 13020
07:07
Correct altered comment. Sneaky vi and J joining lines without my knowledge! file: [02fef6197d] check-in: [e38bfdae85] user: andybradford branch: http-auth, size: 13061
07:03
Don't send Basic Authorization except after prompting user. This is done by detecting 401 Authorization Required. It also allows the HTTP Authorization credentials to be different from the Fossil user which means the integrity of the Fossil password can be maintained if so desired. file: [d2ff92ba98] check-in: [c61554976d] user: andybradford branch: http-auth, size: 13061
2014-02-01
23:39
Handle --once preference and prevent sending HTTP Authorization when the URL is named on the command line. file: [11ea7e242f] check-in: [2600f59f2d] user: andybradford branch: http-auth, size: 11091
22:06
Only automatically provide Authorization if the URL is HTTPS. User can express preference to use Authorization over unencrypted HTTP via the --httpauth command line option. file: [54c80bed2a] check-in: [906cfae444] user: andybradford branch: http-auth, size: 11129
05:40
This does not need to be globally scoped. file: [50a6aa8c68] check-in: [6315fd8a3d] user: andybradford branch: http-auth, size: 10889
05:02
Detect authorization looping and exit fatally when limit exceeded. file: [b640b04ec3] check-in: [08d487ed73] user: andybradford branch: http-auth, size: 10807
04:43
Automatically detect HTTP 401 status and resend with Authorization. file: [b8413f0ee1] check-in: [fcaa8ea99a] user: andybradford branch: http-auth, size: 10702
2014-01-29
06:45
Make HTTP authorization a command line option. Choice will be stored in database until another URL change happens. This could potentially break those who currently rely on the special # character in the password. file: [001ad31d15] check-in: [e747041a72] user: andybradford branch: http-auth, size: 10599
2013-12-13
21:46
Unify use of the user-agent string. file: [2195ed5115] check-in: [55c91af5ad] user: mistachkin branch: tkt-change-hook, size: 10791
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: [bdd1511fae] check-in: [8ce9c1af8f] user: mistachkin branch: tkt-change-hook, size: 10860
2013-09-07
21:21
Separate SSH transport changes from shared account features to simplify integration. file: [270544739e] check-in: [915c79cb4f] user: andybradford branch: ssh-transport-changes, size: 10722
2013-08-17
23:05
Change SSH transport to use a single SSH connection if client/server willing. Add client header so server can detect when to use new mode. Also improve backwards compatibility for older SSH clients by responding to probes. file: [9f5e11a265] check-in: [f0bb3c9b5a] user: andybradford branch: ssh-test-http, size: 10756
2013-08-10
21:31
Make it possible to override global setting from command line. Improve sync output when test-http is in use. file: [7c004d1747] check-in: [3c479fb95b] user: andybradford branch: ssh-test-http, size: 10224
2013-08-09
07:56
Correct typo that resulted in space being on the wrong side of the word. file: [029db8d01c] check-in: [738b505362] user: andybradford branch: ssh-test-http, size: 10225
07:49
Fix logic so ignoring login requirement only affects ssh:// URLs. file: [ca00b08d19] check-in: [9284bfb157] user: andybradford branch: ssh-test-http, size: 10225
07:29
Reimplement the default test-http behavior while retaining the ability to use http to take advantage of Fossil capabilities with SSH URLs. file: [1bfee81951] check-in: [7c9347f9c7] user: andybradford branch: ssh-test-http, size: 10207
2013-07-26
06:40
Only setup Fossil user if URL is SSH. This is done to avoid problems when cloning a fossil that has SSH settings using into a file:// URL. file: [d662fa40ad] check-in: [1ebba56f2a] user: amb branch: ssh-shared-account, size: 10176
2013-07-20
08:40
Alternative approach to allow multiple SSH users to share the same SSH account while maintaining separate Fossil identities. file: [60ae1acb88] check-in: [e3510cef23] user: amb branch: ssh-shared-account, size: 10206
2013-07-16
05:47
Remove old SSH transport code and spawn remote fossil http as remote SSH command instead. Also make it possible to configure SSH command prior to cloning. Change remote fossil command to be configurable (really this should probably be simply a matter of fixing PATH on remote end). file: [2e873af38b] check-in: [c38ff36ddf] user: amb branch: ssh-transport-changes, size: 10120
2013-07-10
21:33
another patch version for ssh improvement from Andy Bradford. file: [52d54a5254] check-in: [a8c37c2c48] user: mgagnon branch: andy_bradford_ssh_imporvement_patch_2, size: 10211
2013-02-21
03:51
Improved handling for remote repository passwords: When prompting for the password, also ask the user whether or not to remember the password, as browsers typically do for their password cache. file: [e9f82fa14d] check-in: [6d6740dcca] user: drh branch: trunk, size: 10190
2013-02-01
12:33
Fix out-of-order variable declaration (VC6 cannot handle that). Move MAX_REDIRECTS definition to xfer.c, so it can be converted to a fossil setting later. file: [ac97cee94c] check-in: [fe56e5aa4f] user: jan.nijtmans branch: trunk, size: 10194
07:01
Limit the number of HTTP redirects that any http_exchange() call will follow to 20 (the limit used by most browsers). Previously, a misconfigured server or incorrect URL could cause Fossil to follow an endless trail of redirects without user intervention. file: [e93ee24b65] check-in: [13ffb9b4d1] user: joel branch: trunk, size: 10720
2012-08-29
13:57
Allow UTF-8 characters in sources. translate.exe will translate it to ASCII file: [06b395634b] check-in: [9f6abc5968] user: jan.nijtmans branch: msvc-broken, size: 10073
2012-03-29
14:54
Add vim modline everywhere file: [cdf0b6f4ae] check-in: [a496d8e88d] user: mgagnon branch: mgagnon_fix, size: 10116
2012-01-20
17:32
The HTTP trace files need to be opened in binary mode. file: [aabc48a43f] check-in: [7611406fd7] user: mistachkin branch: clientSyncLeakFix, size: 10074
17:16
Revise the order of error messages so that simple HTTP timeout produces a better diagnostic. file: [03882b291a] check-in: [dd71069bfe] user: mistachkin branch: clientSyncLeakFix, size: 10072
2011-11-26
15:09
Further refinement of the robot/human discriminator. file: [d3f1c17168] check-in: [4fdb63d690] user: drh branch: trunk, size: 10072
2011-10-15
12:30
Fix clang static analyzer warnings about deref null pointers and undefined values. There are still lots of dead code warnings, but those are harmless. file: [5d9dca28f0] check-in: [630691456b] user: drh branch: trunk, size: 10052
2011-09-07
03:51
begin work on ticket [bc0d0f5642eaf]: track success of (network) write operations and start bubbling that status up. To make it up to ultimately exit(EXIT_FAILURE) on errors, mkindex will need to be updated, too, as well as the signature from command implementing functions need to return int instead of void at some point. More to come. file: [cd61de0c5a] check-in: [a67e2683ed] user: martin.weber branch: msw-hack, size: 10094
2011-06-18
16:50
Add a version number that is increased by one on each release. Make the initial version number 1.18 since there have been 17 prior releases. file: [95d6f825b8] check-in: [e0303181a5] user: drh branch: trunk, size: 10052
2011-05-27
12:03
Do not use strcmp() for comparison since the sort order can vary by locale. Use fossil_strcmp() instead. Ticket [3f0216560679fd41]. file: [ebc84ad16a] check-in: [32ad9a1584] user: drh branch: trunk, size: 10010
2011-05-13
14:01
Use \r\n after Proxy-Authorization in HTTP headers. Ticket [da3fef0b21c37d] file: [6894731605] check-in: [1b823e1276] user: drh branch: trunk, size: 9996
2011-05-03
13:37
Enable Basic Authorization during sync operations by prepending a single "#" to the password. file: [98952fddc5] check-in: [c1506adbf7] user: drh branch: trunk, size: 9994
2011-04-08
17:08
Begin adding code to implement "login groups" which will (we hope) ultimately lead to a single sign-on capability. file: [194a26afe0] check-in: [eec32b99dd] user: drh branch: login-groups, size: 9774
2011-04-04
01:56
ws change to capture chmod +x change file: [d05902cfe8] check-in: [5a587ba570] user: bharder branch: betterExeHandling, size: 9772
2010-12-21
15:28
Change the --httptrace option to store both the request and the reply in separate text files. Nothing is sent to stderr any more. file: [458743aa8c] check-in: [abe892304a] user: drh branch: trunk, size: 9771
2010-12-09
13:56
Use the built-in SQLite caseless string comparison functions instead of the C-library strcasecmp(). Accept mime-type application/x-fossil-uncompressed and avoid decompression when seen. file: [74377aa0a4] check-in: [0b6c414c6f] user: drh branch: trunk, size: 9835
2010-11-19
19:48
Work toward getting and "update" or "commit" to continue even after an auto-sync failure. file: [729dc5ae56] check-in: [9286aaf778] user: drh branch: trunk, size: 9418
2010-11-06
14:04
Fix the sync logic so that it is able to clone against the canonical fossil repository with its implied redirect. file: [f92a71cd6a] check-in: [a921be7b51] user: drh branch: trunk, size: 9404
2010-10-27
16:06
New higher-performance and backwards-compatible clone logic. file: [f230668359] check-in: [5ba4439b31] user: drh branch: experimental, size: 9363
2010-10-14
19:14
Remove all use of ctypes.h in order to avoid compiler warnings and other problems associated with changing locales. file: [bd4d263547] check-in: [2fac809165] user: drh branch: trunk, size: 9360
2010-10-08
10:59
Obscure the text of the remote-url password so that it is not easily visible using the sqlite3 CLI. file: [f2370ab53c] check-in: [cfbbad3d48] user: drh branch: trunk, size: 9346
2010-08-26
12:10
Remove dead code from cgi.c. Attempt better error handling. file: [1d261b5e94] check-in: [79294bb81b] user: drh branch: experimental, size: 9337
11:27
Fix buffering issues with ssh://. The ssh:// sync method now works with older, unmodified servers. Added the "?fossil=exe" option to URL processing. file: [74a82ab271] check-in: [af97726337] user: drh branch: experimental, size: 8837
2010-08-25
14:03
Initial code to implement synchronization via ssh. file: [c8aaaa45da] check-in: [b19f25fe87] user: drh branch: experimental, size: 8894
2010-05-16
19:08
Change from GPL to the Simplified BSD License. file: [c37fb0c25a] check-in: [c06edd231f] user: drh branch: clear-title, size: 8767
2010-04-22
15:48
Infrastructure changes that will allow the client-side sync to be run from a web interface - the status messages now go to CGI output if the sync is run from a web page. This is a partial implementation of the "SyncNow" button. The button itself has not yet been added. file: [4f0d2d8fa0] check-in: [c56af61e5e] user: drh branch: trunk, size: 9043
2010-03-30
01:22
The sync, clone, push, and pull commands process 302 redirects. file: [aa1608b63d] check-in: [84439e9dc7] user: drh branch: trunk, size: 8775
2010-01-24
17:55
Fixes to the login processing for "clone". file: [4288b782a6] check-in: [c4c231069e] user: drh branch: trunk, size: 8168
2010-01-21
20:28
Cleanup the last-sync-url password handling. Automatically prompt for a new password if a sync login card fails. file: [e0ef891efb] check-in: [05380c5f60] user: drh branch: experimental, size: 8118
18:13
Factor the sync password out of the last-sync-url configuration setting. Store the password separately. Prompt the user for the password if it is missing. file: [eca61c4bbe] check-in: [59002d5e35] user: drh branch: experimental, size: 8259
2010-01-10
20:56
Change the hash algorithm for passwords so that USER.PW field stores a SHA1 hash of the project-code, user login, and user password, rather than just a hash of the user password. That way, the if two users select the same password, or if the one user selects the same password for multiple projects, the password hashes are still different. file: [26eca6baf0] check-in: [4b58a7b838] user: drh branch: experimental, size: 8297
2010-01-09
22:03
Store passwords in USER.PW as either cleartext (as is done in legacy) or as the SHA1 hash of the password. When changing a password or adding a new user, always use the SHA1 hash password. file: [28563ad6d5] check-in: [cfe33dcf92] user: drh branch: experimental, size: 8278
2009-11-11
14:59
Better error messages when "sync" fails due to server problems. Ticket [bfb8427cdd5] file: [2e97d8ac83] check-in: [0690aa18a4] user: drh branch: trunk, size: 7680
2009-10-11
21:31
Panic on bad server responses. Ticket [bfb8427cdd]. file: [ae110e8e86] check-in: [21a2a18145] user: dmitry branch: trunk, size: 7508
2009-10-05
14:29
Sync client uses only HTTP/1.0 in order to avoid having to support chunked encoding. file: [488f99c0c0] check-in: [6842999f82] user: drh branch: trunk, size: 7481
2009-09-12
21:53
Update the proxy handler so that it supports basic authorization. file: [2787a16cdc] check-in: [9e274a2e7b] user: drh branch: trunk, size: 7481
2009-09-10
14:07
Support usernames containing spaces for the xfer protocol. Ticket [71c9b46198c04]. file: [3ced5594d2] check-in: [ee47021f51] user: drh branch: trunk, size: 7384
2009-04-24
18:40
There is some bug in the new HTTP transport layer. The easiest solution is to close the TCP connection after each round trip, which is what this check-in does. file: [15b4647138] check-in: [767ae79c3d] user: drh branch: trunk, size: 7384
2009-03-30
01:12
Add new "transport_flip()" and "transport_rewind()" methods. These are no-ops for HTTP, but might be useful for FILE and maybe even HTTPS. file: [14fbdbab26] check-in: [63ef585508] user: drh branch: trunk, size: 7140
00:31
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: [de0b4f29e0] check-in: [737e76a69f] user: drh branch: trunk, size: 7087
2009-03-29
11:41
If no userid is specified in the URL then the client omits the login card from its request. file: [c7f9d7fa7d] check-in: [09d6a6eb16] user: drh branch: experimental, size: 15061
2009-03-27
14:32
Infrastructure in place on the client side to encrypt sync traffic. This is mostly untested so far because we do not yet have a server that understands encrypted traffic. file: [2a16b7f520] check-in: [9a23c348b1] user: drh branch: experimental, size: 15158
2009-03-26
15:32
Incremental changes toward encrypting sync traffic. The changes are incomplete, but all legacy functionality appears to still works. file: [a7c94bef96] check-in: [5468ec7c5e] user: drh branch: experimental, size: 13228
2009-01-13
18:43
Add code to understand the "https://" prefix on server URLs. Any attempt to use https gives an error at this point, however. This is a work in progress. file: [099ac83ebe] check-in: [797d680ef5] user: drh branch: trunk, size: 12140
2008-11-27
13:50
On windows, a recv() call fails if the return value is less than or equal to zero. Ticket [66cbcd56a229f33af6b9a6329a7] file: [79044c34de] check-in: [c12e5b102e] user: drh branch: trunk, size: 12065
2008-07-26
16:51
Add a "User-Agent" header to the HTTP traffic generated by fossil. The user-agent string is "Fossil/$UUID". file: [68bb1e0b00] check-in: [31824fbf91] user: dan branch: trunk, size: 12064
2008-05-05
19:08
Fix the HOST: header to use the original URL, not the proxy URL. file: [6ef99f841e] check-in: [1dbf332352] user: drh branch: trunk, size: 11995
2008-02-09
00:11
Issue a warning after a commit if the commit causes a fork. file: [19e3e65418] check-in: [49b59bc559] user: drh branch: trunk, size: 12005
2007-09-25
21:21
Fixed many uninitialized variable warnings and some potential bug found via -Wall -Werror on gcc. file: [1a73d6f088] check-in: [e63a9fd9d0] user: jnc branch: trunk, size: 12005
2007-09-22
18:34
Socket operations now functional in Win32 port. Added quotes around the filename portion of the command to edit thus working of windows in paths where the temp directory contains spaces. Added -all flag to clean command. If not specified each file is prompted for before removing. file: [54410d4f2b] check-in: [8372cc0b81] user: jnc branch: trunk, size: 11979
06:47
Win32 port now functional except network operations. This commit was done on windows :-). See win32.txt for status of all commands. No networking commands are functional yet. All path operations are now functioning. file: [02357907c7] check-in: [c7278fd013] user: jnc branch: trunk, size: 8462
2007-09-21
21:53
Win32 port: compiles, all tests pass but many functions fail due to path separators. Incomplete. Path fixes to come next file: [02b60e1f62] check-in: [83c876b447] user: jnc branch: trunk, size: 8153
2007-09-12
02:25
The nonce of a login card in the sync protocol is now the SHA1 hash of the remainder of the sync message. The signature is the SHA1 hash of the concatenation of the nonce and the users password. file: [43986095c4] check-in: [776753118f] user: drh branch: trunk, size: 8040
2007-08-01
13:50
Client must ignore SIGPIPE when writting to the HTTP socket. file: [3357e23c47] check-in: [0238e54ff3] user: drh branch: trunk, size: 8058
09:04
Populate the ipaddr column of the rcvfrom table when a file is received from a remote source (push/pull/sync). file: [e887c92c4d] check-in: [36edf3fd5c] user: dan branch: trunk, size: 8010
2007-07-30
18:57
Send the HOST header parameter with /xfer requests. file: [23446a0581] check-in: [211c476d23] user: drh branch: trunk, size: 7751
18:38
Fix a bug in the /xfer login logic. file: [2375258986] check-in: [bfe6e64f94] user: drh branch: trunk, size: 7688
16:35
Only request the password one time on a push or pull. file: [93a1f90e4d] check-in: [3a25b68390] user: drh branch: trunk, size: 7603
14:28
Use POST instead of GET for the /xfer method. Other bug fixes in the URL parser. file: [a8e6ad7f13] check-in: [e621b6dbe3] user: drh branch: trunk, size: 7604
2007-07-28
07:09
When accessing a remote repository, if there is a username/password specified as part of the URI, use these to login. file: [d56d77ab24] check-in: [3dcaed8d86] user: dan branch: trunk, size: 7794
2007-07-21
14:10
Added: Initial check-in of m1 sources. file: [3b83a20834] check-in: [dbda8d6ce9] user: drh branch: trunk, size: 7137