* back end routine to take the session to a new room
*
*/
-void gotoroom(char *gname)
+int gotoroom(char *gname)
{
char buf[SIZ];
static long ls = (-1L);
+ int err = 0;
/* store ungoto information */
strcpy(WC->ugname, WC->wc_roomname);
serv_printf("GOTO %s", gname);
serv_getln(buf, sizeof buf);
if (buf[0] != '2') {
+ buf[3] = 0;
+ err = atoi(buf);
serv_puts("GOTO _BASEROOM_");
serv_getln(buf, sizeof buf);
}
if (buf[0] != '2') {
- return;
+ buf[3] = 0;
+ err = atoi(buf);
+ return err;
}
extract_token(WC->wc_roomname, &buf[4], 0, '|', sizeof WC->wc_roomname);
WC->room_flags = extract_int(&buf[4], 4);
remove_march(WC->wc_roomname);
if (!strcasecmp(gname, "_BASEROOM_"))
remove_march(gname);
+
+ return err;
}
#define DEVELOPER_ID 0
#define CLIENT_ID 4
#define CLIENT_VERSION 621 /* This version of WebCit */
-#define MINIMUM_CIT_VERSION 655 /* min required Citadel vers */
+#define MINIMUM_CIT_VERSION 654 /* min required Citadel vers */
#define DEFAULT_HOST "localhost" /* Default Citadel server */
#define DEFAULT_PORT "504"
#define LB (1) /* Internal escape chars */
void save_edit(char *description, char *enter_cmd, int regoto);
void display_edit(char *description, char *check_cmd,
char *read_cmd, char *save_cmd, int with_room_banner);
-void gotoroom(char *gname);
+int gotoroom(char *gname);
void confirm_delete_room(void);
void delete_room(void);
void validate(void);
void commit_iconbar(void);
int CtdlDecodeQuotedPrintable(char *decoded, char *encoded, int sourcelen);
void spawn_another_worker_thread(void);
+void display_rss(const char *roomname);
void embed_room_banner(char *, int);
/* navbar types that can be passed to embed_room_banner */