From 6124e82022a9b919529a4f1414349d3096fb839d Mon Sep 17 00:00:00 2001 From: Art Cancro Date: Mon, 14 Nov 2011 11:40:28 -0500 Subject: [PATCH] calendar.ics auth tweaks --- webcit/dav_main.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/webcit/dav_main.c b/webcit/dav_main.c index 93e114c8d..91610ac99 100644 --- a/webcit/dav_main.c +++ b/webcit/dav_main.c @@ -105,6 +105,8 @@ void dav_main(void) wcsession *WCC = WC; int i, len; + syslog(LOG_DEBUG, "dav_main() called, logged_in=%d", WCC->logged_in ); + StrBufUnescape(WCC->Hdr->HR.ReqLine, 0); StrBufStripSlashes(WCC->Hdr->HR.ReqLine, 0); @@ -133,15 +135,13 @@ void dav_main(void) switch (WCC->Hdr->HR.eReqType) { /* - * The OPTIONS method is not required by GroupDAV. This is an - * experiment to determine what might be involved in supporting - * other variants of DAV in the future. + * The OPTIONS method is not required by GroupDAV but it will be + * needed for future implementations of other DAV-based protocols. */ case eOPTIONS: dav_options(); break; - /* * The PROPFIND method is basically used to list all objects in a * room, or to list all relevant rooms on the server. @@ -211,6 +211,7 @@ void Header_HandleIfMatch(StrBuf *Line, ParsedHttpHdrs *hdr) hdr->HR.dav_ifmatch = Line; } + void Header_HandleDepth(StrBuf *Line, ParsedHttpHdrs *hdr) { if (!strcasecmp(ChrPtr(Line), "infinity")) { @@ -223,6 +224,8 @@ void Header_HandleDepth(StrBuf *Line, ParsedHttpHdrs *hdr) hdr->HR.dav_depth = 1; } } + + int Conditional_DAV_DEPTH(StrBuf *Target, WCTemplputParams *TP) { return WC->Hdr->HR.dav_depth == GetTemplateTokenNumber(Target, TP, 2, 0); @@ -248,6 +251,7 @@ void RegisterDAVNamespace(const char * UrlString, Put(DavNamespaces, UrlString, UrlSLen, vHandler, reference_free_handler); } + int Conditional_DAV_NS(StrBuf *Target, WCTemplputParams *TP) { wcsession *WCC = WC; @@ -270,6 +274,7 @@ int Conditional_DAV_NSCURRENT(StrBuf *Target, WCTemplputParams *TP) return WCC->Hdr->HR.Handler == vHandler; } + void tmplput_DAV_NAMESPACE(StrBuf *Target, WCTemplputParams *TP) { wcsession *WCC = WC; @@ -284,6 +289,7 @@ void tmplput_DAV_NAMESPACE(StrBuf *Target, WCTemplputParams *TP) } } + int GroupdavDispatchREST(RESTDispatchID WhichAction, int IgnoreFloor) { wcsession *WCC = WC; @@ -310,9 +316,9 @@ ServerStartModule_DAV { DavNamespaces = NewHash(1, NULL); - } + void ServerShutdownModule_DAV (void) @@ -321,8 +327,6 @@ ServerShutdownModule_DAV } - - void InitModule_GROUPDAV (void) @@ -346,5 +350,4 @@ InitModule_GROUPDAV RegisterHeaderHandler(HKEY("IF-MATCH"), Header_HandleIfMatch); RegisterHeaderHandler(HKEY("DEPTH"), Header_HandleDepth); RegisterConditional(HKEY("COND:DAV:DEPTH"), 1, Conditional_DAV_DEPTH, CTX_NONE); - } -- 2.30.2