]> code.citadel.org Git - citadel.git/blobdiff - webcit/context_loop.c
MAILINGLIST: add facility to choose the default room email alias.
[citadel.git] / webcit / context_loop.c
index 04c5cf0a3ea714ecb6ed959fa97d4aeb5d87e23a..ff95e825ebe5ad428d604b610d8621ae6a6a327f 100644 (file)
@@ -4,7 +4,7 @@
  * keep track of things.  If the HTTP request doesn't belong to any currently
  * active session, a new session is started.
  *
- * Copyright (c) 1996-2011 by the citadel.org team
+ * Copyright (c) 1996-2012 by the citadel.org team
  *
  * This program is open source software.  You can redistribute it and/or
  * modify it under the terms of the GNU General Public License version 3.
@@ -334,12 +334,13 @@ int ReadHttpSubject(ParsedHttpHdrs *Hdr, StrBuf *Line, StrBuf *Buf)
                );
        }
        else {
-               Hdr->HR.DontNeedAuth = 1; /* Flat request? show him the login screen... */
-               StrBuf *NewLine = NewStrBufPlain(HKEY("GET /readfwd?go="));
-               StrBufUrlescAppend(NewLine, Buf, NULL);
-               StrBufAppendBufPlain(NewLine, HKEY(" HTTP/1.0"), 0);
+               /* If this is a "flat" request for the root, display the configured landing page. */
+               int return_value;
+               StrBuf *NewLine = NewStrBuf();
+               Hdr->HR.DontNeedAuth = 1;
+               StrBufAppendPrintf(NewLine, "GET /landing?go=%s HTTP/1.0", ChrPtr(Buf));
                syslog(LOG_DEBUG, "Replacing with: %s", ChrPtr(NewLine));
-               int return_value = ReadHttpSubject(Hdr, NewLine, Buf);
+               return_value = ReadHttpSubject(Hdr, NewLine, Buf);
                FreeStrBuf(&NewLine);
                return return_value;
        }
@@ -714,7 +715,8 @@ const char *ReqStrs[eNONE] = {
        "DELETE",
        "HEAD",
        "MOVE",
-       "COPY"
+       "COPY",
+       "REPORT"
 };
 
 void
@@ -760,6 +762,10 @@ ServerStartModule_CONTEXT
        v = malloc(sizeof(long));
        *v = eCOPY;
        Put(HttpReqTypes, HKEY("COPY"), v, NULL);
+
+       v = malloc(sizeof(long));
+       *v = eREPORT;
+       Put(HttpReqTypes, HKEY("REPORT"), v, NULL);
 }
 
 void