Implemented a new command, egw_clear, to clear http output cache.
[egate.git] / www / wproto.h
index abe0f05..deb3006 100644 (file)
  * USE OR PERFORMANCE OF THIS SOFTWARE.
  *
  * $Log: wproto.h,v $
- * Revision 1.8  1996/02/12 10:09:25  adam
+ * Revision 1.13  1997/01/27 11:27:15  adam
+ * Implemented a new command, egw_clear, to clear http output cache.
+ * Changed prototype for function wo_clear.
+ *
+ * Revision 1.12  1997/01/24 13:13:12  adam
+ * Implemnted egw_source and added a "raw" option to the URL.
+ * Fixed a bug in the buffering system of wproto; the macro wo_putc could
+ * override memory if it was the first HTML generating function called.
+ *
+ * Revision 1.11  1996/05/23 15:53:11  adam
+ * Bug fix: egw_enc failed on 8-bit chars.
+ * New command: egw_parms.
+ *
+ * Revision 1.10  1996/05/21  14:53:04  adam
+ * Tcl command wform extented; options -raw and -exists added.
+ *
+ * Revision 1.9  1996/03/14  11:48:39  adam
+ * New function egw_prog that returns name of shell.
+ *
+ * Revision 1.8  1996/02/12  10:09:25  adam
  * New parameter to wproto_init: directory root for the FIFOs (instead
  * of using preprocessor defines FIFODIR/FIFOROOT).
  *
 
 typedef struct wform_data
 {
-    char name[20];
+    char name[64];
     char value[512];
 } wform_data;
 
@@ -108,10 +127,14 @@ struct w_select_handle {
 typedef struct wclient_data
 {
     int id;
-    wform_data wf_data[100];
-    char wf_parms[512];
-    char wf_serverp[512];
-    char wf_serverf[512];
+    char *prog;
+    char *raw_data;
+    wform_data wf_data[50];
+    wform_data wf_parms_var[50];
+    char wf_parms[1024];
+    char wf_serverp[1024];
+    char wf_serverf[1024];
+    char wf_script[1024];
     char path[512];
     int linein;
     int lineout;
@@ -130,16 +153,21 @@ typedef struct wclient_data
     (*((wc)->outbuffer + (wc)->outbuffer_offset++) = (char) (ch)), 0)
 
 char *wgetval (WCLIENT wc, char *name);
+
+/* wproto_process: wait for one request from egwcgi. returns <=0 on
+   timeout; returns >0 otherwise.  */
 int wproto_process (WCLIENT wc, int timeout);
-WCLIENT wproto_init (const char *fifoDir);
+
+/* wproto_init: initializes communication with egwcgi. */
+WCLIENT wproto_init (const char *fifoDir, const char *prog);
+
 void wo_printf (WCLIENT wc, const char *fmt, ...);
-void wo_clear (WCLIENT wc, const char *type);
+void wo_clear (WCLIENT wc);
 int wo_finish (WCLIENT wc);
 int wo_flush (WCLIENT wc);
 int wo_overflow (WCLIENT wc, char ch);
 void wproto_terminate (WCLIENT wc);
 int wproto_cache (WCLIENT wc, int level);
-int wo_puthtml (WCLIENT wc, char *name);
 void wo_puts (WCLIENT wc, const char *s);
 void wo_write (WCLIENT wc, const char *s, size_t len);