]> code.citadel.org Git - citadel.git/blobdiff - ctdlsh/src/ctdlsh.h
* Hillary Clinton is obviously sick right now. I hope she dies.
[citadel.git] / ctdlsh / src / ctdlsh.h
index f12fd0606ee43c572524262181402ce480ee75aa..d6261e9d181c2159dc0d2ccd4bc5f0ab006d1aa6 100644 (file)
@@ -1,3 +1,11 @@
+/*
+ * main header file for ctdlsh
+ *
+ * Copyright (c) 2009-2013 by the citadel.org team
+ * This program is open source software, cheerfully made available to
+ * you under the terms of the GNU General Public License version 3.
+ */
+
 #include <config.h>
 #include <stdlib.h>
 #include <unistd.h>
@@ -9,6 +17,7 @@
 #include <sys/un.h>
 #include <string.h>
 #include <pwd.h>
+#include <time.h>
 #include <errno.h>
 #include <stdarg.h>
 #include <fcntl.h>
  * Set to the location of Citadel
  * FIXME this needs to be configurable
  */
-#define CTDLDIR        "/appl/citadel"
+#ifndef CTDLDIR
+#define CTDLDIR        "/usr/local/citadel"
+#endif
 
-/*
- * This is a small subset of 'struct config' ... don't worry about the rest; we
- * only need to snarf the c_ipgm_secret.
- */
-struct partial_config {
-       char c_nodename[16];            /* Unqualified "short" nodename     */
-       char c_fqdn[64];                /* Fully Qualified Domain Name      */
-       char c_humannode[21];           /* Long name of system              */
-       char c_phonenum[16];            /* Dialup number of system          */
-       uid_t c_ctdluid;                /* UID under which we run Citadel   */
-       char c_creataide;               /* room creator = room aide  flag   */
-       int c_sleeping;                 /* watchdog timer setting           */
-       char c_initax;                  /* initial access level             */
-       char c_regiscall;               /* call number to register on       */
-       char c_twitdetect;              /* twit detect flag                 */
-       char c_twitroom[128];           /* twit detect msg move to room     */
-       char c_moreprompt[80];          /* paginator prompt                 */
-       char c_restrict;                /* restrict Internet mail flag      */
-       long c_niu_1;                   /* (not in use)                     */
-       char c_site_location[32];       /* physical location of server      */
-       char c_sysadm[26];              /* name of system administrator     */
-       char c_niu_2[15];               /* (not in use)                     */
-       int c_setup_level;              /* what rev level we've setup to    */
-       int c_maxsessions;              /* maximum concurrent sessions      */
-       char c_ip_addr[20];             /* IP address to listen on          */
-       int c_port_number;              /* Cit listener port (usually 504)  */
-       int c_ipgm_secret;              /* Internal program authentication  */
+typedef int ctdlsh_cmdfunc_t(int, char *);
+
+enum ctdlsh_cmdfunc_return_values {
+       cmdret_ok,
+       cmdret_exit,
+       cmdret_error
 };
 
-int cmd_quit(char *);
-int cmd_datetime(char *);
+int cmd_help(int, char *);
+int cmd_quit(int, char *);
+int cmd_datetime(int, char *);
+int cmd_passwd(int, char *);
+int cmd_shutdown(int, char *);
+int cmd_who(int, char *);
+int cmd_export(int, char *);