This repository has been archived by the owner on Jun 30, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 162
/
ChangeLog
884 lines (827 loc) · 50.3 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
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
v1.2.18
o Add htp__evbuffer_add_iovec_ helper for libevent < 2.1 (8991567 Nathan French)
o [#122] Fix compilation without deprecated OpenSSL 1.1 APIs (78e8e41 Rosen Penev)
o [#122] Reorganize OpenSSL < 1.0.0 compatibility for greater readability. (8e543fe Rosen Penev)
o [#123] add missing include <sys/types.h> for ssize_t (6a74ec7 maxice8)
o [#123] include sys/types only if EVHTP_HAS_SYS_TYPES is set (0839f8e Nathan French)
o [#122] cleanup for ssl locking changes (7d0fd5d Nathan French)
o better get0_notBefore ssl defs (8ae5cdd Nathan French)
o cleanup / optimization for iovec operations (874a225 Nathan French)
v1.2.17 (alpha/beta)
o [#111] assert frontends not compiled with -DNDEBUG (07d6f5f Nathan French)
o [#111] Remove asserts for alloc functions. (#112) (114bf53 Nathan French)
o [#108] do not include content-length with chunked (#113) (73255df Nathan French)
o [#114] Switch to using OpenSSL's thread API for 1.0.2 (c659caa Rosen Penev)
o [#119] allow out to report unescaped length (#119) (b2bc0b8 Derrick Lyndon Pallas)
o [#120] fix inclusion of config.h before internal.h (517256c Nathan French)
o [#114] update for older openssl compatability (c4abfa7 Nathan French)
o [#114] set locking callback fix (c63269a Nathan French)
o [PERF] use scatter/gather to construct HTTP reply header (c5e8dd0 Nathan French)
o [PERF] use scatter/gather for htp__create_headers_ (4191716 Nathan French)
o [#96] Fix cmake include dirs (b7df3fc Piotr Padlewski)
o Change case of oniguruma in package_deps (b8ff92b Piotr Padlewski)
o fix memory leak in evthr_free when compiled with EVHTP_THR_SHARED_PIPE (919e4ea t00416110)
o cleanups / added uncrustify configurations (d008f21 Nathan French)
o Feature/better thread distribution (#102) (1454b6c Nathan French)
o add content-length for client requests (fb1e594 Nathan French)
o add client buffer_out after headers (5c8640c Nathan French)
o added changelog release script (845c193 Nathan French)
o [unescape_string] do not set *out to NULL (reported by @ripulpatel) (606f3e3 Nathan French)
o http access-log API (a0a8641 Nathan French)
o fixed missing exported symbols for header_(new|find) (ec75536 Nathan French)
o access-log API finalization / cleanups and overhauls (5f74f32 Nathan French)
o evhtp_unescape_string tests (ae731f1 Nathan French)
o Added test of a on_connection_finished hook (5a17742 Nathan French)
o use evhtp_safe_free everywhere (cbafca7 Nathan French)
o free fix for test_query.c (77f20e6 Nathan French)
o [#76] keep consistent member type of struct evthr (aceb557 Nathan French)
o Additions to make life easier fetching status codes + examples (f1e015d Nathan French)
o Modernize CMake build (327bf14 Isaac Hier)
o Minor fixes (e802dde Isaac Hier)
o [#75] Update the request status in create_reply_ (9cbd30d Nathan French)
o Fix target_compile_definitions syntax (8629100 Isaac Hier)
o fix evhtp_set_max_body_size() not work. (da787e3 mlkt)
o Fix CMake install of top-level header (52a1ccd Isaac Hier)
o Fix thread header installation (678f9e2 Isaac Hier)
o Check for htp == NULL before setting max_body_size (b1d0c5f Nathan French)
o fix inclusion of sslutils.h into evhtp_dir_headers (f18f946 Nathan French)
o [#81] use mutex_destroy on refcount.h (bb94f81 Nathan French)
o Check the return of getsockname (8f3b3ec Nathan French)
o Fix for eutils / fix off-by-one in htparser_get_strerror (09c07d2 Nathan French)
o [#84] fix for hanging connections via resumption. (b8d5aad Nathan French)
o [#84] include <event.h> for older versions of libevent (182112d Nathan French)
o Default to deferred callbacks / extensive resumtion logic (0dcd054 Nathan French)
o [#84] Cleanup and formatting for develop merge (c728ccc Nathan French)
o cbpf_scheduling (2a8b801 Nathan French)
o Adding gittr to README (7ed9a42 Nathan French)
o Added travis.ci gitter webhook. (5de5709 Nathan French)
o [#90] evhtp_kv_free checks for just 1 then frees. Documentation updated (d9a40c0 Nathan French)
o This disables the socket locality tests for now (027c518 Nathan French)
o remove the -D for compile_definitions (9970980 Nathan French)
o [#95] Fixes ignored return for s_body_read in parser.c (3fa62bf Nathan French)
o broke out customized assertion functions (823a32f Nathan French)
v1.2.16
o Added various SSL utility functions (ab190e1 Nathan French)
o Fix compilation with shared libraries (6075565 Vincent Bernat)
o Extensive example of streaming data without hogging memory (8f50b83 Nathan French)
o Added EVHTP_FLAG_ENABLE_ALL to enable all socket flags (756a7e2 Nathan French)
o only warn if setsockopt fails on EOPNOTSUPP (e5a3bdf Nathan French)
o sslutil API updates [documentation / parsers / x-hdr helpers] (22207ad Nathan French)
o OpenSSL 1.1.0 updates (load_*/_init/_add*) (3819073 Nathan French)
o example_https_server now uses htp_sslutil_verify2opts (086afd1 Nathan French)
o added example_https_client.c (933febf Nathan French)
o [#69] Fix potential out of bound write to p->buf (8b68657 Nathan French)
o [#72] Fix for oob read from htparser_get_strerror (75574ba Nathan French)
o [#70] Do not disable EV_WRITE when pausing requests; The assumption
that libevent would automatically start transferring pending data was
wrong. (4cb782db77 Ultima1252)
v1.2.15
o deprecated unset_hook and set_hook / cleanup (f1d2bd1 Nathan French)
o updated travis configuration (45003e1 Nathan French)
o Latest revision to support multiple SSL versions (4e353ba Tony Lambiris)
o remove silly comment (d3da401 Nathan French)
o check for errors in SSL RAND_(poll|bytes) calls (018dec8 Nathan French)
o Added new virtualhost examples and functions (3467382 Nathan French)
o added example request pausing app (282a1c9 Nathan French)
o Added a more extensive SSL sandbox. (1e0c241 Nathan French)
o Add examples/https/README (6ecf7e7 Nathan French)
o exit failure in example_https when SSL is disabled (0848e08 Nathan French)
o [#26] Use SSL_CTX_use_certificate_chain_file (4c4eb3a Nathan French)
v1.2.14 - !!!! SECURITY UPDATE !!!!
o Added doxygen tags. Updated Doxyfile to include more sources and headers. (50ab41d Dan Henderson)
o SSL logging on handshake errors (0fff6bc Nathan French)
o Remove built-in Oniguruma, now rely on system only (a31601c Nathan French)
o FindLibevent now displays all deps (02a9e6c Nathan French)
* THIS IS PRIMARILY A SECURITY UPDATE:
Oniguruma (the regex library used by libevhtp) was packaged with the source;
this was dumb. There were several CVE's recently published that made evhtp
insecure.
NOTE TO USERS:
Libevhtp will no longer ship Oniguruma with the source. Instead, the build
process will attempt and find a system-installed version instead. There is
a big red warning if it is not found.
A big thanks must go to @flokli (github) for pointing this out to me.
v1.2.13
o Rename test->test_general (test is reservet target name in cmake) (d18c6d0 Vladimir Romanov)
o Fix CMake files (a2fcb3d Vladimir Romanov)
o Fix compilation (74537f5 Vladimir Romanov)
o [#32] fix crash in evhtp_unbind_socket when evlistener fails (8149a84 Nathan French)
o [#31] use CURRENT_SOURCE_DIR instead of SOURCE_DIR in cmake (aa8a989 Nathan French)
o Added EVHTP_DEBUG option (with new logging) (f20e5cf Nathan French)
o minor updates for pull #33 (ccf5ce4 Nathan French)
o Make github stop bitching about newlines. (2c98506 Nathan French)
o transparent reference counting API (6f4dc08 Nathan French)
o Added some debug logs (0a79919 Nathan French)
o use evhtp/onig (76ad658 Nathan French)
o [#38] some extra debug logging (9db2231 Nathan French)
o [#38] I'm an idiot, fix for parser_init. (7c13a57 Nathan French)
o proper format str for logging in parser (de287b0 Nathan French)
o Fix typo in `evthr_new()` function name (3cfeb03 Vincent Bernat)
o Use evhtp/onig when system version isn't found. (a59b625 Nathan French)
o fix build on SunOS (0c54892 Sebastian Wiedenroth)
o Parser cleanup. (db040e9 Nathan French)
o add onigposix to build dir evhtp if sys not found (7b9d1a2 Nathan French)
o Ignore me, just formatting. (d911f58 Nathan French)
o Update LICENSE file (new authors / dates), no other changes (12ed7e8 Nathan French)
o fixes #43 (no need to check for -ldl or -lrt (bb0630c Nathan French)
o Likely defect fix for issue 42. Check connection->type to ensure that it is not evhtp_type_client. Also checked for c->htp to not be null in a couple of ssl related functions. (77a0752 Dan Henderson)
o Bugfixes and cleanup for htp__connection_writecb_ (440e5b9 Nathan French)
o Update issues template. (960a788 Nathan French)
o [Bugfix #51] htp__callback_find_ length check fix (44ddf9a Nathan French)
o Better error handling for connection_ssl_new (369fe77 Nathan French)
o connection_ssl_new log errors to stderr (a1f6926 Nathan French)
o Add evhtp_query_free for test_query (b150ebe Nathan French)
o formatting (2307737 Nathan French)
o Add RPM to package generation (8479c02 Tony Lambiris)
o replace cruft in evhtp_unset_all_hooks with for loop (4e62d69 Nathan French)
o [#55] More flexible package generation (4c5dbe2 Nathan French)
o added colors.cmake for pretty printing (bec3451 Nathan French)
v1.2.12
o remove evhtp_heap, never used (d132721 Nathan French)
o remove evhtp_json, never used (aec4b3c Nathan French)
o [Issue#20] Include pathing (80a69cc Nathan French)
o Fix deprecated usage (f4c42c7 Roman Gershman)
o Create issue_template.md (8d1a95f Nathan French)
o [Issue#25] Return NULL if callbacks == NULL for get_cb (cfcdba4 Nathan French)
o adding more null checks. I wish __attr__(nonull) was portable (9b552b7 Nathan French)
o adding some struct accessor defines to make life easier (613c5bf Nathan French)
o I think I worked out most of the potential derefs (acb42cf Nathan French)
o Fix potential null deref in htp__strndup_ (60b85ca Nathan French)
o Fix dead assignments in parser.c (e0a48e1 Nathan French)
o Eat our own dogfood (use_thread_wexit()) (ea37928 Nathan French)
o No use for strlen() in a loop (6833080 Nathan French)
o use PROJECT_BINARY_DIR for sys/ compat headers (012341c Nathan French)
o return int for htp__path_new_ (bf59eb1 Nathan French)
o more return normalization (91008a6 Nathan French)
o allocation functions set *out to NULL (0305c10 Nathan French)
o do not return on error from requie_uri (ddc2ce6 Nathan French)
o added user-defined custom memory functions (73b54c6 Nathan French)
o for some reason, htparser_init was being called manually with type_request?? (a153e5f Nathan French)
o Add htp__strndup_ memfn wrapper (763168c Nathan French)
o add a callback member in evhtp_ssl_cfg_t for customized decrypt privfile. fixes #16 (b3a4d42 h00360646)
o Internalize some structs / deprecate evhtp_set_hook() (50ab327 Nathan French)
o remove cruft (1b1a037 Nathan French)
o add include directory for compat/sys headers (948c547 Nathan French)
o export flag functions (3467cbb Nathan French)
o formatting (4ec8dd3 Nathan French)
o (evhtp_send_reply): Grab reference to bufferevent during write. (a976a2f Marcus Sundberg)
o add thread exit callback for cleaning (0c7d9c4 jgli)
o fix memory leak (a6b00cc jgli)
o fix thread exit callback type (c8978b6 jgli)
o Updates for threading functionality. (b634002 Mark Ellzey)
o Added evhtp_accept_socket (a497a14 Mark Ellzey)
o Forgot to export evhtp_accept_socke. (c94cb5b Mark Ellzey)
o Formatting. (4a78297 Mark Ellzey)
o Maybe I should spell rite. (2114210 Mark Ellzey)
o Fix cmake compilation issue in centos7 (dfc8c2b kaustubh-d)
o Remove double-free when SSL is used. (ee32b2a Jacob Marble)
o Add CPack commands to build a debian package. (0c4a8ec Tom Pusateri)
o [docs] added some doxygen groups (8a247f1 Mark Ellzey)
o check res for bufferevent_socket_connect (#136) (70b68d4 mthomas)
o Regression from commit 67ed0bc (c96c51e Ultima1252)
o Added build/* to gitignore (c64f1dc Mark Ellzey)
o Updating license to include Marcus Sundberg (801c52f Mark Ellzey)
o [htparse] fix up some stuff to make coverity happy (abc7eb4 Mark Ellzey)
o More coverity fixes (7d3cc52 Mark Ellzey)
o check for sockopt returns (534bb48 Mark Ellzey)
o master travis updates (2c6bb88 Mark Ellzey)
o added testbigendian module for old cmake (fb6a866 Mark Ellzey)
o Added initial evhtp_json API (6e48770 Mark Ellzey)
o LICENSE update for ripping liblz json api (fb473ef Mark Ellzey)
o Removing the SIGNED.md file (outdated anyway) (d4bcfa8 Mark Ellzey)
o Update README (6ef073e Mark Ellzey)
o updates / formatting / renames (926e355 Nathan French)
o static funcs from now on will just return int (5112b6d Nathan French)
o fix htp__use_threads_ call error (2ed2f7f weijiazhen)
o FIX : Socket leakage on error #6 (d13b72b Nathan French)
o Issue#6: make evhtp_accept_socket conform to api (d0347dc Nathan French)
o Establish conformity through flags. (58da6dd Nathan French)
o request flags (71341d9 Nathan French)
o EVHTP_CONN flags (087e9a7 Nathan French)
o Flag ops (and related functions) / cleanup (0abc96f Nathan French)
o Add flags accessor (e0f04aa Nathan French)
v1.2.11
o Grab reference to bufferevent during write. (a976a2f Marcus Sundberg)
o add thread exit callback for cleaning (0c7d9c4 jgli)
o fix memory leak (a6b00cc jgli)
o fix thread exit callback type (c8978b6 jgli)
o Updates for threading functionality. (b634002 Mark Ellzey)
o Added evhtp_accept_socket (a497a14 Mark Ellzey)
o Forgot to export evhtp_accept_socke. (c94cb5b Mark Ellzey)
o Formatting. (4a78297 Mark Ellzey)
o Maybe I should spell rite. (2114210 Mark Ellzey)
o Fix cmake compilation issue in centos7 (dfc8c2b kaustubh-d)
o Remove double-free when SSL is used. (ee32b2a Jacob Marble)
o Add CPack commands to build a debian package. (0c4a8ec Tom Pusateri)
o [docs] added some doxygen groups (8a247f1 Mark Ellzey)
o check res for bufferevent_socket_connect (#136) (70b68d4 mthomas)
o Regression from commit 67ed0bc (c96c51e Ultima1252)
o Added build/* to gitignore (c64f1dc Mark Ellzey)
o Updating license to include Marcus Sundberg (801c52f Mark Ellzey)
o [htparse] fix up some stuff to make coverity happy (abc7eb4 Mark Ellzey)
o Update README.markdown (3058a6e Mark Ellzey)
o fixes and travis integration (ad92289 Mark Ellzey)
o check for sockopt returns (534bb48 Mark Ellzey)
o more travis updates (a9b4d38 Mark Ellzey)
o travis (12a91ab Mark Ellzey)
o Update README.markdown (b595a0d Mark Ellzey)
o added initial lightweight heap allocator (6bf121b Mark Ellzey)
o added initial lightweight heap allocator (5f634b6 Mark Ellzey)
o Added initial evhtp_json API (6e48770 Mark Ellzey)
o Removing the SIGNED.md file (outdated anyway) (d4bcfa8 Mark Ellzey)
o updates / formatting / renames (926e355 Nathan French)
o static funcs from now on will just return int (5112b6d Nathan French)
o fix htp__use_threads_ call error (2ed2f7f weijiazhen)
o FIX : Socket leakage on error #6 (d13b72b Nathan French)
o Issue#6: make evhtp_accept_socket conform to api (d0347dc Nathan French)
o Establish conformity through flags. (58da6dd Nathan French)
o request flags (71341d9 Nathan French)
o EVHTP_CONN flags (087e9a7 Nathan French)
o Flag ops (and related functions) / cleanup (0abc96f Nathan French)
o Add flags accessor (e0f04aa Nathan French)
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 snnn119@gmail.com) (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)