forked from zerotao/libevhtp
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
632 lines (587 loc) · 35.4 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
v1.2.11
o Added missing extern "C"'s to public headers (9a0d250 Mark Ellzey)
o CMakeLists cleanup, and pretty display (fc0f5da Mark Ellzey)
o Oops, added back find_package() for libevent (9cdae63 Mark Ellzey)
o Does image linking work here? (c10690b Mark Ellzey)
o [htparse] have each state consume as needed (c34dba5 Mark Ellzey)
o [htparse] formatting (4adcc67 Mark Ellzey)
o Cleaning up things a bit (e7268d2 Mark Ellzey)
o updated (718de1e Mark Ellzey)
o Install into <installdir>/include/evhtp/*.h (7065156 Mark Ellzey)
o Optimizations / assertions / more safe_Free conversions (511fb19 Mark Ellzey)
o Fix test_query tests (2d4c22f Mark Ellzey)
o evthr initial shared pipe prototype (72f01f5 Mark Ellzey)
o [evthr] shared pipe updates (0251481 Mark Ellzey)
o Formatting. (f67f958 Mark Ellzey)
o Added EVHTP_THR_SHARED_PIPE option (default ON) (d160452 Mark Ellzey)
o formatting, fixes, assertions (b1cef41 Mark Ellzey)
o Issue161 : deal with http 1.0 stuff (67ed0bc Mark Ellzey)
o update test_basic (3ea2eba Mark Ellzey)
o use evhtp_safe_free for authority (50dffb6 Mark Ellzey)
o [htparse] keep-alive A_case fix (910137f Mark Ellzey)
o sockflags, and more pipeline fixses (9b69ee7 Mark Ellzey)
o Might want to make that listener nonblocking (d34a1d0 Mark Ellzey)
o Coreent socket() assertion (d2263e0 Mark Ellzey)
o htparse optimizations, backlog flag for test.c (9f5a38e Mark Ellzey)
o scratch buffers / added test_perf for graphing (95e9ff3 Mark Ellzey)
o rm'd ratelimit, added ability to use je/tc malloc (934cf5a Mark Ellzey)
o Updating layouts - added lambda-pp code (8aef49d Mark Ellzey)
o Cleanup time! (43005ad Mark Ellzey)
o formatting (542a701 Mark Ellzey)
o default response cb needs to set 0 len (2f1ecab Mark Ellzey)
o use elif defined JE... (2682dca Mark Ellzey)
o Added evhtp_get_cb (see full commit msg) (cdf5291 Mark Ellzey)
o Various fixes / added SOVERSION'ing (73d7ee5 Mark Ellzey)
o Move around tc/jemalloc ifdefs, btw tcmalloc is awful. (e456fe0 Mark Ellzey)
o build: install evhtp.pc in /usr/lib/pkgconfig (0400ce0 Vincent Bernat)
o jfkdlsa (fabe244 Mark Ellzey)
o doxygen mod for evhtp.h (3d0e615 Mark Ellzey)
o Default to EVHTP_PARSE_QUERY_FLAG_LENIENT for query parsing. (a462fc5 Mark Ellzey Thomas)
o (evhtp_make_request): Add request->buffer_out as body if populated. (8bc4ab3 akalend)
o Added setsockopt for ipv6 to only use ipv6 null check for ssl via akalend (acfc9dd Mark Ellzey Thomas)
o modify str_to_uint64: uint64_t check can never be greater than UINT64_MAX (7d6135c xuhao)
o use EVHTP_DISABLE_SSL instead of USE_SSL in header (c884191 Mark Ellzey)
o export evhtp_connection_ssl_new via @rosenk, thanks! (c2168be Mark Ellzey)
v1.2.10
o client ssl connection added. This requires a SSL_CTX and must be set by the user (439431a StunMan)
o Only export public symbols. (cf66c7c Mark Ellzey)
o Export evhtp_connection_set_ratelimit (df2fbd6 Mark Ellzey)
o Uncomplexify evthr - huge performance boost. (8a6873e Mark Ellzey)
o Do backlogs matter for evthr? I am thinking not. (76b4a96 Mark Ellzey)
o Remove all the stupid backlog stuff. (cb4e280 Mark Ellzey)
o Proposed changes for request pause/resume (pipelined) (6cd8946 Mark Ellzey)
o Remove dead code from evthr (3d51c76 Mark Ellzey)
o Remove dead declarations in evthr.h (72488a8 Mark Ellzey)
o Be more consistent and slightly more lenient when handling GET params (86ba10b TJ Koblentz)
o Empty query args processed with a val of NULL, extended the test_query code (bc897d2 Mark Ellzey)
o add connection connected status for client connection (0e839f0 zhangjing)
o Added on_event hook / cleanup (22c0fac Mark Ellzey)
o Fixed bug with calling user-defined event callback :) (246e33d Mark Ellzey)
o Add a pkg-config .pc file (6e85a9b Mark Ellzey)
o TestBigEndian, and add big endian versions of _str*cmp macros (736bc80 Mark Ellzey)
o ignore build directory (submodule doesnt become dirty on build) (1aceedb TJ Koblentz)
o missing SSL guard + test compilation problems (-Wunused-but-set-variable) (787eeb9 TJ Koblentz)
o Fix some empty GET param cases (with tests) (e282b6f TJ Koblentz)
o Formatting cleanup (89f11cd Mark Ellzey)
o Cleanup and fixes (61c7f4f Mark Ellzey)
o (evhtp_free): Free ssl_ctx if used. (9318571 Marcus Sundberg)
o Properly handle errors when allocating connections and requests. (ab2f567 Marcus Sundberg)
o Prevent double free of request. (ec445f9 Martin Hedenfalk)
o Stop parsing when we have got a complete response/request. (279a7d3 Marcus Sundberg)
o (evhtp_connection_free): Call hook before freeing request. (c093ff9 Marcus Sundberg)
o Properly parse CONNECT request line. (76f2830 Marcus Sundberg)
o Support IPv6 literals in CONNECT authority string. (378b790 Marcus Sundberg)
o Separate fragment string from query string according to RFC 3986. (a9c0679 Marcus Sundberg)
o (evhtp_parse_query): Remove strange handling of '?' and '/'. (3d96f5e Marcus Sundberg)
o Fix parse errors on trailing whitespace in Content-Length header. (b67068c Marcus Sundberg)
o (evhtp_parse_query): Advance state to s_query_key after start. (a535258 Marcus Sundberg)
o Add hooks for host and port, and fill in authority struct. (1be3a0f Marcus Sundberg)
o (_evhtp_path_new): If len is 0 we set full to "/", just like path. (7d277f8 Marcus Sundberg)
o Do not use different API/ABI when regexps are disabled. (39fcb28 Marcus Sundberg)
o Fix warnings in test.c when EVHTP_DISABLE_REGEX is defined. (05b01cf Marcus Sundberg)
o Add keepalive flag to connection. (74031a7 Marcus Sundberg)
o Add evhtp_hook_on_conn_error hook for connection errors. (6c3ed3d Marcus Sundberg)
o Added the function evhtp_connection_new_dns(). (47eecd0 Jan Edhner)
o (evhtp_connection_new_dns): Handle errors. (b13994b Marcus Sundberg)
o (evhtp_connection_new): Handle IPv6 addresses. (ac97672 Marcus Sundberg)
o (_evhtp_create_headers): Use evbuffer_expand() to reserve space. (c4ed326 Marcus Sundberg)
o Use malloc() instead of calloc() for buffers we will immediately fill. (3906a65 Marcus Sundberg)
o added padding for all structs containing bitfields (a2ebece Mark Ellzey)
o Update evthr.c (1d492cc romange)
o Cleanup, use EVHTP_DISABLE_SSL for client (c32562a Mark Ellzey)
o Various fixes, see full commit message (d8a4935 Mark Ellzey)
o Added evhp_set_flags along with some documentation (27b5e8a Mark Ellzey)
o Symbol exports moved into headers, more documentation (352aebe Mark Ellzey)
o If available, use c99 to our advantage (read commit msg) (8a44e6f Mark Ellzey)
o Remove duplicate evbuffer_new for buffer_in (5284ce3 Mark Ellzey)
o Fix for client connect double-free condition (5267ed2 Mark Ellzey)
o Don't set conn->bev to NULL if error (ce2197e Mark Ellzey)
o Use new and faster wildcard matching function. (4047f1e Mark Ellzey)
o Integer to string optimizations. (4189bfa Mark Ellzey)
o Export the numtoa functions. (037c766 Mark Ellzey)
o Disable unused tailq for client requests (for future use in pipelined) (3516276 Mark Ellzey)
o More conversions from free to safe_free (05fd68c Mark Ellzey)
v1.2.9
o Accept upper-case "Chunked" in addition to "chunked" for transfer encoding. (07a9322 Tim Burks)
o [htparse] Added length checks for various header values (42050e8 Mark Ellzey)
o Fix up some compiler warnings. (37e0c4e Mark Ellzey)
o Use snprintf for resp hdrs, fallback to evbuffer_add_printf (c27ac5a Mark Ellzey)
o status_code_to_str no longer uses RB lookups (d143a85 Mark Ellzey)
o Don't call bufferevent_set_timeouts read/write NULL (f372d9c Mark Ellzey)
o add 'libdir' support (3b7e250 Christian)
o Add INCLUDE_INSTALL_DIR support (19cab6f Mark Ellzey)
o Add back in tree.h (0f69673 Mark Ellzey)
o Fix a segfault in regex handling (d1a4240 f69m)
o Formatting cleanup (c0c2055 Mark Ellzey)
o No need for sys/tree include (0d3619f Mark Ellzey)
v1.2.8
o There's no libdl on FreeBSD. (a683a1f Adrian Chadd)
o FreeBSD handles the POSIX_C_SOURCE definition very strictly - strncmp() and a lot of other stuff isn't defined in the 2001 standards.
Thus, the functions aren't declared when you include the library headers. (0354a67 Adrian Chadd)
v1.2.7
o Fix double free for evthr at shutdown (a2c2826 Azat Khuzhin)
o Workaround for odd recv()'s being done when not requested. (2abd591 Mark Ellzey)
o Only return from BEV_EOF|READ if errno is EAGAIN (00eef42 Mark Ellzey)
o Add connection-specific rate-limiting function. (32f4115 Mark Ellzey)
o Fix compilation without threads support (104eafd Janusz Dziemidowicz)
o Fix compilation without regex support (a71c736 Janusz Dziemidowicz)
o Fix crash when unable to bind socket with TCP deferred accept (60f9d71 Janusz Dziemidowicz)
o Add missing call to SSL_CTX_free() in evhtp_free(). (891d0cf Janusz Dziemidowicz)
o Malloc with 1 instead of sizeof(char) to avoid warnings (de445f7 Mark Ellzey)
o Don't check for bevssl if EVHTP_DISABLE_SSL enabled (9369afc Mark Ellzey)
o Use SSL_OP_NO_COMPRESSION if possible (2b714c5 Janusz Dziemidowicz)
o Support for DH parameters file (3d22d56 Janusz Dziemidowicz)
o Use proper #ifndef for ECDH (OPENSSL_NO_ECDH instead of OPENSSL_NO_EC) (35c21c4 Janusz Dziemidowicz)
o Build evhtp-config.h to make things easier to link (77552e4 Mark Ellzey)
o Undef optional flags as to not screw things up (374a269 Mark Ellzey)
o Disable OpenSSL support if libevent_ssl is not found (820d314 Mark Ellzey)
o Clean up unused variables in onig (2d38112 Mark Ellzey)
v1.2.6
o Add connection-specific rate-limiting function. (d0caf82 Mark Ellzey)
o Fix double free for evthr at shutdown (a514e80 Azat Khuzhin)
v1.2.5
o Port to MinGW (b0bd094 poet)
o Only check for 100-continue is enabled for servers, not clients. (0cea847 Mark Ellzey)
o Only decrement the thread backlog if it is a server. (ceb1e60 Mark Ellzey)
o Use MSYS Makefiles instead of MinGW Makefiles (fd6ae5d poetwang)
v1.2.4
o run on_headers_begin if request type is response (this happens when a 100 continue type thing happens). (c3775e0 Mark Ellzey)
v1.2.3
o Added evhtp_disable_100_continue() which informs evhtp to not send a 100 continue response. (1d0eb84 Mark Ellzey)
v1.2.1
o Add signal.h as reported by gnehzuil (1ac8706 Mark Ellzey)
o evthr_*set_backlog for SO_RCVBUF sockopts (93f35d9 Mark Ellzey)
o SO_RCVBUF should be multiple of sizeof(evthr_cmd_t) (32bd829 Mark Ellzey)
o Install regex header if enabled (6d61db4 Mark Ellzey)
o Fix missing symbol SIGTERM by including signal.h (c449ad8 Dennis van Dok)
o Examples will only built if "make examples" is run. (2abe24f Mark Ellzey)
o Fixed enum typedef issue reported by scott-- (fee4166 Mark Ellzey)
o Use system onig if avail, install includes in include/evthr (56067a9 Mark Ellzey)
o Added evhtp_request_status() to get client response code. (9008a0f Mark Ellzey)
o Removed unused code. (a7dabaa Mark Ellzey)
v1.2.0
o Initial client API (0bd23c9 Mark Ellzey)
o updating test_client.c (b53f25f Mark Ellzey)
o Added sample chunk callbacks for client (849bddb Mark Ellzey)
o Updating test_client.c (081bcfe Mark Ellzey)
o Merge from master fixups (97bf2d1 Aaron Stone)
o Add test_proxy: example code for using evhtp_client functionality to implement an HTTP reverse proxy. (73fdd0c Aaron Stone)
o Add evhtp_kvs_add_kvs / evhtp_headers_add_headers to copy headers from source to dest. (b0aefd4 Aaron Stone)
o Update test_proxy: pause the frontend request while processing the backend request; pass headers through with evhtp_headers_add_he
o Accept requests like <method> <protocol>://<host> <http version> That is, without an extra / after the host. Consider the path as
o Enable search engine for Doxygen. (fa4c9cc Mark Ellzey)
o Fixed bug in body-based query checking. (8635b2b Mark Ellzey)
o use EVHTP_DISABLE_SSL instead of USE_SSL (5052107 Mark Ellzey)
o Fix some generic warnings in test_proxy.c (de206a8 Mark Ellzey)
o Add documentation on fallthrough state for method proto. (c1f5216 Mark Ellzey)
o (htparse): Properly propagate errors from hook_on_hdrs_begin_run() (1bb641f Marcus Sundberg)
o (htparse): Use correct arguments to hook_path_run(). (8aaa419 Marcus Sundberg)
o (htparse): Use correct length parameter when calling hooks. (51f78e4 Marcus Sundberg)
o (htparse): Handle query parameters according to RFC 3986. (0e7bdcd Marcus Sundberg)
o (htparse): Properly handle abolute-URI with empty path. (657fe3b Marcus Sundberg)
o (htparse): Use correct arguments to hook_port_run(). (1f60434 Marcus Sundberg)
o (htparse): Handle literal IPv6 addresses in URIs. (b495e81 Marcus Sundberg)
o (htparse): Fix parsing of ftp and nfs schemes. (9f53ee5 Marcus Sundberg)
o (htparse): Avoid memset()ing entire parse buffer on init. (6f1b93f Marcus Sundberg)
o (htparse): Add support for CONNECT and PATCH methods. (622256b Marcus Sundberg)
o Changed host_ipv6_done state to host_done (93e4f0f Mark Ellzey)
o Fixes for multiple requests, new htparse tests (59de92a Mark Ellzey)
o evhtp_free now frees all associated callbacks. (34b4261 Mark Ellzey)
o Error checking for header_val_add() (c8165a0 Mark Ellzey)
o Fix memory leak on hdr_val (a3ccc1e Mark Ellzey)
o Added htparser test for empty header keys. (d5c640a Mark Ellzey)
o parser fixes / deal with paused responses better. (9d8e243 Mark Ellzey)
o Request pausing + threading fixes. (0e774db Mark Ellzey)
o Fix format warnings for test_client (680bce6 Mark Ellzey)
o rm cruft that got merged in that shouldn't have. (4289914 Mark Ellzey)
o Apprently rm'd some critical things, added them back in. (9052e56 Mark Ellzey)
o Added -DEVHTP_BUILD_SHARED:STRING=[OFF:ON] (4da6965 Mark Ellzey)
o Removed old contrib crap. (cb62ca0 Mark Ellzey)
o Fixing the -DEVHTP_BUILD_SHARED:STRING=ON option to only build static-builds or dynamic-builds when set. Avoid mixing and also the
o Fix for issues/69 for evthr memset() (f471298 Mark Ellzey)
o Browsers can send more trailing data after the application/x-www-form-urlencoded content type, for example, which charset is used.
o get_content_len now returns non-modified content_len var (bb6cdac Mark Ellzey)
o Added htparser_get_content_pending for fetching bytes left to process. (28710f8 Mark Ellzey)
v1.1.7
o NULL check for evhtp_kvs_for_each (37f3864 Mark Ellzey)
o Parse body as the query args if content-type is url-encoded. (ee25209 Mark Ellzey)
o Added a write hook. (c32c0ed Mark Ellzey)
v1.1.6
o Added __cplusplus into evthr (31e3973 Mark Ellzey)
o Use evhtp_hook_generic_cb function pointer prototype when setting a hook (59f01f3 Gian-Paolo Musumeci)
o ISO C fixes. (d1627f7 Mark Ellzey)
o ISO C fixes. (5be2662 Mark Ellzey)
o Renaming evhtp_hook_generic_cb to evhtp_hook, more ISO compliance. (60b3502 Mark Ellzey)
o Removing strict flags from BaseConfig. (bdc6265 Mark Ellzey)
v1.1.5
o Don't treat non hex chars as errors. (d8c584d Mark Ellzey)
o If non hex, replace idx-1 with % (2783983 Mark Ellzey)
o Fix off-by-one in parse_query. (86881c1 Mark Ellzey)
o Do not use dynamically allocated timevals in evhtp_t. (3398442 Marcus Sundberg)
o Only initialize status_code_tree once. (da64395 Marcus Sundberg)
o Add evhtp_free() matching evhtp_new(). (60b141a Marcus Sundberg)
o (evhtp_callback_free): Free hooks as well, if set. (6fff598 Marcus Sundberg)
o (evhtp_callback_free): Free regexp pointer, not only regexp. (ab9adc6 Marcus Sundberg)
o (evthr_pool_stop): Do not read queue entry after freeing. (f7cc5f2 Marcus Sundberg)
o Use TAILQ_FOREACH_SAFE() in evhthr_pool_free() as well. (5c2adcc Marcus Sundberg)
o (evhtp_free): Stop and free thread pool, if started. (f13c207 Marcus Sundberg)
o Use libevent signal handling instead of signal() in test.c (e0b68b4 Marcus Sundberg)
o Properly deallocate resources in test programs. (ea1bd57 Marcus Sundberg)
o Add test_vhost to .gitignore (2a596c2 Marcus Sundberg)
o Fix issue where SSL is not disabled if not found. (6f25292 Mark Ellzey)
o Forgot LIBEVENT_OPENSSL_LIBRARY (5a933c7 Mark Ellzey)
o add upport multiline header values. (325c5c7 Mark Ellzey)
v1.1.4
o Fixed potential deadlock - reported by zhangpeihao (36ee722 Mark Ellzey)
o Removing conflicting code from master branch. (51feaa9 Mark Ellzey)
o Assure SSL is disabled if not found. (d4f3f35 Mark Ellzey)
v1.1.3
o Added evhtp_unbind_socket() (9c9b508 Mark Ellzey)
o Fixed issue with query argument decoding. (8ff9cf3 Mark Ellzey)
o Fix issue 53, error on LF without CR's (d51b526 Mark Ellzey)
v1.1.2
o Manual verification modes for SNI vhosts. (5f9b3a5 Mark Ellzey)
v1.1.1
o Added max-body functionality. (7f0052a Mark Ellzey)
o Added evhtp_set_max_keepalive_requests() (503ef28 Mark Ellzey)
o inherit parent settings when adding vhosts. (c66161b Mark Ellzey)
o Check for NULL before request status switch/case (f943a41 Mark Ellzey)
o call tlsext_servername_callback in bind_sockaddr (d1b5433 Mark Ellzey)
o Swap callback finder for path+file first. (2c30003 Mark Ellzey)
o Disable BEV_WRITE when htparser_run() is active (414814a Mark Ellzey)
v1.1.0
o Add ability for rules to be ordered. (ad8c468 Mark Ellzey)
o Cleanup the old rule code. (fbfda73 Mark Ellzey)
o Fixed missing variable in callback_find (4eb5e87 Mark Ellzey)
v1.0.1
o Fixes to make coverity happy. (6776d85 Mark Ellzey)
o Add support for empty header values. (7ec160f Mark Ellzey)
v1.0.0
o Added some function documentation. (adc3ac6 Mark Ellzey)
o Check for null deref on request check. (a722fc4 Mark Ellzey)
o Fix for state set override for headers. (87fb859 Mark Ellzey)
o No need for null checks before free(). (7783ca2 Mark Ellzey)
o Bumping this up to 1.0.0 since it's been in production for a while.
v0.4.17
o Added cmake option for disabling regex. (5ab2e4b Mark Ellzey)
o Cleanup compiler warnings. (770a344 Mark Ellzey)
o Fixed EVHTP_DISABLE_SSL compile. (e088f2b Mark Ellzey)
v0.4.16
o Use POSIX 200112 for *NIX based builds. (09dbb0f Mark Ellzey)
o Drain before letting ownership change. (cc50f84 Mark Ellzey)
o jfkdal (5817bd3 Mark Ellzey)
o Document evhtp_set_timeouts(). (acc3ed2 Mark Ellzey)
v0.4.15
o Override global timeouts on a per-connection basis. (156f5ef Mark Ellzey)
o Use evhtp_connection_set_timeouts in accept. (8eb5aa9 Mark Ellzey)
o Remove use for alloca.h (339f9f2 Mark Ellzey)
o Added a max-backlog for evthr/pools (e8ac1f9 Mark Ellzey)
o Added evthr max backlog options. (a44d1c0 Mark Ellzey)
o Initial commit of vhost feature. (8fb43e0 Mark Ellzey)
o SSL SNI support. (4dcc68e Mark Ellzey)
o Added test_vhost.c (c5a698e Mark Ellzey)
o _evhtp_ssl_servername now uses wildcard matching. (00d0488 Mark Ellzey)
o Added vhost aliases functionality. (bf5766f Mark Ellzey)
o Readd inc/dec counter for evthr. (022ecf3 Mark Ellzey)
o Make evhtp_request_free public. (9046466 Mark Ellzey)
o Added a EVHTP_RES_USER evhtp_res type. (6b41cee Mark Ellzey)
o Add support for ECDH ciphers (via cfg->named_curve string) (131cae3 b)
o finding cbs/hook additions, hostname parse hooks (361a068 Mark Ellzey)
o Optimizations. (caddf10 Mark Ellzey)
o hook_on_hdrs_complete runs before last LF (2f77428 Mark Ellzey)
v0.4.14
o Added example and documentation on proper thread-safe design with evhtp. (154017e Mark Ellzey)
o Added glob/wildcard callback patterns. (d33a416 Mark Ellzey)
o Fixed issue with path matching. (d0648ff Mark Ellzey)
v0.4.13
o Decrement pending count when defer fails. (4e99de9 Mark Ellzey)
o Updating documentation to say there is not much documentation. (184f33e Mark Ellzey)
v0.4.11
o Added #ifndef EVHTP_DISABLE_EVTHR flags for compilation withotu threading support (d5bcc33 Thibaut Le Guilly)
o Modify evthr_lock() macro previous patch for less ifdefs. (c800fe9 Mark Ellzey)
o Took out more disable thread ifdefs. (b5de21e Mark Ellzey)
o Remove use of bev_flush for evhtp_send_reply_end (9f2f31f Mark Ellzey)
o Modify evthr_lock() macro previous patch for less ifdefs. (aa24e6a Mark Ellzey)
o Took out more disable thread ifdefs. (accbe88 Mark Ellzey)
o Bugfixes, additions, cleanup, see full commit msg. (e6155d8 Mark Ellzey)
o Added evhtp_set_bev_flags() (a342903 Mark Ellzey)
o Prep release v0.4.12 (acda3c8 Mark Ellzey)
v0.4.10
o Add compile time EVHTP_DISABLE_REGEX option. (eab0d0f Andy Hochhaus)
o Use evbuffer_add in lieu of add_reference for short writes. (2df5fbd Joe Nardone)
o Added take_ownership functionality which frees resources but gives the underlying bufferevent to the caller. (75050f8 Mark Ellzey)
o Release v0.4.11 (5d6339f Mark Ellzey)
v0.4.9
o Fixed memleak with evthr_free() (10ad15a Mark Ellzey)
o Correct SSL_Shutdown() usage. (f5f97ee Mark Ellzey)
o Added total bytes read function in htparser. (4a9eefb Mark Ellzey)
o Added rate-limiting option in test.c (b9e10c1 Mark Ellzey)
o Don't add aux headers if content-type is multipart. (6be91ca Mark Ellzey)
o Removed silly compile-time flags for OSX (0dd14a9 Mark Ellzey)
o Ignore deprecated ssl warnings on OSX until further notice. (0aa4fb6 Mark Ellzey)
o Prep release v0.4.10 (60d0f25 Mark Ellzey)
v0.4.8
o Fix for non-system strndup. (d7486b4 Mark Ellzey)
o Prepping release v0.4.9 (4ef6362 Mark Ellzey)
v0.4.7
o Place _evhtp_run_pre_accept() into _evhtp_connection_accept() (e45adbd Mark Ellzey)
o pre_accept_cb argument changes. (c2fbb86 Mark Ellzey)
o Fixed test.c for pre_accept changes. (671a911 Mark Ellzey)
o testing client ssl socket error log for debugging. (265437b Mark Ellzey)
o Remove some extra logging. (dd45fb8 Mark Ellzey)
o SSL client error handling debugging. (5c26eaf Mark Ellzey)
o err (8f5013e Mark Ellzey)
o removed some dbg msgs (84bec53 Mark Ellzey)
o adding error to connection on eventcb (0c9690c Mark Ellzey)
o Remove debug abort. (ca8089f Mark Ellzey)
o Remove debug msg. (9a41148 Mark Ellzey)
o Prepping release v0.4.8 (c140e2f Mark Ellzey)
v0.4.6
o Fix to be able to set a verification "mode" to the SSL_CTX_set_verify() function without having to set a custom (*verify_callback). (f3c3f37 Oscar Koeroo)
o Allow SSL_CTX_set_timeout value to be passed in via config. (4f775bd Stephen Cox)
o Fixed issue with _evhtp_request_parser_path with no matched callbacks where the end offset was never being set. (Reported by [email protected]) (0d20de9 Mark Ellzey)
o evhtp_parse_query() is no longer limited to 1024 byte key/val (a8179a2 Mark Ellzey)
o set request status to PAUSE if evhtp_request_pause() is called manually. (4d64111 Mark Ellzey)
o Prepping release v0.4.7 (12d7cc4 Mark Ellzey)
v0.4.5
o Don't treat EOF eventcb flags for ssl enabled connections as errors. (49c98b1 Mark Ellzey)
o Add HTTP/1.1 chunked encoding interface. (69a29d3 Andy Hochhaus)
o Added test-case for chunking API usage. (939517a Mark Ellzey)
o Chunk API modifications, formatting cleanup. (b805dbd Mark Ellzey)
o Added SSL_CTX_set_timeout() for openssl >= 1.0 (e6fa029 Mark Ellzey)
o Prepping release 0.4.6 (81c493d Mark Ellzey)
v0.4.3
o Added api docs (57370c1 Mark Ellzey)
o Added various accessor functions, see full commitlog (16d3fdc Mark Ellzey)
o Added evhtp_request_get_connection() (db1f023 Mark Ellzey)
o Moved callback locking as optional via evhtp_use_callback_locks() (7a028eb Mark Ellzey)
o Removing API docs. Generate yourself! (5bc036d Mark Ellzey)
o added local PF_UNIX socket listen support (f6ef167 Mark Ellzey)
o Adding sys/un.h checks. (6ec70e5 Mark Ellzey)
o Added evhtp_bind_sockaddr() (8f38b01 Mark Ellzey)
o Add a .gitignore file (09ac468 Nick Mathewson)
o Stop using the deprecated event.h; use event2/event.h instead (c60715d Nick Mathewson)
o Set -fno-strict-aliasing using gcc (4a43c0b Mark Ellzey)
o Picked DISABLE_SSL fixes from nmathewson into develop (b2bfb2f Mark Ellzey)
o Detect non-ascii hosts and refuse to build on them (b0c2267 Nick Mathewson)
o Eliminate use of ctype.h (7d0084e Nick Mathewson)
o Add checks for sys/queue.h and use compat when missing (f05b54a Mark Ellzey)
o compat queue.h BSD-only move. (2b49db6 Mark Ellzey)
o Removed README and added changelog generator. (219f2eb Mark Ellzey)
o Prepping release v0.4.4 (d335798 Mark Ellzey)
o ChangeLog for v0.4.4 (c5c6d19 Mark Ellzey)
o Fixing size_t printf format issues. (c75bc5b Mark Ellzey)
o Added support for the -C option in the test.c The internals were there, it just covers the getops. (e3636d5 Oscar Koeroo)
o The struct evhtp_connection_s has a member ssl_ctx of type evhtp_ssl_t (a typedef of an SSL*) which by name is confusing with respect to the evhtp_ssl_ctx_t (a typedef of an SSL_CTX*). The member of struct evhtp_connection_s is now rename from ssl_ctx to ssl. (ca42b4d Oscar Koeroo)
o Initial markdown-based API documentation. (c16b551 Mark Ellzey)
o Documentation updates. (f097558 Mark Ellzey)
o Documentation updates (98c8ff0 Mark Ellzey)
o Added evhtp_unescape_string() to unescape query type strings. (d75904f Mark Ellzey)
o added on_headers_start hook (before header parsing, post requestline parsing). (7076b8e Mark Ellzey)
o Added htparser_set_(major|minor). fixed edgecase where major/minor is not yet set. (137aa19 Mark Ellzey)
o Fix C++/clang++ build. (af2a0dd Andy Hochhaus)
o Added #ifndef _GNU_SOURCE before setting it again. (f8a2308 Mark Ellzey)
o Changes to DISABLE to EVHTP_DISABLE, also fixed enum hook missing from last merge. (0ab23de Mark Ellzey)
o inline enum's should not be static. (5efd199 Mark Ellzey)
o Set libevent as a required dependency (d08f4fd Mark Ellzey)
o Prepping release v0.4.5 (a3731d7 Mark Ellzey)
v0.4.2
o Moving libhtparse to just htparse (bf2e43a Mark Ellzey)
o Thread-safe add/remove callback additions. (d916366 Mark Ellzey)
o strn* compat functions set to static (cab9503 Mark Ellzey)
o Fixed issue with OPTIONS requests. (a3487fd Mark Ellzey)
o arg parsing fixes (8627d0d Mark Ellzey)
o Added a basic example (c06ef72 Mark Ellzey)
o Added IPv6 listener support. (c1482a2 Mark Ellzey)
o Prepping release v0.4.3 (952baa9 Mark Ellzey)
v0.4.1
o Removing tabs from ChangeLog (3f6f220 Mark Ellzey)
o Add checks for sys/tree.h and compat when missing (40c87e5 Jason L. Shiffer)
o Fix strdup build warnings/errors on OSX (84e17c1 Jason L. Shiffer)
o SSL Threading changes (2631e7f Mark Ellzey)
o Increasing the parser stack size. (b0df5a8 Mark Ellzey)
o Added chunk hooking stuff. (2bcba66 Mark Ellzey)
o jfdsla (1fa36b9 Mark Ellzey)
o x509 updates (089bd8a Mark Ellzey)
o Revert "x509 updates" (2cc9195 Mark Ellzey)
o Add checks for sys/tree.h and compat when missing (8fa7e11 Jason L. Shiffer)
o Fix strdup build warnings/errors on OSX (95cbcf3 Jason L. Shiffer)
o Reworked SSL Thread initialization (38aee17 Mark Ellzey)
o Increased default stack limit in htparse (48f338a Mark Ellzey)
o chunk hooks, proper status code strings. (dbca386 Mark Ellzey)
o Moved ./libhtparse to ./htparse (44c77d3 Mark Ellzey)
o Prepping release v0.4.2 (815b023 Mark Ellzey)
v0.4.0
o Deal with 100 return status with responses correctly (bb86d09 Mark Ellzey)
o more 100 fixes (3ef168a Mark Ellzey)
o hert pup (a637672 Mark Ellzey)
o updates (83abb12 Mark Ellzey)
o Adding struct sockaddr to connection_t (45c30c7 Mark Ellzey)
o Swapping around SSL init globals (3327f44 Mark Ellzey)
o Adding -lpthread for thread enabled configuration (80fff45 Mark Ellzey)
o Added include_dir for libevent pathing (4c6dbc2 Mark Ellzey)
o turn off compression by default (6244108 Mark Ellzey)
o Cleanup (275329a Mark Ellzey)
o static again (8796e10 Mark Ellzey)
o testing timeouts (ac70f3c Mark Ellzey)
o fix (1aa2d79 Mark Ellzey)
o more timeout tests (7f29ff6 Mark Ellzey)
o SSL 1.x optimizations / timeouts (b693c7f Mark Ellzey)
o Adding LICENSE (c1ba152 Mark Ellzey)
o blerp (1623480 Mark Ellzey)
o hrm (964aab3 Mark Ellzey)
o added backlog arg to evhtp_bind_socket() (584e73e Mark Ellzey)
o Adding backlog to bufferevent (c740b0c Mark Ellzey)
o blerp (7c8fe61 Mark Ellzey)
o htparser fix (c76e3ea Mark Ellzey)
o Re-added user-set timeouts (ec246ff Mark Ellzey)
o Changing static len checks with sizeof() (7c3a79f Mark Ellzey)
o Fixed over/underflow condition in str_to_uint64 (c72deee Mark Ellzey)
o Fixed issue with state transition into read_body (0fc1897 Mark Ellzey)
o added static rt (1910c19 Mark Ellzey)
o Fixed incorrect integer conversion which misses zero edge case. (c562ede Mark Ellzey)
o Added correct status code string definitions. (a5bc03d Mark Ellzey)
o Include RT and DL if avail when linking test. SSL needs them. (29e35fb Mark Ellzey)
o default cb now returns 404 (fd4e3cb Mark Ellzey)
o Prepping release v0.4.1 (246a5da Mark Ellzey)
v0.3.7
o linking ChangeLog to README (4da3a26 Mark Ellzey)
o updated htparse (1706b82 Mark Ellzey)
o removing cruft (ac3b4f4 Mark Ellzey)
o killkillkill (45d0dfa Mark Ellzey)
o More logical structure (3ee2531 Mark Ellzey)
o cleanup (f7e3af2 Mark Ellzey)
o blerp (2833315 Mark Ellzey)
o getting better (6daf3ca Mark Ellzey)
o Request pipeline now functional. (99554e3 Mark Ellzey)
o derpityderp (1bd1b4e Mark Ellzey)
o cruft (45e5a33 Mark Ellzey)
o Fixed an issue with the body parser callback (f130965 Mark Ellzey)
o Major cleanup / re-factor (0752eef Mark Ellzey)
o fixups (0cc0980 Mark Ellzey)
o Added some more documentation (56c08d6 Mark Ellzey)
o documentation updates (3715c81 Mark Ellzey)
o Added better functionality, more docs - see full commit log (8a8e555 Mark Ellzey)
o Added Basic reply functions (b5434de Mark Ellzey)
o More updates - perf updates - bug fixes (0b050cc Mark Ellzey)
o updating ssl and test.c (37191f9 Mark Ellzey)
o bugfix in kv_add (3a18380 Mark Ellzey)
o pausing / fixes / request and connection fini hooks (3e98351 Mark Ellzey)
o fixed all the pause issues.. (658650e Mark Ellzey)
o threading fixes (97f18c5 Mark Ellzey)
o some optimizations (6a747c6 Mark Ellzey)
o blerp (f04c39a Mark Ellzey)
o Added CA Path option for ssl_cfg. (Thanks Oscar Koeroo) (8ace875 Mark Ellzey)
o Added x509_verify_cb, max_verify_depth, verify_peer and store_flags option to the struct evhtp_ssl_cfg_s. And also added HTTP return code 418 (e92e882 Oscar Koeroo)
o Adding dummy callbacks and values to the test.c program. (e703100 Oscar Koeroo)
o max_verify_depth -> verify_depth (556d722 Mark Ellzey)
o OSX Compat / fixes (e844f9a Mark Ellzey)
o cleanup (f7f25ef Mark Ellzey)
o docs, cleanup (022d424 Mark Ellzey)
o created verify and verify depth callbacks types (instead of using void *) (8a2f6d8 Mark Ellzey)
o cleanup (aee4707 Mark Ellzey)
o HTTP response parsing in libhtparser (6855a08 Mark Ellzey)
o fix with evthr (d4a63d8 Mark Ellzey)
o Added htparser_get_status (dae487a Mark Ellzey)
o fixes (7c6f5ab Mark Ellzey)
o send_reply start/body/end (33bfade Mark Ellzey)
o thread initialization functionality (362f902 Mark Ellzey)
o Content-Length duplicate header fix (8f74408 Mark Ellzey)
o Added chunk_complete and chunks_complete callback hooks (f391855 Mark Ellzey)
o Added some documentation (7853017 Mark Ellzey)
o fixed issue with bufferevent SSL events (a34b413 Mark Ellzey)
o on_new_chunk bugfix (de39114 Mark Ellzey)
o Additions for HTTP/1.1 / other additions / fixes (f865ff4 Mark Ellzey)
o Fixed conditional bug (c5c4aa4 Mark Ellzey)
o fixed some bugs dealing with parsing and schemes (258cbec Mark Ellzey)
o SSL shutdown / bugfixes / see commit log (c850692 Mark Ellzey)
o Making static (add8058 Mark Ellzey)
o linking ChangeLog to README (61866b8 Mark Ellzey)
o fixes, docs, features: (see full commit log) (01e61e2 Mark Ellzey)
o SSL updates (see full commit log) (b3cfb24 Mark Ellzey)
o bugfix in kv_add (ed5699e Mark Ellzey)
o Hook macros, fixes, additions (see full commit log) (ef3fee3 Mark Ellzey)
o Added CA Path option for ssl_cfg. (Thanks Oscar Koeroo) (7b79640 Mark Ellzey)
o SSL verification configuration options (62c07ff Oscar Koeroo)
o OSX Compatability fixes (955133d Mark Ellzey)
o Created verify and verify depth callbacks types (instead of using void *) (a2a0f09 Mark Ellzey)
o HTTP response parsing in libhtparser (29ac2e7 Mark Ellzey)
o evthr bugfix in evthr_new() args (17aede7 Mark Ellzey)
o Added htparser_get_status to libhtparse (7b16bd1 Mark Ellzey)
o Added streaming reply functionality (f0a8ed3 Mark Ellzey)
o thread initialization functionality (78a6863 Mark Ellzey)
o Content-Length duplicate header fix (b7d283f Mark Ellzey)
o Additional libevhtparse chunk-specific hooks and documentation. (c0c6e59 Mark Ellzey)
o fixed issue with bufferevent SSL events (fbe3c8b Mark Ellzey)
o libhtparse on_new_chunk bugfix (d352dd1 Mark Ellzey)
o Additions for HTTP/1.1 / other additions / fixes (c2883eb Mark Ellzey)
o Fixed conditional bug for chunked responses (b159c32 Mark Ellzey)
o libhtparse fixes when dealing with requests with schema data. (efdc171 Mark Ellzey)
o SSL shutdown / bugfixes / see commit log (482d0bd Mark Ellzey)
o Modified so that libevhtp creates a static library instead of shared. (ba170f1 Mark Ellzey)
o Rebase fix for htparser_init() (ce446b0 Mark Ellzey)
o Updating for release 0.4.0 (872c243 Mark Ellzey)
v0.3.6
o Matched callback hooking (5b385a6 Mark Ellzey)
o Drop connection with invalid requests. (e4cd611 Mark Ellzey)
o added some more requests accessors (d9cf7d5 Mark Ellzey)
o added a finished hook (c04e61b Mark Ellzey)
o added evhtp_request_set_cbargs() (28a22dd Mark Ellzey)
o Bunch of stuff - see full commit message. (ae49ecf Mark Ellzey)
o If compiling as debug, http-parser will be pre-processed then compiled. (easier to debug the shitty and unnecessary macro-based function prototypes). (c378db3 Mark Ellzey)
o Mods to pass -Wextra (2b44c46 Mark Ellzey)
o More -Wextra mods (f2d6c9e Mark Ellzey)
o a bit broken (17d1572 Mark Ellzey)
o adding gitignore (b8eba44 Mark Ellzey)
o Removing dep for http_parser over to my libhtparse codebase (11b484e Mark Ellzey)
o Adding libhtparse.... (dd61c20 Mark Ellzey)
o Prepping release v0.3.7 (64db298 Mark Ellzey)
v0.3.5
o Added various SSL information accessors (8db938e Mark Ellzey)
o evhtp_hdr functions / default 404 cb / fixes (37dbe4f Mark Ellzey)
o Prepping the removal of submodules (354e71d Mark Ellzey)
o No more submodules (1e0ec98 Mark Ellzey)
o updating release_prep (5a5e495 Mark Ellzey)
o Prepping release v0.3.6 (e582c7c Mark Ellzey)
o Updated ChangeLog (03a8536 Mark Ellzey)
v0.3.4
o Added evhtp_set_regex_cb for matching URI with a regex. (99e8e64 Mark Ellzey)
o Adding oniguruma submodule (30adea5 Mark Ellzey)
o .. (2161264 Mark Ellzey)
o Switched over to oniguruma for regex (b80820b Mark Ellzey)
o updates (f2bb622 Mark Ellzey)
o httparser updates (1befd5c Mark Ellzey)
o make install rules, cleanup of dependencies (68cb269 Mark Ellzey)
o cmake onig test compile (75ede66 Mark Ellzey)
o Added find_callbacks_woffsets (0174055 Mark Ellzey)
o evhtp_request_t is now private. (c2cadcd Mark Ellzey)
o added various request accessors (6964387 Mark Ellzey)
o Even more evhtp_request_t accessors. (8c45457 Mark Ellzey)
o Better error / response handling. (6e869fc Mark Ellzey)
o Prepping release v0.3.5 (6a84efe Mark Ellzey)
v0.3.3
o SSL and other various changes (see commit log) (76dc58d Mark Ellzey)
o Added ChangeLog (33bab50 Mark Ellzey)
o Updated version information. (df80701 Mark Ellzey)
o Added contrib section with misc patches. (0b2bb36 Mark Ellzey)
o And place it in the right directory :) (e337cb7 Mark Ellzey)
o Fixing up problems with the conflict resolution (6a606a4 Mark Ellzey)
v0.3.2
o initial SSL support, junk is brizzoke (fbbc2fa Mark Ellzey)
o cleanup (57e309c Mark Ellzey)
o not working as intended, REBASE THIS JUNK (f645813 Mark Ellzey)
o SSL session caching. (590e226 Mark Ellzey)
o Adding a builtin cache (0e1d01e Mark Ellzey)
o Added SSL thread-safe functionality. (a9db78b Mark Ellzey)
o cleanup (6f71526 Mark Ellzey)
o Properly expire cache entries. (65f017b Mark Ellzey)
o Cleanup (edd1b44 Mark Ellzey)
o Prepping v0.3.3 (67307f1 Mark Ellzey)
v0.3.1
o Modifying to use bufferevents (0c4b22e Mark Ellzey)
o Converting back to bevents after perf issue solved (6771104 Mark Ellzey)
o Prepping release 0.3.2 (758bb16 Mark Ellzey)
v0.3.0
o Optional evthr support (5392bc9 Mark Ellzey)
o Prep v0.3.1 (8a6c836 Mark Ellzey)
o Prep release 0.3.1 (33f1a82 Mark Ellzey)