Main Page | Modules | Data Structures | File List | Data Fields

/extra/work/state-dev/src/chksvc/chksvc_service.h

00001 /* ----------------------------------------------------------------------------
00002  * $Id: chksvc_service.h,v 1.9 2004/01/27 01:02:39 jlewalle Exp $
00003  *
00004  * --------------------------------------------------------------------------*/
00005 #if !defined(_INCLUDED_CHKSVC_SERVICE_H_HEADER__)
00006 #define _INCLUDED_CHKSVC_SERVICE_H_HEADER__
00007 
00019 typedef struct chksvc_service_t
00020 {
00021 #if defined(HAVE_SSL)
00022   SSL_CTX *ctx;
00023   SSL *ssl;
00024   apr_pollset_t *pdata;
00025 #endif
00026   double begin;
00027   double end;
00028   char *addr;
00029   short port;
00030   char *type;
00031   apr_socket_t *sock;
00032   apr_sockaddr_t *remote_sa;
00033   sul_boolean_t use_ssl;
00034 } chksvc_service_t;
00035 
00047 apr_status_t
00048 chksvc_service_create(chksvc_service_t **self, const char *addr, short port, 
00049                       const char *type, sul_boolean_t use_ssl, 
00050                       apr_pool_t *pool);
00051 
00058 apr_status_t
00059 chksvc_service_open(chksvc_service_t *self);
00060 
00069 apr_status_t 
00070 chksvc_service_initialize(chksvc_service_t *self, apr_pool_t *pool);
00071 
00082 apr_status_t
00083 chksvc_service_set_default_port(chksvc_service_t *self, short port, 
00084                                 short sport);
00085 
00093 apr_status_t 
00094 chksvc_service_close(chksvc_service_t *self);
00095 
00106 apr_status_t
00107 chksvc_service_send(chksvc_service_t *self, char *data, apr_size_t *sz);
00108 
00120 apr_status_t
00121 chksvc_service_recv(chksvc_service_t *self, char *data, apr_size_t *sz);
00122 
00125 #endif

Generated on Wed Apr 28 09:38:33 2004 for State by doxygen 1.3.5