CtdlRoomAccess() can now return a new value UA_REPLYALLOWED, which
[citadel.git] / citadel / ipcdef.h
index 998255ca85de9ef12f2adabbcc4b0d7c35009f4e..f155a6e97fd01929c73ab36ca52c1b8ef172075d 100644 (file)
@@ -1,5 +1,3 @@
-/* $Id$ */
-
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -18,6 +16,7 @@ extern "C" {
 #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
@@ -55,8 +54,13 @@ extern "C" {
 
 #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                 */
@@ -71,12 +75,16 @@ extern "C" {
 #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_COLOR | US_PROMPTCTL )
+                       US_FLOORS | US_COLOR | US_PROMPTCTL | US_EXTEDIT)
 
-#define UA_KNOWN                2
-#define UA_GOTOALLOWED          4
-#define UA_HASNEWMSGS           8
-#define UA_ZAPPED               16
+#define UA_KNOWN                2      /* Room appears in a 'known rooms' list */
+#define UA_GOTOALLOWED          4      /* User may goto this room if specified by exact name */
+#define UA_HASNEWMSGS           8      /* Unread messages exist in this room */
+#define UA_ZAPPED               16     /* User has forgotten (zapped) this room */
+#define UA_POSTALLOWED         32      /* User may post top-level messages here */
+#define UA_ADMINALLOWED                64      /* Aide or Room Aide rights exist here */
+#define UA_DELETEALLOWED       128     /* User is allowed to delete messages from this room */
+#define UA_REPLYALLOWED                256     /* User is allowed to reply to existing messages here */
 
 #ifdef __cplusplus
 }