Began removing $Id$ tags. This will be an ongoing process.
[citadel.git] / citadel / ipcdef.h
index 808d2143a6c5e12e88c3d7ea68d62477684e9c05..a350069bae801a60985f774e8b693586a0a550c7 100644 (file)
@@ -1,9 +1,9 @@
-#ifdef OK
-#undef OK
+#ifdef __cplusplus
+extern "C" {
 #endif
 
 #define LISTING_FOLLOWS                100
-#define OK                     200
+#define CIT_OK                 200
 #define MORE_DATA              300
 #define SEND_LISTING           400
 #define ERROR                  500
 #define ILLEGAL_VALUE          12
 #define NOT_LOGGED_IN          20
 #define CMD_NOT_SUPPORTED      30
+#define SERVER_SHUTTING_DOWN   31
 #define PASSWORD_REQUIRED      40
+#define ALREADY_LOGGED_IN      41
+#define USERNAME_REQUIRED      42
 #define HIGHER_ACCESS_REQUIRED 50
 #define MAX_SESSIONS_EXCEEDED  51
+#define RESOURCE_BUSY          52
+#define RESOURCE_NOT_OPEN      53
 #define NOT_HERE               60
 #define INVALID_FLOOR_OPERATION        61
 #define NO_SUCH_USER           70
 #define ROOM_NOT_FOUND         72
 #define NO_SUCH_SYSTEM         73
 #define ALREADY_EXISTS         74
+#define MESSAGE_NOT_FOUND      75
 
-struct CtdlServInfo {
-       int serv_pid;
-       char serv_nodename[32];
-       char serv_humannode[64];
-       char serv_fqdn[64];
-       char serv_software[64];
-       int serv_rev_level;
-       char serv_bbs_city[64];
-       char serv_sysadm[64];
-       char serv_moreprompt[256];
-       int serv_ok_floors;
-       };
+#define ASYNC_MSG              900
+#define ASYNC_GEXP             02
 
 #define QR_PERMANENT   1               /* Room does not purge              */
 #define QR_INUSE       2               /* Set if in use, clear if avail    */
@@ -50,36 +46,45 @@ struct CtdlServInfo {
 #define QR_DOWNLOAD    128             /* Allowed to download              */
 #define QR_VISDIR      256             /* Visible directory                */
 #define QR_ANONONLY    512             /* Anonymous-Only room              */
-#define QR_ANON2       1024            /* Anonymous-Option room            */
+#define QR_ANONOPT     1024            /* Anonymous-Option room            */
 #define QR_NETWORK     2048            /* Shared network room              */
 #define QR_PREFONLY    4096            /* Preferred status needed to enter */
 #define QR_READONLY    8192            /* Aide status required to post     */
+#define QR_MAILBOX     16384           /* Set if this is a private mailbox */
 
+#define QR2_SYSTEM     1               /* System room; hide by default     */
+#define QR2_SELFLIST   2               /* Self-service mailing list mgmt   */
+#define QR2_COLLABDEL  4               /* Anyone who can post can delete   */
+#define QR2_SUBJECTREQ 8               /* Subject strongly recommended */
+#define QR2_SMTP_PUBLIC        16              /* Listservice Subscribers may post */
+#define QR2_MODERATED  32              /* Listservice aide has to permit posts  */
 
 #define US_NEEDVALID   1               /* User needs to be validated       */
+#define US_EXTEDIT     2               /* Always use external editor       */
 #define US_PERM                4               /* Permanent user                   */
 #define US_LASTOLD     16              /* Print last old message with new  */
 #define US_EXPERT      32              /* Experienced user                 */
 #define US_UNLISTED    64              /* Unlisted userlog entry           */
 #define US_NOPROMPT    128             /* Don't prompt after each message  */
+#define US_PROMPTCTL   256             /* <N>ext & <S>top work at prompt   */
 #define US_DISAPPEAR   512             /* Use "disappearing msg prompts"   */
 #define US_REGIS       1024            /* Registered user                  */
 #define US_PAGINATOR   2048            /* Pause after each screen of text  */
-#define US_INTERNET    4096            /* UUCP/Internet mail privileges    */
+#define US_INTERNET    4096            /* Internet mail privileges         */
 #define US_FLOORS      8192            /* User wants to see floors         */
+#define US_COLOR       16384           /* User wants ANSI color support    */
 #define US_USER_SET    (US_LASTOLD | US_EXPERT | US_UNLISTED | \
-                       US_NOPROMPT | US_DISAPPEAR | US_PAGINATOR | US_FLOORS)
+                       US_NOPROMPT | US_DISAPPEAR | US_PAGINATOR | \
+                       US_FLOORS | US_COLOR | US_PROMPTCTL | US_EXTEDIT)
 
-void serv_puts();
-void serv_gets();
-
-struct CtdlServerHandle {
-       char ServerAddress[64];
-       int ServerPort;
-       char ipgmSecret[32];
-       char UserName[32];
-       char Password[32];
-       char InitialRoom[32];
-       int AssocClientSession;
-       };
+#define UA_KNOWN                2
+#define UA_GOTOALLOWED          4
+#define UA_HASNEWMSGS           8
+#define UA_ZAPPED               16
+#define UA_POSTALLOWED         32
+#define UA_ADMINALLOWED                64
+#define UA_DELETEALLOWED       128
 
+#ifdef __cplusplus
+}
+#endif