The project "Citadel server, clients, utilities":
The branch, master has been updated
via b8c86d374034c99901939076ce7501dfe55ad2fc (commit)
from 3989b4cdbef9cf3c67ca50a7f9f3a24151c0799e (commit)
- Log -----------------------------------------------------------------
commit b8c86d374034c99901939076ce7501dfe55ad2fc
Author: Art Cancro <[email protected]>
Date: Fri Oct 24 15:34:10 2025 -0400
RFC6764 compliance and RFC3986 URL escaping
- Redirect logic updated in webcit-ng/server/request.c
- /.well-known/carddav â /ctdl/ (RFC 6764 section 4.1)
- /.well-known/caldav â /ctdl/ (RFC 6764 section 4.2)
- Replaces legacy redirects to /ctdl/r/calendar and /ctdl/r/contacts
- Enables principal-based discovery for CalDAV/CardDAV clients
- URL escaping updated in libcitadel/lib/tools.c
- urlesc() now conforms to RFC3986 reserved character set
- Replaces legacy escape set with " !*'();:@&=+$,/?#[]"
- Annotated inline with change date (2025oct24) for audit clarity
- Dead code removed in room_functions.c
- Eliminated commented-out strdup() line in propfind_the_room_itself()
- Preserves clean enumeration logic for exti= values
Impact:
- Aligns Citadelâs WebDAV discovery with modern client expectations (DAVxâµ,
iOS, Thunderbird)
- Enables seamless onboarding via .well-known/* redirects
- Future-proofs URL escaping for principal hrefs and resource identifiers
-----------------------------------------------------------------------
Summary of changes:
libcitadel/lib/tools.c | 13 +++++++------
webcit-ng/server/request.c | 12 ++++++------
webcit-ng/server/room_functions.c | 1 -
3 files changed, 13 insertions(+), 13 deletions(-)
--
Citadel server, clients, utilities