]> code.citadel.org Git - citadel.git/blobdiff - webcit/webcit.h
* if we need the first urlpart, we musn't move it just left, but add another one...
[citadel.git] / webcit / webcit.h
index 4e2e3f016abcbd20038bc7ffce9ce90130c2f411..a2eb57c92ccf71aef51bb59f02432d89ea28aea2 100644 (file)
@@ -321,6 +321,8 @@ typedef struct _wcsubst {
 #define CTX_MIME_ATACH 10
 #define CTX_ATT 11
 #define CTX_STRBUF 12
+#define CTX_LONGVECTOR 13
+
 
 void RegisterNS(const char *NSName, long len, 
                int nMinArgs, 
@@ -615,6 +617,7 @@ struct wcsession {
        int time_format_cache;                  /**< which timeformat does our user like? */
        StrBuf *UrlFragment1;                   /**< first urlfragment, if NEED_URL is specified by the handler*/
        StrBuf *UrlFragment2;                   /**< second urlfragment, if NEED_URL is specified by the handler*/
+       StrBuf *UrlFragment3;                   /**< third urlfragment, if NEED_URL is specified by the handler*/
        StrBuf *WBuf;                           /**< Our output buffer */
        StrBuf *HBuf;                           /**< Our HeaderBuffer */
        StrBuf *CLineBuf;                       /**< linebuffering client stuff */
@@ -804,7 +807,22 @@ void stripout(char *str, char leftboundary, char rightboundary);
 void dump_vars(void);
 void embed_main_menu(void);
 void serv_read(char *buf, int bytes);
-void readloop(char *oper);
+
+enum {
+       do_search,
+       headers,
+       readfwd,
+       readnew,
+       readold
+};
+
+typedef void (*readloop_servcmd)(char *buf, long bufsize);
+
+typedef struct _readloopstruct {
+       ConstStr name;
+       readloop_servcmd cmd;
+} readloop_struct;
+void readloop(long oper);
 int  read_message(StrBuf *Target, const char *tmpl, long tmpllen, long msgnum, int printable_view, const StrBuf *section);
 void do_addrbook_view(addrbookent *addrbook, int num_ab);
 void display_vcard(StrBuf *Target, const char *vcard_source, char alpha, int full, char *storename, long msgnum);