1 # @(#) list changes to udpxy from build to build
3 # Copyright 2008-2011 Pavel V. Cherenkov (pcherenkov@gmail.com)
5 # This file is part of udpxy.
7 # udpxy is free software: you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation, either version 3 of the License, or
10 # (at your option) any later version.
12 # udpxy is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 # GNU General Public License for more details.
17 # You should have received a copy of the GNU General Public License
18 # along with udpxy. If not, see <http://www.gnu.org/licenses/>.
21 Build 14 (2-Jan-2008):
22 (*) shutdown command removed
24 Build 15-18 (7-Jan-2008):
25 (*) interface names get translated into IPv4 addresses
26 (*) lock-enabled pidfile support added
28 Build 19 (9-Jan-2008):
29 (*) 'lean' target added to makefile
30 (*) -n (nice increment) option added
32 Build 20 (9-Jan-2008):
33 (*) default settings changed for various options
35 Build 21-22 (16-Jan-2008):
36 (*) Web GUI refinements (new design, 'restart' button added to status page)
37 (*) mipsel-linux-uclibc-gcc support added to wl500-specific makefile
38 (*) generation of wl500-specific source archive
40 Build 23 (18-Jan-2008):
41 (*) Usage examples added to status page and command-line output
42 (*) Copyright notice added to status page and usage
43 (*) make for wl500 will not strip; no default compiler given
45 Build 24-30 (27-Feb-2008)
46 (*) support for RTP over MPEG-TS added
48 Build 31 (28-Feb-2008)
49 (*) bug-fix: lean target compile error corrected
50 (*) release target for wl500 will not strip the executable
52 Build 32 (29-Feb-2008)
53 (*) throughput statistics displayed on status page
54 (*) log messages are timestamp-prepended now
56 Build 33 (23-Mar-2008)
57 (*) udpxrec application added to record traffic into file
58 (*) miliseconds added to log timestamps
60 Build 34 (23-Mar-2008)
61 (*) Bug fix: core dumped if no pidfile specified
63 Build 35 (24-Mar-2008)
64 (*) Bug fix: udpxy terminates with unlink error when run as a daemon
66 Build 36 (25-Mar-2008)
67 (*) Bug fix: udpxrec: specifying a small buffer (-B) produces assert or SEGV
68 (*) Bug fix: udpxrec: start/end-recording can be in the past
69 (*) udpxy made accept buffer in bytes by default (was in Kb)
70 (*) udpxrec will run as daemon if started under root
71 (*) Bug fix: udpxy, udpxrec will not run in bkg w/o log spec
72 (*) udpxrec will require pidfile to run as daemon (root in bkg)
74 Build 37 (27-Mar-2008)
75 (*) bug fixes - maintenance build
77 Build 38 (11-Apr-2008)
78 (*) -H parameter added to set max time data can be held in buffer
79 (*) socket read timeout is configurable through $UDPXY_RCV_TMOUT (env)
80 (*) migrated to unified makefile for all supported compilers
81 (*) added dependency-generation support thru mkdep
82 (*) support added for suncc (Sun Studio 12), icc (Intel C), HP ANSI C compiler (hppa20w, hppa20, hppa11 modes)
84 Build 39 (21-May-2008)
85 (*) resolved issue of WMP refusing to connect to udpxy
86 (*) added pid to log output
88 Version 1.0 'Chipmunk'
89 --------------------------
95 (*) Rolled back WMP-compatibility changes
97 Build 6 (12-August-2008)
98 (*) Fixed: udpxrec would not write beyond 2Gb; -M option would not accept >2Gb of size
100 Build 7 (20-September-2008)
101 (*) Fixed: multicast-resubscribe default period of zero seconds would cause udpxy to resubscribe
102 on every iteration; logic changed to make udpxy re-subscribe only on setting's value >0
103 (0 means 'do NOT' re-subscribe)
105 Build 8 (3-December-2008)
106 (*) SIGPIPE is ignored now (was handled as a signal to quit)
107 (*) Full version info is displayed on exit
108 (*) PAUSE support (non-blocking receive socket) can be disabled
109 (*) DHOLD_TIMEOUT (default max time to buffer data before flush) set to 4 seconds
111 Build 9 (17-February-2009)
112 (*) documentation (in Russian) added
113 (*) default buffer size changed to 4K, was 64K
114 (*) minimal send-socket buffer length set to 32K (was previously set to data buffer size)
115 (*) UDPXY_SENDBUF_LEN environment variable can be set to control send-socket buffer size
117 Build 10 (24-February-2009)
118 (*) read-socket buffer left untouched if bigger than suggested buffer value based on -R
119 and -B parameters and the minimum buffer size - currently 32K - for send socket
120 (*) UDPXY_SENDBUF_LEN replaced by UDPXREC_SOCKBUF_LEN: that will be the minimum size
121 for both read- and send-socket buffers (ignored still if set to less than 32K)
122 (*) send-socket buffer size will be enlarged to the size of read-socket bufffer size
123 (if currently smaller)
125 Build 11 (25-February-2009)
126 (*) UDPXY_DSOCKBUF_NOSYNC set to 1 will leave send-socket buffer size unaltered
127 (*) UDPXY_SSOCKBUF_NOSYNC set to 1 will leave read (mcast)-socket buffer size unaltered
128 (*) default buffer size (-B) changed to 2K, was 4K
129 (*) default value for -R (messages to buffer) set to 1
130 (*) minimum (advisory) socket buffer size set to 64K, was 32K
131 (*) Fixed: assert when processing RTP-TS with -R 1
132 (*) Fixed: if2addr() not working under 64-bit linux; -a and -m options would not accept ifc names
133 (*) Fixed: quit flag value cast incorrectly under 64-bit linux
134 (*) CFLAGS variable may used for additional compiler options (CFLAGS='-m32' will force 32-bit build, for instance)
135 (*) NOP statements in udpxy.c, udpxrec.c updated to compile w/o warnings under gcc 3.2.3
136 (*) util/mkipk.sh script added to create IPKG packages
138 Build 12 (9-April-2009)
139 (*) ported to compile under FreeBSD 7.1 (32-bit)
141 Build 13 (10-April-2009)
142 (*) signedness comparison warnings eliminated
144 Build 14 (23-Jul-2009)
145 (*) ported to compile under FreeBSD 5.5 (32-bit)
147 Build 15 (XX-Mar-2010)
148 (*) FIXED: not compiling with -O2/O3 flags under gcc (select additional options in USER_OPT env variable)
149 (*) FIXED: would not allow running more than one udpxy daemon
151 Build 16 (21-Mar-2010)
152 (*) FIXED: hanging when specifying network interface by name
154 Build 17 (27-Jun-2010)
155 (*) FIXED: server terminates on ECONNABORTED from accept()
156 (*) Dynamic memory allocation for HTTP status pages implemented - will not truncate pages
158 Build 18 (9-Jan-2011)
159 (*) IP/port separator in HTTP request to udpxy can be any of those: ":%~+-^"
161 Build 19 (9-Jan-2011)
162 (*) MAX limit of clients (-c option) upped to 5,000 (five thousand)
164 Build 20 (18-Jun-2011)
165 (*) FIXED: player sends last request's traffic to any client with invalid request;
166 (*) FIXED: unsupported HTTP requests (those that the parser does not handle) are denied [ID: 3294265]
168 (*) Added UDPXY_SREAD_TMOUT, UDPXY_SWRITE_TMOUT evn parameters to set read/write timeouts on HTTP server's socket;
169 (*) Added UDPXY_HTTP200_FTR_LN, UDPXY_HTTP200_FTR_FILE env parameters to allow appending 1 line or contents
170 of a text file to HTTP 200 (successful request processing) response;
171 (*) Added Content-type entry to HTTP response;
172 (*) Added conditional compilation of udpxrec - use NO_UDPXREC=yes make [mode] to *NOT* build udpxrec into the udpxy
175 Build 21 (25-Nov-2011)
176 (*) FIXED: defunct processes appear at a high volume of requests;
177 (*) FIXED: ECONNRESET, ECONNABORTED and EPROTO in accept cause server to exit prematurely;
178 (*) FIXED: accept() handled only one request per iteration (select notification);
179 (*) Low watermark enforced for incoming requests;