#endif
-extern int msock; /* master listening socket */
-extern int verbosity; /* Logging level */
+extern int msock; /* master listening socket */
+extern int verbosity; /* Logging level */
extern char static_icon_dir[PATH_MAX]; /* where should we find our mime icons */
-int is_https = 0; /* Nonzero if I am an HTTPS service */
-int follow_xff = 0; /* Follow X-Forwarded-For: header */
-int home_specified = 0; /* did the user specify a homedir? */
+int is_https = 0; /* Nonzero if I am an HTTPS service */
+int follow_xff = 0; /* Follow X-Forwarded-For: header? */
int DisableGzip = 0;
+char *default_landing_page = NULL; /* FIXME we need to populate this somehow */
extern pthread_mutex_t SessionListMutex;
extern pthread_key_t MyConKey;
extern void graceful_shutdown(int signum);
extern void start_daemon(char *pid_file);
extern void webcit_calc_dirs_n_files(int relh, const char *basedir, int home, char *webcitdir, char *relhome);
-
+extern void worker_entry(void);
extern void drop_root(uid_t UID);
-char socket_dir[PATH_MAX]; /* where to talk to our citadel server */
-
+char socket_dir[PATH_MAX]; /* where to talk to our citadel server */
char *server_cookie = NULL; /* our Cookie connection to the client */
int http_port = PORT_NUM; /* Port to listen on */
-char *ctdlhost = DEFAULT_HOST; /* our name */
-char *ctdlport = DEFAULT_PORT; /* our Port */
-int setup_wizard = 0; /* should we run the setup wizard? \todo */
-char wizard_filename[PATH_MAX]; /* where's the setup wizard? */
+char *ctdlhost = DEFAULT_HOST; /* Host name or IP address of Citadel server */
+char *ctdlport = DEFAULT_PORT; /* Port number of Citadel server */
+int setup_wizard = 0; /* should we run the setup wizard? */
+char wizard_filename[PATH_MAX]; /* location of file containing the last webcit version against which we ran setup wizard */
int running_as_daemon = 0; /* should we deamonize on startup? */
-
/* #define DBG_PRINNT_HOOKS_AT_START */
#ifdef DBG_PRINNT_HOOKS_AT_START
extern HashList *HandlerHash;
+
/*
* Here's where it all begins.
*/
char ip_addr[256]="*";
int relh=0;
int home=0;
- int home_specified=0;
char relhome[PATH_MAX]="";
char webcitdir[PATH_MAX] = DATADIR;
char *pidfile = NULL;
safestrncpy(relhome, relhome, sizeof relhome);
}
/* free(hdir); TODO: SHOULD WE DO THIS? */
- home_specified = 1;
home=1;
break;
case 'd':
if (gethostname
(&server_cookie[strlen(server_cookie)],
200) != 0) {
- syslog(2, "gethostname: %s\n",
- strerror(errno));
+ syslog(2, "gethostname: %s", strerror(errno));
free(server_cookie);
}
}
LoadIconDir(static_icon_dir);
/* Tell 'em who's in da house */
- syslog(1, PACKAGE_STRING "\n");
- syslog(1, "Copyright (C) 1996-2011 by the citadel.org team\n");
- syslog(1, "\n");
- syslog(1, "This program is open source software: you can redistribute it and/or\n");
- syslog(1, "modify it under the terms of the GNU General Public License as published\n");
- syslog(1, "by the Free Software Foundation, either version 3 of the License, or\n");
- syslog(1, "(at your option) any later version.\n");
- syslog(1, "\n");
- syslog(1, "This program is distributed in the hope that it will be useful,\n");
- syslog(1, "but WITHOUT ANY WARRANTY; without even the implied warranty of\n");
- syslog(1, "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n");
- syslog(1, "GNU General Public License for more details.\n");
- syslog(1, "\n");
- syslog(1, "You should have received a copy of the GNU General Public License\n");
- syslog(1, "along with this program. If not, see <http://www.gnu.org/licenses/>.\n");
- syslog(1, "\n");
+ syslog(1, "%s", PACKAGE_STRING);
+ syslog(1, "Copyright (C) 1996-2011 by the citadel.org team");
+ syslog(1, " ");
+ syslog(1, "This program is open source software: you can redistribute it and/or");
+ syslog(1, "modify it under the terms of the GNU General Public License as published");
+ syslog(1, "by the Free Software Foundation, either version 3 of the License, or");
+ syslog(1, "(at your option) any later version.");
+ syslog(1, " ");
+ syslog(1, "This program is distributed in the hope that it will be useful,");
+ syslog(1, "but WITHOUT ANY WARRANTY; without even the implied warranty of");
+ syslog(1, "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the");
+ syslog(1, "GNU General Public License for more details.");
+ syslog(1, " ");
+ syslog(1, "You should have received a copy of the GNU General Public License");
+ syslog(1, "along with this program. If not, see <http://www.gnu.org/licenses/>.");
+ syslog(1, " ");
/* initialize various subsystems */
/* Become a worker thread. More worker threads will be spawned as they are needed. */
worker_entry();
- ShutDownLibCitadel ();
+ ShutDownLibCitadel();
return 0;
}