X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=www%2Fwproto.h;h=43da58006dc96901ee3e57c38286e159b6307cb7;hb=fa0ddb755d3a836e4e13cc05a6ba3eb6b0010958;hp=266a71344908461b4b60ca974e6cadd3a2b51f23;hpb=5414eafed41a60ef3625cfc6770184b36016186e;p=egate.git diff --git a/www/wproto.h b/www/wproto.h index 266a713..43da580 100644 --- a/www/wproto.h +++ b/www/wproto.h @@ -41,7 +41,29 @@ * USE OR PERFORMANCE OF THIS SOFTWARE. * * $Log: wproto.h,v $ - * Revision 1.2 1995/10/23 16:55:41 adam + * Revision 1.7 1996/01/24 08:26:55 adam + * All tcl commands prefixed with egw_ (except the html command). + * + * Revision 1.6 1996/01/12 13:08:07 adam + * CGI script passes name of lock file to the shell. The server will not close + * the response FIFO until this file becomes unlocked. This method handles + * cancel operations much better. + * + * Revision 1.5 1996/01/12 10:05:21 adam + * If script name ends with ';' HTTP/GET/Expires will be defined. + * The cgi interface only reads final handshake if response from + * server (shell) was zero-terminated [If it isn't it probably died]. + * + * Revision 1.4 1995/11/06 10:51:18 adam + * End of response marker in response from wsh/wproto to wcgi. + * Shells are respawned when necessary. + * + * Revision 1.3 1995/10/27 15:12:11 adam + * IrTcl incorporated in the gateway. + * Better separation of script types. + * Z39.50 gateway scripts entered. + * + * Revision 1.2 1995/10/23 16:55:41 adam * A lot of changes - really. * * Revision 1.1 1995/10/20 11:49:27 adam @@ -73,12 +95,22 @@ typedef struct cache_data char path[256]; } cache_data; +struct w_select_handle { + int fd; + struct { + void (*sproc)(int, void *); + void *obj; + } rwx[3]; + struct w_select_handle *next; +}; + typedef struct wclient_data { int id; wform_data wf_data[100]; char wf_parms[512]; char wf_serverp[512]; + char wf_serverf[512]; char path[512]; int linein; int lineout; @@ -88,6 +120,7 @@ typedef struct wclient_data int cache_level; cache_data cache[20]; int cache_fd; + struct w_select_handle *select_list; } *WCLIENT, wclient_data; #define wo_putc(wc, ch) \ @@ -98,13 +131,14 @@ char *wgetval(WCLIENT wc, char *name); int wproto_process(WCLIENT wc, int timeout); WCLIENT wproto_init(void); void wo_printf(WCLIENT wc, const char *fmt, ...); -void wo_clear(WCLIENT wc, char *type); +void wo_clear(WCLIENT wc, const char *type); 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, char *s); +void wo_puts(WCLIENT wc, const char *s); +void wo_write(WCLIENT wc, const char *s, size_t len); #endif