-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathNEWS
125 lines (76 loc) · 3.52 KB
/
NEWS
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
- onenetd 1.12
Tidy up the documentation: remove duplicate copyright notices, merge
the ChangeLog and NEWS files together, ensure all options and
environment variables are documented in the help and man page.
Change the license (again) from the Expat license to the ISC license,
which is equivalent and simpler.
Refactor the code in the interests of making the main function a bit
less huge and deeply nested.
Make onenetd work on ARM: correct a number of type errors in the code,
where it was using an inappropriate type to hold a return value from a
library function.
Fix an uninitialised variable use (spotted by clang).
Check that strdup hasn't failed when setting up the environment (spotted
by clang).
Add the -1 option.
Automate the test suite. There used to be some scripts in the repository
for testing it by hand; now "make check" will do the right thing.
Add IPv6 support. This behaves like Felix von Leitner's IPv6 patch for
tcpserver: specify -6, and onenetd will bind to an IPv6 socket. If
you've specified an address that can accept IPv4 connections (e.g. ::),
it'll work for both.
- onenetd 1.11
Change the license from the GPL to the Expat license.
Use getsockname() to get the local address to put in TCPLOCALIP, rather
than just using the listen address; this means that TCPLOCALIP will be
set to the address of the interface the client connected to.
Document the environment variables. Reported by Tim Bishop.
Check that accept() returned a valid address.
Catch a (harmless) out-of-memory crash while parsing options. Reported
by Ulf Härnhammar, who also did a security review of the code -- thanks!
Update the list of connected clients correctly; previously
clients weren't being added to the list at all, so memory would be
leaked if the refusal message wasn't accepted immediately, and the child
FD would be closed immediately anyway. Avoid overfilling fd_sets by
dropping client connections if they wouldn't fit.
- onenetd 1.10
Set fd options correctly (required for Solaris).
Block SIGCHLD except while select() is running.
Use a self-pipe again, since the other way is not correct (it leaves
zombies if the handler gets called early enough).
Use FD_CLOEXEC to avoid leaking fds.
Various cleanups.
- onenetd 1.9
Made all the errors that can occur in the main loop non-fatal.
- onenetd 1.8
Added -e to redirect stderr of child to socket.
Removed obsolete -o and -d from getopt args.
Wrote manual page.
- onenetd 1.7
Fixed bug where onenetd wouldn't accept any connections after it had
been full -- it was calculating "full" in the wrong place.
Made the disconnect message show the connection count after
disconnection, which makes it easier to see how many clients are
actually connected from the log.
- onenetd 1.6
Avoid selecting on the listening socket when full.
Split out the "send response" code, so that we can call it when we first
notice a socket needs a response, which saves a call to select().
Made the status messages include the number of children running.
- onenetd 1.5
Removed redundant test for host being "0", since inet_addr handles this
case already.
Changed uid and gid to longs, since uid_t and gid_t aren't signed under
dietlibc.
Made help a bit more helpful.
Removed malloc debugging code.
- onenetd 1.4
Fix linking under Solaris.
- onenetd 1.3
Due to missing features on Solaris: removed -K (kill IP options),
replaced setenv with putenv, replaced inet_ntoa with inet_addr.
Added escape characters in response string.
- onenetd 1.2
Added escape characters in response.
- onenetd 1.1
Initial release.