Fossil Forum
Post: openssl 4
reports a build failure when using openssl 4. The fix is very simple: use constructs available since before openssl 2, instead of direct structure accesses.
$ fossil diff --context 1
Index: src/http_ssl.c
==================================================================
--- src/http_ssl.c
+++ src/http_ssl.c
@@ -224,3 +224,3 @@
char *pr = res;
- const char *pt = (char *)asn1_time->data;
+ const char *pt = (char *)ASN1_STRING_get0_data(asn1_time);
/* 0123456789 1234
@@ -228,3 +228,3 @@
** GeneralizedTime: YYYYMMDDHHMMSSZ */
- if( asn1_time->length < 15 ){
+ if( ASN1_STRING_length(asn1_time) < 15 ){
/* UTCTime, fill out century digits */
The fix is very simple: use constructs available since before openssl 2, instead of direct structure accesses.
That was patched on 2025-12-05.
Excellent. I'll remove the debian patch when 2.28 comes out.
?? Fossil 2.28 has been out since March. We’re well into the development of 2.29 now. Z
I even used a hypothetical future Debian package version 1:2.29-1 to demonstrate automated versioning in my custom Debian packaging script. I've thought it was kind of odd Debian hadn't updated Fossil to 2.28 in sid yet, but they're also stuck on an old SQLite for some reason too.
Because https://fossil-scm.org/home/uv/latest-release.md points to 2.27 and that's what the automated tools see.
$ cat debian/watch
Version: 5
Source: https://fossil-scm.org/home/uv/latest-release.md
Matching-Pattern: .*/@PACKAGE@-src-@ANY_VERSION@@ARCHIVE_EXT@
Debian now has Debusine which is roughly analogous to the Ubuntu PPA (personal packaging archives) system. Debusine could be used for updated versions of packages suitable for oldstable/stable/testing/whatever. I'd be happy to try to coordinate setting something like that up for up-to-date or even bleeding-edge versions of fossil, try to keep the packaging information and generated binaries as identical as practical.
It might also make sense to crank up a daemon that uses fossil git to keep a fossil repository on salsa.debian.org mirroring the master fossil repo and whatever debian packaging branches would benefit, in order to allow things like git debpush and CI scripts to simplify workflow and catch test issues earlier.