int follow_xff = 0; /* Follow X-Forwarded-For: header */
int home_specified = 0; /* did the user specify a homedir? */
int time_to_die = 0; /* Nonzero if server is shutting down */
+int DisableGzip = 0;
extern void *context_loop(int*);
extern void *housekeeping_loop(void);
extern pthread_mutex_t SessionListMutex;
*/
long end_burst(void)
{
- struct wcsession *WCC = WC;
+ wcsession *WCC = WC;
const char *ptr, *eptr;
long count;
ssize_t res;
#ifdef HAVE_ZLIB
/* Perform gzip compression, if enabled and supported by client */
- if ((WCC->gzip_ok) && CompressBuffer(WCC->WBuf))
+ if (!DisableGzip && (WCC->gzip_ok) && CompressBuffer(WCC->WBuf))
{
hprintf("Content-encoding: gzip\r\n");
}
void InitTemplateCache(void);
extern int LoadTemplates;
extern void LoadZoneFiles(void);
-
+StrBuf *csslocal = NULL;
/*
* Here's where it all begins.
*/
TemplateCache = NewHash(1, NULL);
GlobalNS = NewHash(1, NULL);
Iterators = NewHash(1, NULL);
- Contitionals = NewHash(1, NULL);
+ Conditionals = NewHash(1, NULL);
MsgHeaderHandler = NewHash(1, NULL);
MimeRenderHandler = NewHash(1, NULL);
+ SortHash = NewHash(1, NULL);
LoadZoneFiles();
-
#ifdef DBG_PRINNT_HOOKS_AT_START
dbg_PrintHash(HandlerHash, nix, NULL);
#endif
/* Parse command line */
#ifdef HAVE_OPENSSL
- while ((a = getopt(argc, argv, "h:i:p:t:T:x:dD:cfs")) != EOF)
+ while ((a = getopt(argc, argv, "h:i:p:t:T:x:dD:cfsZ")) != EOF)
#else
- while ((a = getopt(argc, argv, "h:i:p:t:T:x:dD:cf")) != EOF)
+ while ((a = getopt(argc, argv, "h:i:p:t:T:x:dD:cfZ")) != EOF)
#endif
switch (a) {
case 'h':
case 'T':
LoadTemplates = atoi(optarg);
break;
+ case 'Z':
+ DisableGzip = 1;
+ break;
case 'x':
verbosity = atoi(optarg);
break;
"[-i ip_addr] [-p http_port] "
"[-t tracefile] [-c] [-f] "
"[-T Templatedebuglevel] "
- "[-d] "
+ "[-d] [-Z] "
#ifdef HAVE_OPENSSL
"[-s] "
#endif
perror("chdir");
}
LoadIconDir(static_icon_dir);
- InitTemplateCache();
initialise_modules();
initialize_viewdefs();
initialize_axdefs();
+ InitTemplateCache();
+
+ if (!access("static.local/webcit.css", R_OK)) {
+ csslocal = NewStrBufPlain(HKEY("<link href=\"static.local/webcit.css\" rel=\"stylesheet\" type=\"text/css\">"));
+ }
+
/* Tell libical to return an error instead of aborting if it sees badly formed iCalendar data. */
icalerror_errors_are_fatal = 0;
+ /* Use our own prefix on tzid's generated from system tzdata */
+ icaltimezone_set_tzid_prefix("/citadel.org/");
+
/*
* Set up a place to put thread-specific data.
* We only need a single pointer per thread - it points to the
DeleteHash(&LocalTemplateCache);
DeleteHash(&Iterators);
DeleteHash(&MimeRenderHandler);
- DeleteHash(&Contitionals);
+ DeleteHash(&Conditionals);
DeleteHash(&MsgHeaderHandler);
+ DeleteHash(&SortHash);
#ifdef ENABLE_NLS
ShutdownLocale();
#endif