/[monit]/monit/http/processor.h
ViewVC logotype

Diff of /monit/http/processor.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.7 by hauk, Tue Apr 29 21:28:53 2003 UTC revision 1.8 by hauk, Fri Sep 19 03:44:17 2003 UTC
# Line 26  Line 26 
26    
27  #include "monitor.h"  #include "monitor.h"
28  #include "net.h"  #include "net.h"
29    #include "socket.h"
30  #include "http_utils.h"  #include "http_utils.h"
31    
32  /* Server masquerade */  /* Server masquerade */
# Line 93  Line 94 
94  #define STRLEN             256  #define STRLEN             256
95  #define REQ_STRLEN         1024  #define REQ_STRLEN         1024
96  #define RES_STRLEN         2048  #define RES_STRLEN         2048
97    #define MAX_URL_LENGTH     512
98    
99  /* Request timeout in seconds */  /* Request timeout in seconds */
100  #define REQUEST_TIMEOUT    30  #define REQUEST_TIMEOUT    30
# Line 109  struct entry { Line 111  struct entry {
111  typedef struct entry *HttpHeader;  typedef struct entry *HttpHeader;
112  typedef struct entry *HttpParameter;  typedef struct entry *HttpParameter;
113    
 typedef struct inetaddress {  
   char *remote_host;  
   char *local_host;  
 } *InetAddress;  
   
 typedef struct requestwrapper {  
   int socket;  
   int status;  
   InetAddress inetaddr;  
   ssl_connection *ssl;  
 } *RequestWrapper;  
   
114  typedef struct request {  typedef struct request {
   char *method;  
115    char *url;    char *url;
116      Socket_T S;
117      char *method;
118    char *protocol;    char *protocol;
119    char *pathinfo;    char *pathinfo;
   FILE *inputstream;  
120    HttpHeader headers;    HttpHeader headers;
   HttpParameter params;  
   InetAddress inetaddr;  
121    ssl_connection *ssl;    ssl_connection *ssl;
122      HttpParameter params;
123  } *HttpRequest;  } *HttpRequest;
124    
125  typedef struct response {  typedef struct response {
   char *protocol;  
126    int status;    int status;
127    const char *status_msg;    Socket_T S;
128    FILE *outputstream;    char *protocol;
   unsigned char *outputbuffer;  
129    size_t bufsize;    size_t bufsize;
130    size_t bufused;    size_t bufused;
   HttpHeader headers;  
131    int is_committed;    int is_committed;
132      HttpHeader headers;
133    ssl_connection *ssl;    ssl_connection *ssl;
134      const char *status_msg;
135      unsigned char *outputbuffer;
136  } *HttpResponse;  } *HttpResponse;
137    
138    
# Line 162  struct ServiceImpl Impl; Line 151  struct ServiceImpl Impl;
151    
152  /* Public prototypes */  /* Public prototypes */
153  void *http_processor(void *);  void *http_processor(void *);
154    char *get_headers(HttpResponse res);
155    void set_status(HttpResponse res, int status);
156    const char *get_status_string(int status_code);
157  void add_Impl(void *doGetFunc, void *doPostFunc);  void add_Impl(void *doGetFunc, void *doPostFunc);
 void send_error(HttpResponse, int status, const char *message);  
 void send_redirect(HttpResponse res, const char *location);  
158  void out_print(HttpResponse res,  const char *, ...);  void out_print(HttpResponse res,  const char *, ...);
 void set_header(HttpResponse res, const char *name, const char *value);  
 void set_status(HttpResponse res, int status);  
159  void set_content_type(HttpResponse res, const char *mime);  void set_content_type(HttpResponse res, const char *mime);
160  char *get_header(HttpRequest req, const char *header_name);  char *get_header(HttpRequest req, const char *header_name);
161  char *get_headers(HttpResponse res);  void send_redirect(HttpResponse res, const char *location);
162    void send_error(HttpResponse, int status, const char *message);
163  char *get_parameter(HttpRequest req, const char *parameter_name);  char *get_parameter(HttpRequest req, const char *parameter_name);
164  const char *get_status_string(int status_code);  void set_header(HttpResponse res, const char *name, const char *value);
 void destroy_wrapper(RequestWrapper wrapper);  
165    
166  #endif  #endif

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.8

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26