Handle display of local and nonlocal messages correctly in text client
[citadel.git] / textclient / textclient.h
index 671773226ec08a078bdb9c86953637442b69cd2e..4a3fc294f6a553fd0fc0985a544cab8ca3a8e0cb 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1987-2018 by the citadel.org team
+ * Copyright (c) 1987-2019 by the citadel.org team
  *
  *  This program is open source software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License version 3.
@@ -13,7 +13,7 @@
 #define        UDS                     "_UDS_"
 #define DEFAULT_HOST           "localhost"
 #define DEFAULT_PORT           "504"
-#define CLIENT_VERSION          919
+#define CLIENT_VERSION          925
 #define CLIENT_TYPE            0
 
 /* commands we can send to the stty_ctdl() routine */
@@ -56,6 +56,10 @@ enum {
 #define GF_SKIP                1               /* <;S>kip floor mode */
 #define GF_ZAP         2               /* <;Z>ap floor mode */
 
+/* Can messages be entered in this room? */
+#define ENTMSG_OK_NO   0               /* You may not enter messages here */
+#define ENTMSG_OK_YES  1               /* Go ahead! */
+#define ENTMSG_OK_BLOG 2               /* Yes, but warn the user about how blog rooms work */
 
 /*
  * Colors for color() command
@@ -331,6 +335,7 @@ struct ctdlipcmessage {
        char mime_chosen[SIZ];          /* Chosen MIME part to output */
        char content_type[SIZ];         /* How would you like that? */
        char references[SIZ];           /* Thread references */
+       int is_local;                   /* Nonzero if the message originated on the local system */
 };
 
 
@@ -479,9 +484,6 @@ int CtdlIPCTerminateSession(CtdlIPC *ipc, int sid, char *cret);
 int CtdlIPCTerminateServerNow(CtdlIPC *ipc, char *cret);
 int CtdlIPCTerminateServerScheduled(CtdlIPC *ipc, int mode, char *cret);
 int CtdlIPCEnterSystemMessage(CtdlIPC *ipc, const char *filename, const char *text, char *cret);
-int CtdlIPCChangeHostname(CtdlIPC *ipc, const char *hostname, char *cret);
-int CtdlIPCChangeRoomname(CtdlIPC *ipc, const char *roomname, char *cret);
-int CtdlIPCChangeUsername(CtdlIPC *ipc, const char *username, char *cret);
 time_t CtdlIPCServerTime(CtdlIPC *ipc, char *crert);
 int CtdlIPCAideGetUserParameters(CtdlIPC *ipc, const char *who, struct ctdluser **uret, char *cret);
 int CtdlIPCAideGetEmailAddresses(CtdlIPC *ipc, const char *who, char *, char *cret);