Main Page   Modules   Data Structures   File List   Globals  

chann.h

00001 #if !defined(_CHANN_H_)
00002 #define _CHANN_H_
00003 
00004 #include <apr_thread_proc.h>
00005 #include <apr_thread_cond.h>
00006 #include <apr_thread_mutex.h>
00007 
00008 typedef struct p2p_channel_link_s p2p_channel_link_t;
00009 struct p2p_channel_link_s {
00010   p2p_channel_t *prev;
00011   p2p_channel_t *next;
00012 };
00013 
00014 struct p2p_channel_s {
00015   char *kind;
00016   unsigned int port;
00017   apr_thread_mutex_t *mutex;
00018   apr_thread_cond_t *cv;
00019   apr_thread_t *thread;         /* FIXME: useless? */
00020   p2p_destinations_t *dst;
00021   char *buf;
00022   int buflen;
00023   int ready;
00024   int done;
00025   p2p_channel_link_t link;
00026 };
00027 
00028 extern p2p_channel_link_t channels;
00029 void init_channels();
00030 void signal_channel(p2p_channel_t *chann, char *body, int len);
00031 p2p_channel_t *create_channel_from_msg(char *buf);
00032 
00033 #endif  /* _CHANN_H_ */

Generated on Wed Aug 28 14:45:08 2002 for suma by doxygen1.2.17