root/tags/lighttpd-1.4.19/ChangeLog

Revision 1371, 99.0 kB (checked in by darix, 2 years ago)

- white space cleanup part 2 this time 1.4 ;)

i hope it helps with merging stuff back to 1.5

Line 
1CVS-Version: $Id: ChangeLog,v 1.18 2004/04/09 22:08:19 weigon Exp $
2
3** NOTE **
4
5This file is abondend in favour of the NEWS file
6
7** NOTE **
8
9
1015.06.2005 20:10 - 1.3.15
11- mod_cml, mod_trigger_b4_dl
12
13  added both plugins
14
15  check http://trac.lighttpd.net/trac/log/branches/lighttpd-1.3.x/ for the
16  rest
17
1815.06.2005 13:59 - 1.3.14
19- documentation
20
21  more fix-ups for mod_fastcgi, configuration and mysql-vhost
22
23- tests
24
25  unified test-scripts to use the same framework
26
2714.06.2005 23:38
28- documentation
29
30  updated docs for mod_proxy and mod_scgi
31
3212.06.2005 12:55 - pre-release
33- mod_fastcgi
34
35  fixed event handling after delayed connect
36
37  make retry timeout configurable
38
39  removed unused events if we switch to FCGI_STATE_READ
40
41  disabled adaptive spawning
42
43- mod_proxy
44
45  added hash-based and round-robin balancing
46
47  use port 80 is default
48
49  fixed errorhandling on connection refused
50
51  fixed usage of dead hosts [285]
52
53- mod_cgi
54
55  send 500 if the CGI died before we received any data
56
57  redirect the stderr of CGI to our errorlog
58
59  cleanup cgi-env after we finished our request
60
61- uri-handling
62
63  don't replace + to space before the ?query part
64
65  accept characters > 127 again
66
67- mod_auth
68
69  fixed segfault if debugging is enabled [371]
70
71- mod_scgi
72
73  added SCGI support for python + WSGI [381], [382]
74
75- mod_setenv
76
77  fixed conditionals for setenv.add-environment [109]
78
79- generic
80
81  report an error on duplicate config-keys in configfile [267]
82
83  call initgroups to join the groups of the users [239]
84
85  fixed automatic redirects if SSL is used
86
87  fixed compilation on Solaris [283]
88
89  disable accept-filtering on FreeBSD if ssl is used [320]
90
91  fixed handling of range-request larger than 2Gb
92
93  fixed comparisions of mime-types to case-insensitive [266]
94
95  added quotation of ETags [376], [378]
96
9706.03.2005 12:22 - 1.3.13
98- mod_accesslog
99
100  fixed NULL dereference on logfile cycling if accesslog is not set
101
10205.03.2005 17:30
103- mod_proxy
104
105  handle delayed connect in the same way as mod_fastcgi
106
10703.03.2005 19:00
108- freebsd
109
110  handle remote-close gracefully
111
112- ssl
113
114  handle remote-close gracefully
115
116- dir-listing
117
118  added dir-listing.hide-dotfiles and added an option to set css files
119
12002.03.2005 19:41
121- fastcgi
122
123  fixed path-info for prefix-patterns
124
125  fixed path-info for PHP
126
12702.03.2005 14:47 - 1.3.12
128- mod_fastcgi
129
130  fixed handling of dead fastcgi process which sent their SIGCLD to
131  initd and not to lighttpd. Moving the daemonize before starting
132  the fastcgi procs fixes this.
133
13401.03.2005 23:59
135- irix
136
137  fixed minor compile issues with MIPSpro
138
13901.03.2005 11:57
140- request-handling
141
142  handle most duplicate headers as 400, Bug #25
143
144- mod_fastcgi
145
146  added more checks
147
14828.02.2005 18:26
149- mod_expire
150
151  don't ignore 'modification' any more, Bug #39
152  only handles static files
153
154- last-modified
155
156  really compare timestamps, Bug #34
157
15828.02.2005 11:54
159- buffer
160
161  rewrote int2buffer functions
162
163  simplified path_simplify
164
165- pid-file
166
167  ignore EACCESS on unlink
168
16928.02.2005 10:35
170- mod_fastcgi
171
172  accept \n\n, Bug #32
173
174- cygwin
175
176  moved functions used by plugin and main-program to *-glue.c
177
178- lemon
179
180  removed warnings about shadowed variables
181
18228.02.2005 01:00
183- ssl
184
185  added ssl.ca-file, Bug #19
186
187  improved error-messages
188
18927.02.2005 23:48
190- test cases
191
192  rewrote to test-framework to use Perl + Test::More
193  ported more test-cases
194
19522.02.2005 01:20
196- mod_fastcgi
197
198  replaced inet_addr by inet_aton
199
200- request-handling
201
202  fixed segfault if host is empty
203
20420.02.2005 20:05
205- cgi
206
207  fixed cgi.assign for empty handlers again
208
20920.02.2005 16:54 - 1.3.11
210- request handling
211
212  ignore \r\n before request-line in keep-alive requests (Bug #13)
213
214- cgi, fastcgi
215
216  added REMOTE_PORT and SERVER_ADDR
217
218  fixed check for broken status-code in nph-scripts (Bug #14)
219
220- fastcgi
221
222  fixed passing cmdline options the spawned binary (Bug #16)
223
224  fixed failed reconnects (Bug #9)
225
226- macos x
227
228  fixed build on max
229
230- mod_secdownload
231
232  parse conditional secure-download.secret (Bug #8)
233
234- mod_userdir
235
236  redirect if username is not followed by / (Bug #15)
237
23813.02.2005 17:33
239- mod_auth
240
241  fix crash if require, realm or method are empty (Bug #5)
242
24313.02.2005 14:52
244- network
245
246  handle EPIPE and ECONNRESET as 'client has closed connection' in writev()
247  (Bug #1)
248
249- macosx
250
251  compile error on MacOS X due to missing environ (patch by Johan S�sen)
252  (Bug #2)
253
254- indexfiles
255
256  append the detected indexfile only once to uri.path (reported by Thomas
257  Seifert)
258  (Bug #3)
259
26006.02.2005 15:16 - 1.3.10
261- fastcgi
262
263  display a error-message if a hostname if specified in fastcgi.server->host
264  we need an IP here
265
266- debug
267
268  added debug.log-state-handling
269
270- spawn-fcgi
271
272  accept a full commandline for spawning
273
27406.02.2005 12:50
275- fastcgi
276
277  fixed openssl handling
278
279- network_freebsd_sendfilev
280
281  gracefull handling of connections closed on client-side
282  removed debug-message
283
28406.02.2005 01:44 - 1.3.9
285- documentation
286
287  added docs for SSL setup and mod_status
288
289- fastcgi
290
291  fixed config handling on PowerPC for local-spawning
292
29305.02.2005 15:14
294- fastcgi
295
296  added bin-environment to setup the environment of the spawned process
297
298  added bin-copy-environment to copy only the specified set of options
299  from the old environment
300
301  added handling of cmd-line options to bin-path
302
303- setenv
304
305  fixed crashed in setenv.add-response-header
306
30704.02.2005 18:09
308- configure
309
310  fixed docs for --with-mysql
311
312- fastcgi
313
314  improved performance of building the header (drop strlen())
315
31604.02.2005 01:59
317- cgi
318
319  don't send file on error
320
321  check if cgi-handler exists before executing it
322
323  added support for nph-...
324
32502.02.2005 21:18 - pre-release
326- request parsing
327
328  handle invalid characters in URI
329
33002.02.2005 15:12
331- makefiles
332
333  dropped unused header files from the distribution
334
33502.02.2005 14:18
336- fastcgi
337
338  delete sockets on shutdown
339
340- http/1.1
341
342  adding option to disable http/1.1
343
34401.02.2005 12:03
345- cygwin
346
347  fixed plugins_load to use the right extensions again
348  removed mmap check
349  added ssl support
350
35101.02.2005 01:49
352- configure
353
354  make check for valgrind.h covered by --with-valgrind
355
356- mod_localizer, mod_maps
357
358  remove both plugins from the distribution
359
360- file-not-found
361
362  handle file not found again
363
36430.01.2005 16:44
365- HEAD requests
366
367  don't send content on dynamic HEAD requests with status 200
368
36930.01.2005 15:16 - 1.3.8
370- network-handler
371
372  remove debug output on writev() if the remote side closed the connection
373
374- directory index
375
376  handle EACCES correctly
377
37829.01.2005 15:16 - pre-release
379- mod_alias
380
381  fixed mod_alias + pathinfo handling
382
383- mod_accesslog
384
385  added access-log to syslog patch from allan
386
38728.01.2005 17:30
388- directory redirect without Host-header
389
390  use server-ip instead of client-ip for the Location:
391
392- fastcgi + pathinfo
393
394  if fastcgi-auth redirects to a directory which doesn't exist handle it
395  correctly (bug introduced in 1.3.8)
396
397- requesting directories
398
399  clean physical.path if directory is requested and dir-listing is disabled
400  send 403 again (buf introduced in 1.3.8)
401
40228.01.2005 12:08
403- fastcgi
404
405   ignore FDEVENT_HUP for unix-sockets as a simple read + timeout will do
406   the job anyway
407
40822.01.2005 20:28 - pre-release
409- fastcgi
410
411  send content and headers if authorizer mode is used
412
413  use a new connection if connection is died to fastcgi
414  and we have not used it yet
415
41618.01.2005 21:21 - pre-release
417- plugins
418
419  added version-id to plugins to detect plugins which are not up-to-date
420
42116.01.2005 23:11
422- fastcgi
423
424  fixed write-failed after crash of fastcgi-child
425
42616.01.2005 20:43
427- setenv
428
429  fixed setenv.add-environment
430
431- fastcgi
432
433  fixed authorizer + added testcases
434
43516.01.2005 17:40 - pre-release
436- mod_status
437
438  beautified mod_status
439
440- mod_setenv
441
442  added setenv.add-environment
443
444- timeouts
445
446  add timeout to read-post
447
44815.01.2005 12:57
449- debug
450
451  added debug options to log
452  - missing files
453  - request header
454  - response header
455  - request handling
456
457  added a more usefull error message for the status-code changes in the
458  request parser
459
460- server announcement
461
462  set Server: header for dynamic content too
463
464- fastcgi
465
466  fixed double free
467
468  don't crash on FDEVENT_ERR
469
470  added a comment for EAGAIN on connect()
471
47208.01.2005 17:45
473- ssl
474
475  report an error if ssl.engine is enable but no ssl support compiled in
476
47708.01.2005 12:23
478- mod_status
479
480  added request time to the output
481
482  (late changelog) added host and filename to the output (fobax)
483  (late changelog) HTMLalized the output (fobax)
484
48506.01.2005 19:51 - pre-release
486- error-handler
487
488  let the error-handler handle 403 requests too
489
490  make the error-handler setable by a module
491
492- error-pages
493
494  reworked the error-page handling
495
49605.01.2005 13:10
497- keep-alive handling
498
499  made sure that keep-alive is really handled correctly
500
50104.01.2005 17:02
502- mod_setenv
503
504  added a module to added request and response headers on the fly
505
506- error-log
507
508  send error log to syslog() if no errorlogfile is specified (again)
509
51002.01.2005 22:44 - pre-release
511- response handling
512
513  cut of body for status 301, 304 and 205
514
515- buffer
516
517  optimized all _hex functions (Silvan Minghetti)
518
51902.01.2005 20:32
520- fastcgi
521
522  if bin-path is not specified, don't die (bug introduced in the last pre-rel)
523
524- auth
525
526  if userfile is empty don't auth.
527
52802.01.2005 19:06
529- mod_compress
530
531  fixed off by one if cache-dir is not set
532
53302.01.2005 16:10
534- conditional config
535
536  fixed !~ and !=
537
538- buffer
539
540  copy empty buffers correctly
541
54231.12.2004 17:45
543- ipv6 + pidfile
544
545  don't complain if we can't remove the pidfile (Silvan Minghetti)
546
547  remove ipv6 option from the commandline of lighttpd doesn't support
548  ipv6 (Silvan Minghetti)
549
55031.12.2004 15:41 - pre-release
551- kqueue
552
553  simplified event handling (adam)
554
555- fastcgi
556
557  fixed div-by-zero bugs in the adaptive process spawning
558
559- mysql-vhost
560
561  added mysql-vhost (Christer Holgersson)
562
56330.12.2004 19:09
564- fastcgi
565
566  added adaptive spawning of FastCGI processes
567
568- traffic shaping
569
570  added traffic shaping per virtual server
571
57228.12.2004 23:26
573- traffic shaping
574
575  added traffic shaping per connection
576
57725.12.2004 22:58
578- mod_status
579
580  fixed status.url again (Timo)
581
58221.12.2004 11:29
583- configure
584
585  added check for signal and select (compile fix for netbsd 1.4 and 1.5)
586
58711.12.2004 12:38 - 1.3.7
588- fastcgi + php
589
590  retry to connect to another PHP child if one of them dies after
591  connect
592
593- cgi + multipart
594
595  don't transform CONTENT_TYPE to HTTP_CONTENT_TYPE
596
597- debian
598
599  more cleanup, updated changelog, added more deps and suggests
600  (Chris Brown)
601
60210.12.2004 22:33
603- event handler
604
605  fixed crashes in kqueue
606
60710.12.2004 13:57 - pre-release
608- mod_status
609
610  fixed wraparound in total requests and total traffic
611
612- debian
613
614  updated licence and packaging
615
616- security
617
618  call setgroups() to get rid of all groups
619
620- ssl
621
622  handle SSL_shutdown() == 0 correctly
623
624  fixed openssl detection in configure
625
626  fixed handling of chunked encoding
627
628- request handling
629
630  handle Connection: keep-alive correctly (case as not ignored)
631
63221.11.2004 02:39
633- windows
634
635  merged basic native windows port (compiles with mingw)
636
63720.11.2004 18:43
638- conditional
639
640  ported
641  - cgi
642  - secdownload
643  - expire
644  - localizer
645  - usertrack
646  - status
647  - proxy
648
649- server-tag
650
651  Server: ... can now be specified by server.tag = "..."
652
653- spawn-fcgi
654
655  fixed typo in usage text
656
657- ssl
658
659  fixed detection of libs and headers
660
66105.11.2004 16:01
662- fastcgi
663
664  added more usefull error messages
665
66604.11.2004 23:01
667- ssi
668
669  added support for ${...}
670
67103.11.2004 14:51 - 1.3.6
672- fastcgi
673
674  added spawn-fcgi to the distribution
675  added spawn-local-fastcgi yourself ( bin-path )
676
67703.11.2004 11:22
678- accesslog
679
680  don't cycle accesslogs of external processes are used
681
68202.11.2004 15:34
683- fastcgi
684
685  handle END-OF-REQUEST correctly if chunk-encoding is not used
686
68702.11.2004 10:53
688- internal redirects
689
690  fixed handling of query strings in internal redirects for directories
691
69202.11.2004 09:54 - pre-release
693- cgi
694
695  add REMOTE_USER, suppress AUTHORIZATION
696  handle payloads > 4k
697
698- mod_alias
699
700  fixed url checking
701
702- follow-symlink
703
704  fixed config
705
70631.10.2004 11:30 - 1.3.5
707- writev
708
709  fixed seg-fault in debug-message if write() fails and LFS is enabled
710  handle EINTR
711
712- sendfile linux
713
714  handle EINTR
715
71631.10.2004 09:09
717- freebsd
718
719  added missing header in joblist.c
720  fixed test-scripts for zsh
721
72230.10.2004 22:26
723- modules
724
725  added mod_userdir and mod_alias
726  added docs for the new modules
727
72830.10.2004 19:52
729- porting
730
731  added defines for MAP_FAILED for NetBSD 1.3.x
732
73330.10.2004 18:54 - pre-release
734- pipelining
735
736  fixed offset calculations
737
738- ipv6
739
740  IPv6 might be disabled at compile-time
741
742- rewrite
743
744  close mem-leak
745
746- auth
747
748  forgot to reset the global-config handler
749
750- symlink
751
752  add option to disable follow-symlink
753
754- ssi
755
756  added support for exec-cmd
757
75823.10.2004 - 1.3.4
759- max-fds
760
761  set the upper limit of fds only if server.max-fds is set
762
76323.10.2004 13:49
764- accesslog
765
766  use a shell to handle accesslog-pipes
767
76822.10.2004 17:00
769- accesslog
770
771  added logging of user-supplied data via %{...}o and
772  X-LIGHTTPD-* header
773
77422.10.2004 14:57 - pre-release
775- openwrt
776
777  fixed configure-checks and Makefile.am's to build cleanly with a
778  cross-compiler
779
780  builds cleanly for openwrt
781
78222.10.2004 13:03
783- out-of-fd
784
785  improved the out-of-fd handler
786
787- cgi, fastcgi
788
789  set SERVER_NAME to server.name or the value submitted by Host:
790
791- error-handler
792
793  only set old status code if it wasn't set by a handler
794
79521.10.2004 22:36 - pre-release
796- fastcgi
797
798  don't crash on out-of-fd condition
799
800- out-of-fd
801
802  try handle the out-of-fd condition in a sane way
803
80421.10.2004 15:03
805- mod_auth
806
807  seperated auth.backend.*.userfile for plain, htpasswd and htdigest
808
809  added 'digest-auth' against 'plain-backend'
810
811  added auth.debug for debugging
812
81316.10.2004 10:18 - 1.3.3
814- mod_simple_vhost, mod_evhost
815
816  conditional-ized
817
818- mod_rrdtool
819
820  maintain the request-counter for each conditional-config (adam)
821
82214.10.2004 11:30
823- accesslogs
824
825  cycle all access-logs
826
827- mod_rewrite
828
829  tell the user to install pcre.h if he wants to use mod_rewrite
830
83110.10.2004 10:11 - pre-release
832- error-handler
833
834  added a error-handler for status 404 (server.error-handler-404)
835
83609.10.2004 16:28 - pre-release
837- cgi
838
839  added support for \n in headers
840
841- mod_auth
842
843  added conditional auth
844
84501.10.2004 09:28
846- plugins
847
848  fixed off by one error in plugin initialization (Mike)
849  related into a segfault on AMD64
850
85130.09.2004 21:44 - 1.3.2
852- file-cache
853
854  disabled the file-cache it was taken the wrong files from the cache
855
85630.09.2004 08:39 - 1.3.1
857- file-cache
858
859  drop a unused file-cache entry after 10 seconds
860  reuse unused entries
861
862- request-parser
863
864  accept IPv6 adresses in Host header
865
866- tests
867
868  modified the scripts to work with zsh (check on Linux, Irix and FreeBSD)
869
87026.09.2004 12:28
871- comparission function
872
873  file-cache has delivering the wrong entry if only the last character of
874  the filename differed and the filesize was the same.
875
876- cgi + cygwin
877
878  cgi need s SYSTEMROOT environment
879
880
88122.09.2004 08:55
882- network
883
884  detect of file has been shrinked while we are sending it out and terminate
885  the connection if would run over the edge
886
88722.09.2004 07:56
888- mod rewrite, fastcgi, ...
889
890  keep REQUEST_URI after rewrite
891
89221.09.2004 22:49
893- fastcgi authorizer
894
895  fixed cleanup code (matt)
896
89721.09.2004 20:08
898- rrdtool
899
900  rrdtool.db-name is now conditional
901
902  fixed check if write() failed (adam)
903
90417.09.2004 17:50 - 1.3.0
905- rewrite
906
907  added url.rewrite-final = ...
908
90917.09.2004 15:55
910- code cleanup
911
912  integrated the fixes from cygwin into the main tree
913
914- kqueue
915
916  init kqueue after daemonizing (broken since 12.09.2004 14:02)
917
91816.09.2004 21:00
919- cygwin + macosx
920
921  finished the cygwin port
922  this port seems to fix the problems on macosx too
923
92412.09.2004 14:02
925- socket handling
926
927  added support to handle more than one server socket
928
92911.09.2004 12:23 - 1.2.8
930- EINTR
931
932  handle EINTR for linux-sendfile
933
934- configfile
935
936  ignore an extra comma at the end of the array declaration
937
93811.09.2004 09:46
939- mod_proxy
940
941  pass remote-addr as X-Forwarded-For to the real server behind the proxy
942
943- code cleanup
944
945  moved all cut'n'paste versions of the inet_ntop cache to inet_ntop_cache.c
946
947- fcgi
948
949  don't overwrite the fd in fcgi_establish connection if connect fails. this
950  results in various problem in other places.
951
95205.09.2004 09:46
953- file-cache
954
955  cache the mimetype
956
957- last-modified
958
959  don't complain if the If-Modified-Since contains a valid comment/option
960  like <timestamp>; length = ...
961
96205.09.2004 09:13
963- expires
964
965  overwrite the Expire if it is set by a previous plugin
966
967- conditional config
968
969  conditional config as disabled in 1.2.7 by accident
970
97104.09.2004 10:02 - 1.2.7
972- mod-proxy
973
974  remove the \0 before the post content
975
976- cgi
977
978  fixed hanging process if cgi-crash terminates to fast (before we read its
979  response)
980
981- extented attributes
982
983  added xattr support, submitted by Ari
984
98529.08.2004 16:00
986- rrdtool
987
988  moved the rrdtool support from mod_status into its own module mod_rrdtool
989
990  rrdtool.binary = "/usr/bin/rrdtool"
991  rrdtool.db-name = "/var/www/lighttpd.rrd"
992
99329.08.2004 11:00 - pre-release
994- timeouts
995
996  server.max-keep-alive-requests = 0 replaces
997    server.use-keep-alive = "disable"
998
999  added
1000    server.max-keep-alive-idle
1001    server.max-read-idle
1002    server.max-write-idle
1003
1004- docs
1005
1006  added a entry for each config-value into configuration.txt
1007  added simple docs for
1008    rewrite
1009    redirect
1010    compress
1011    cgi
1012    simple-vhost
1013
101429.08.2004 10:05
1015- config options
1016
1017  complain if no configfile is specified
1018
1019- fastcgi
1020
1021  removed stupid allocation bug which might cause a problem in really rare
1022  cases
1023
102426.08.2004 22:06 - 1.2.6
1025- optimize
1026
1027  use array_strcasecmp() in favour of strcasecmp() as it is slightly
1028  faster.
1029
1030  apply the case-insentive conversion also on the last character. (adam)
1031
1032  sort the checked elements in request.c and filter apply the logic to
1033  compare some less fields, if the header is not used.
1034
1035  improved the config-patch function to use our internal buffer-compare
1036  functions instead of strcmp
1037
103822.08.2004 16:09 - pre-release
1039- cgi
1040
1041  added missing cleanup code
1042
1043- fastcgi
1044
1045  remove double-free
1046  added handling of EINTR in some places
1047
1048- leaks
1049
1050  fixed some leaks in the new config code
1051
1052- array_strcasecmp
1053
1054  fixed alignment in the improved array_strcasecmp function (adam)
1055
105620.08.2004 14:46 - pre-release
1057- performance
1058
1059  optimized a few useless strlen() away as we either know the length from
1060  buffer->used - 1 or by sizeof(str) - 1 if it is constant.
1061
1062  optimized the 'find the \r\n\r\n' function.
1063
1064  improved the array_strcasecmp() based on another idea from (ralf)
1065
1066- accesslog
1067
1068  enabled the strftime cache again
1069
107015.08.2004 23:41
1071- accesslog
1072
1073  added apache-like CustomLog handling in accesslog.format
1074
1075  accesslog.format = "..."
1076
107715.08.2004 21:08
1078- test-cases
1079
1080  remove testdir
1081
1082- configfiles
1083
1084  handle escaping of " in strings properly
1085
108613.08.2004 12:07
1087- array
1088
1089  improved inner-loop of array_strcasecmp() (ralf)
1090
109111.08.2004 14:14
1092- fcgi socket
1093
1094  use SUN_LEN if available
1095
1096- keep-alive
1097
1098  disable keep-alive on request
1099
1100  server.use-keep-alive = "disable"
1101
110210.08.2004 15:59 - 1.2.5
1103- conditional config
1104
1105  mod_fastcgi
1106  mod_rewrite
1107  mod_redirect
1108  mod_access
1109  mod_compress
1110  mod_accesslog
1111
1112  are ported
1113
111410.08.2004 13:05
1115- pipelining
1116
1117  fixed very stupid pipelining bug
1118
111909.08.2004 22:07 - pre-release
1120- conditional config
1121
1122  first code for conditional config
1123
112409.08.2004 14:21
1125- fcgi
1126
1127  fixed access to free()'d memory (doesn't create any harm)
1128
1129- isdigit, warings
1130
1131  signed -> unsigned for 2 more isdigit() calls (adam)
1132  removed some unused var's if pcre is not available (adam)
1133
113408.08.2004 20:57 - pre-release
1135- debian
1136
1137  added a chmod to /var/log/lighttpd/ (allan)
1138
113908.08.2004 12:05
1140- kqueue
1141
1142  use EV_SET() instead of setting the ev-struct by hand (adam)
1143
1144- fcgi
1145
1146  fixed the EINPROGRESS handling to use getsockopt (er)
1147  fixed a leak of server is disabled (er)
1148
1149- solaris 10 port-api
1150
1151  added a skeleton for the sol10 port api
1152
115306.08.2004 10:18
1154- mod_ssi
1155
1156  fix DATE_LOCAL so it displays the correct time zone (Jeremy Hinegardner)
1157
115804.08.2004 11:43
1159- openbsd fixes
1160
1161  dropped usage of MAX() in buffer.c
1162  added prober includes for md5.h if openssl is enabled (brad)
1163
1164- memory usage
1165
1166  documented the way how lighttpd caches memory blocks
1167  reset the buffers after they have been written by the network-layer
1168
1169- kqueue
1170
1171  modify fd-bitmask only if kevent succeeded (adam)
1172
1173
117403.08.2004 15:09
1175- mod_compress
1176
1177  compress even if you have no cachedir set
1178
117903.08.2004 13:26 - pre-release
1180- Makefile
1181
1182  fixed dependencies for parallel build in mod_ssi_expr.c
1183
1184- combo patch
1185
1186  * Tinker with kqueue().  Add a reset method so that the kqueue file
1187    descriptor can be re-enabled after a fork().  Emulate the devpoll driver
1188    in that adds and deletes are sent to the notification mechanism im-
1189    mediately, which should cut down on phantom events.  Use
1190    ev->kq_results as a sliding window.
1191
1192  * Change F_SETFD calls to use the preferred FD_CLOEXEC instead of 1.
1193
1194  * Remove unnecessary fdevent fcntl handlers.  It appears that the only
1195    driver that needs one is Linux RT signals.
1196
1197  * Quiet compiler warning about unused parameter.
1198
1199  * Set the close-on-exec flag for the /dev/poll and epoll_create() file
1200    descriptors.
1201
1202  * Return failure if /dev/poll could not be opened instead of logging
1203    and continuing.
1204
1205  * Detect EAGAIN after writev() failures.  FreeBSD sendfile() doesn't need
1206    protection, as the man page says:
1207
1208     When using a socket marked for non-blocking I/O, sendfile() may send
1209     fewer bytes than requested.  In this case, the number of bytes success-
1210     fully written is returned in *sbytes (if specified), and the error
1211     EAGAIN is returned.
1212
1213  (adam, georg, matt)
1214
1215
121602.08.2004 18:08
1217- mod_ssi
1218
1219  check for pcre before compiling the module
1220
1221- fdevents
1222
1223  dropped fdevent_fcntl added by the last patch (adam)
1224  kqueue: events == FDEVENT_IN -> events & FDEVENT_IN (adam)
1225
122631.07.2004 22:07 - 1.2.4
1227- fdevents
1228
1229  * Test at configure time for kqueue() and <sys/event.h>
1230  * Remove various hard-coded constants from event handlers
1231  * Move maxfds into the event structure, and out of the
1232    fdevent_*_init handlers.  Event handlers can use the maxfds
1233    member to size arrays.
1234  * Various event structure renames to discourage clashes
1235  * Remove extra (ignored) call to fdevent_event_next_fdndx() in
1236    the main server loop.
1237  * Wrestle with kqueue().  The implementation has to deal with
1238    phantom events (for fds which have been deleted/closed), similar
1239    to the Linux RT signals code.  Like the RT code, it maintains a
1240    bitmask of active fds.  After a successful call to kevent(), the
1241    code will compress/overwrite dead events.  The other annoyance is
1242    that the handler must track the event filter for each fd, even
1243    though you cannot support both read and write filters for the same
1244    fd in one kqueue.  The handler maintains a separate bitmask for fd
1245    filters (1 == EVFILT_IN, 0 == EVFILT_OUT).
1246  (adam)
1247
1248- server side includes
1249
1250  added native server-side includes based on the docs from apache:
1251  http://httpd.apache.org/docs/mod/mod_include.html
1252
1253  not supported are:
1254  - exec
1255  - nested virtual
1256  - config.errmsg
1257  - echo.encoding
1258
125924.07.2004
1260- fdevents
1261
1262  added a bitset to figure out if we received a event for an unregistered fd
1263  in rt-signal (adam)
1264
1265- kqueue
1266
1267  added kqueue support (Matt Levine)
1268
126913.07.2004 08:58
1270- configfile
1271
1272  parse keys correctly that contain a digit (Geoff Adams)
1273
1274- fcgi
1275
1276  fixed large post uploads (Geoff Adams)
1277  fixed uri if docroot is set (Geoff Adams)
1278
127903.07.2004 22:50 - 1.2.3
1280- index-files
1281
1282  rewrite uri.path to the index-file instead of keeping it at .../
1283  this fixes index-file handling in FastCGI/CGI docroot is used
1284
1285- close-on-exec
1286
1287  enable close-on-exec handling to simplify FD handling in CGI code
1288
1289- cgi
1290
1291  keep error-log-fd open to catch the error handling for execve()
1292
1293  report error if cgi-exec file doesn't exist
1294
1295- proxy
1296
1297  pass page-content on error to the user (E.R.)
1298  code cleanup (E.R.)
1299
1300- ssi
1301
1302  first skeleton of a plugin for ServerSideIncludes
1303
1304- security
1305
1306  limit the headerlength again to 64k max
1307
130803.07.2004 14:23
1309- configure
1310
1311  fixed compile-check for libpcre if pcre-config doesn't point to /usr/lib
1312
131302.07.2004 18:17
1314- buffers
1315
1316  always allocate a multiply of 64bytes. this should reduce the number of
1317  realloc()s and still doesn't has a too high overhead.
1318
131902.07.2004 11:07
1320- fds
1321
1322  connect stdin, stdout and stderr to /dev/null instead of just closing it
1323  use dup2() instead of dup()
1324
1325- accesslog
1326
1327  if accesslog.filename starts with a | spawn a process which will get data
1328  in one chunk once in a while
1329
133001.07.2004 11:00
1331- sample config
1332
1333  added text/css and text/javascript mimetypes
1334
133528.06.2004 12:18
1336- proxy module
1337
1338  added a proxy module (based on the fastcgi module) and added some
1339  documentation
1340
134125.06.2004 21:41
1342- last-modified handling
1343
1344  replaced %Z by GMT. otherwise the last-modified check will most often fail.
1345
134624.06.2004 20:20
1347- relax http-parser
1348
1349  don't reply 400 in case of an empty header-field, just ignore it
1350
135123.06.2004 22:10
1352- file-cache
1353
1354  don't cache mmap() for files larger than 64k as we run out of RAM otherwise
1355  too fast (check with some 200mb files)
1356
1357- 64bit fixes
1358
1359  fixed buffer_equal on sparc64
1360
136115.06.2004 19:09 - 1.2.2
1362- mmap cache
1363
1364  fixed mmap-caching in network_write.c and network_writev.c after a direct
1365  hint by E.Rodichev
1366
1367- sendfile + linux
1368
1369  check at config-time if sendfile() works on Linux
1370
137111.06.2004 15:09
1372- fcgi + unix sockets
1373
1374  added support for unix domain sockets (spawn-fcgi 1.2.0 required)
1375
137610.06.2004 11:49
1377- configure
1378
1379  use pcre-config to determine the position of the pcre headers
1380
138105.06.2004 22:06
1382- filehandle-cache
1383
1384  remove mmap-segment if filecache gets invalidated
1385
138630.05.2004 14:13 - lighttpd 1.2.1
1387- response headers
1388
1389  request headers that appear twice are grouped together like expected by
1390  the CGI spec (concat with a ", ")
1391  response headers behaved the same way but are not grouped anymore. They
1392  stay seperated. Actually they are concated by \r\n<key>: <value> which is
1393  the same in the end.
1394
1395- file uploads
1396
1397  the handling of longer post requests is fixed now.
1398
139928.05.2004 09:13
1400- cgi
1401
1402  added support for direct calls to cgi-binary
1403
140422.05.2004 21:58
1405- pipeling
1406
1407  the code cleanup is finished successfully. Now all cases of pipelining are
1408  handle the right way. POST pipelining was still not working up to now.
1409
141022.05.2004 12:55
1411- code cleanup
1412
1413  use the well-tested code from the write-queue as the base for the
1414  read-queues and simplify the pipeline handling alot that way.
1415
141620.05.2004 15:08
1417- network backends
1418
1419  enabled sendfile support again (__FreeBSD__ instead of __freebsd__)
1420
1421  added a mmap cache as part of the filedescriptor cache
1422
1423  added AIX specific send_file() support (untested)
1424
142520.05.2004 10:40
1426- segfaults
1427
1428  fixed some minor segfaults on startup when no config file is used.
1429
143017.05.2004 10:58 - lighttpd 1.2.0
1431- documentation
1432
1433  reformated the documentation the doc/ directory
1434
143515.05.2004 14:45
1436- localizer
1437
1438  fixed build of localizer extension
1439
144015.05.2004 12:35
1441- POST requests
1442
1443  there is no need to die if we spot a simple POST request on a static file
1444
1445- pipelining
1446
1447  fixed HTTP/1.1 pipelining which caused the problems with opera
1448
1449- array handling
1450
1451  how did that bug survive such a long time ? a wrong compare function was
1452  used in one case, but not the other.
1453
145415.05.2004 03:20
1455- secure and fast downloads
1456
1457  added a module which allows secure and fast downloading of files:
1458  1. the application (.php, ...) controls the access to the files
1459  2. the webserver is handling the transfer (and check the app generated
1460     tokens)
1461
1462  the token is based on
1463  - a secret
1464  - a timestamp
1465  - the filename
1466  this means even if the token is is distributed by the user it will get
1467  invalid after a given timeout (default 60 seconds)
1468
1469- errorfiles
1470
1471  check for errorfiles before using them
1472
1473- code cleanup
1474
1475  applied cleanup fixes from adam
1476
147714.05.2004 18:47
1478- fdevent handling
1479
1480  added a more generic callback interface to the fdevent structures which
1481  simplifies the writing of plugins. this might destabilize lighttpd for a
1482  while
1483
1484- cgi
1485
1486  fixed header parsing of the header is sent in chunks and the terminator is
1487  sent in a single chunk
1488
1489- EINTR
1490
1491  fixed some occurences of EINTR which read()
1492
149303.05.2004 23:55
1494- portability
1495
1496  E.R.:
1497  * portability fixes for Solaris 2.5
1498
149902.05.2004 10:15
1500- Expect: Handling
1501
1502  added incomplete support for Expect: 100-continue (RFC 2616 8.2.3) by
1503  sending always 417 for every Expect-request (see 14.20)
1504
1505  we have been blamed for not supporting it:
1506  http://lists.w3.org/Archives/Public/ietf-http-wg/2004JanMar/0059.html
1507
150829.04.2004 23:07 - 1.1.9
1509- usertracking
1510
1511  added a very basic usertracking cookie handler
1512
151329.04.2004 19:37
1514- network-writev
1515
1516  Adam:
1517  * call munmap() on error in write()
1518
1519- docs
1520
1521  E.R:
1522  * documented 'check-local'
1523
1524- test-env
1525
1526  made the shell scripts more portable (checked with zsh, bash and ksh)
1527
1528  fixed compilation on NetBSD
1529
153028.04.2004 22:22
1531- FastCGI
1532
1533  E.Rodichev:
1534  * added "Authorizer" mode for FastCGI
1535
153627.04.2004 18:08
1537- ssl
1538
1539  Alexey Slynko:
1540  * handle SSL_ERROR_WANT_READ or SSL_ERROR_WANT_WRITE in SSL_write the
1541    right way.
1542
1543- FastCGI
1544
1545  add 'check-local' instead of the implicit 'if-docroot-is-set' handling
1546  im