[Bedework-commit] caldav r200 - trunk/server/src/org/bedework/caldav/server

svnadmin at bedework.org svnadmin at bedework.org
Thu Sep 13 10:33:52 EDT 2007


Author: douglm
Date: 2007-09-13 10:33:50 -0400 (Thu, 13 Sep 2007)
New Revision: 200

Modified:
   trunk/server/src/org/bedework/caldav/server/CaldavBWIntf.java
   trunk/server/src/org/bedework/caldav/server/PostMethod.java
Log:
Fix bad tag in realtime response

Authenticate as bogus user for anon real time service
 

Modified: trunk/server/src/org/bedework/caldav/server/CaldavBWIntf.java
===================================================================
--- trunk/server/src/org/bedework/caldav/server/CaldavBWIntf.java	2007-09-12 19:15:30 UTC (rev 199)
+++ trunk/server/src/org/bedework/caldav/server/CaldavBWIntf.java	2007-09-13 14:33:50 UTC (rev 200)
@@ -200,7 +200,6 @@
     super.init(servlet, req, props, debug, methods, dumpContent);
 
     try {
-
       HttpSession session = req.getSession();
       ServletContext sc = session.getServletContext();
 
@@ -228,6 +227,31 @@
     }
   }
 
+  /** See if we can reauthenticate. Use for real-time service which needs to
+   * authenticaet as a particular principal.
+   *
+   * @param req
+   * @param account
+   * @throws WebdavException
+   */
+  public void reAuth(HttpServletRequest req,
+                     String account) throws WebdavException {
+    try {
+      this.account = account;
+
+      CalEnvI env = CalEnvFactory.getEnv(envPrefix, debug);
+
+      sysi = (SysIntf)env.getAppObject("sysintfimpl", SysIntf.class);
+
+      sysi.init(req, envPrefix, account, debug);
+
+      accessUtil = new AccessUtil(namespacePrefix, xml,
+                                  new CalDavAccessXmlCb(sysi), debug);
+    } catch (Throwable t) {
+      throw new WebdavException(t);
+    }
+  }
+
   /* (non-Javadoc)
    * @see edu.rpi.cct.webdav.servlet.shared.WebdavNsIntf#getDavHeader(edu.rpi.cct.webdav.servlet.shared.WebdavNsNode)
    */

Modified: trunk/server/src/org/bedework/caldav/server/PostMethod.java
===================================================================
--- trunk/server/src/org/bedework/caldav/server/PostMethod.java	2007-09-12 19:15:30 UTC (rev 199)
+++ trunk/server/src/org/bedework/caldav/server/PostMethod.java	2007-09-13 14:33:50 UTC (rev 200)
@@ -210,6 +210,10 @@
 
     pars.realTime = true;
 
+    if (intf.getSysi().getAccount() == null) {
+      intf.reAuth(req, "realtime01");
+    }
+
     doSchedule(intf, pars, resp);
   }
 
@@ -515,9 +519,9 @@
       }
 
       closeTag(CaldavTags.response);
+    }
 
-      closeTag(CaldavTags.scheduleResponse);
-    }
+    closeTag(CaldavTags.scheduleResponse);
   }
 
   /**



More information about the Bedework-commit mailing list