2 * Copyright (c) 2007 Ry Dahl <ry.d4hl@gmail.com>
3 * This software is released under the "MIT License". See README file for details.
8 #include "mongrel/parser.h"
13 typedef struct ebb_server ebb_server
;
14 typedef struct ebb_client ebb_client
;
16 #define EBB_LOG_DOMAIN "Ebb"
17 #define ebb_error(str, ...) \
18 g_log(EBB_LOG_DOMAIN, G_LOG_LEVEL_ERROR, str, ## __VA_ARGS__);
23 typedef void (*ebb_request_cb_t
)(ebb_client
*, void*);
25 ebb_server
* ebb_server_new();
26 void ebb_server_free(ebb_server
*);
27 void ebb_server_stop(ebb_server
*);
28 void ebb_server_start(ebb_server
*, char *host
, int port
, ebb_request_cb_t
, void *request_cb_data
);
32 void *request_cb_data
;
33 ebb_request_cb_t request_cb
;
38 ebb_client
* ebb_client_new(ebb_server
*, tcp_client
*);
39 void ebb_client_free(ebb_client
*);
40 void ebb_client_close(ebb_client
*);
41 int ebb_client_write(ebb_client
*, const char *data
, int length
);
47 GQueue
*env
; /* queue of ebb_env_pairs */
51 typedef struct ebb_env_pair
{
58 ebb_env_pair
* ebb_env_pair_new(const char *field
, size_t flen
, const char *value
, size_t vlen
);
59 #define ebb_env_pair_new2(f,v) ebb_env_pair_new(f,strlen(f),v,strlen(v))
60 #define ebb_env_pair_free(pair) free(pair)