2010-07-05 Gonzalo Paniagua Javier <gonzalo@novell.com>
[mono.git] / mcs / class / System / System.Net.NetworkInformation / ChangeLog
1 2010-07-05 Gonzalo Paniagua Javier <gonzalo@novell.com>
2
3         * NetworkInterface.cs: avoid endless loop when a bad length is
4         received for AF_PACKET. Fixes bug #601783.
5
6 2010-06-22 Gonzalo Paniagua Javier <gonzalo@novell.com>
7
8         * Ping.cs: we need to read the output to give the process time
9         to start. Fixes bug #591136.
10
11 2010-03-25  Marek Safar  <marek.safar@gmail.com>
12
13         * IPGlobalProperties.cs: Made Win32_IN6_ADDR verifiable.
14
15 2009-12-07 Carlos Alberto Cortez <calberto.cortez@gmail.com>
16
17         * Ping.cs: Try to detect the path to the bin command, since different
18         Unix systems store it in different places.
19         Fixes #519272.
20
21 2009-10-06 Gonzalo Paniagua Javier <gonzalo@novell.com>
22
23         * GatewayIPAddressInformationCollection.cs:
24         * IPInterfaceProperties.cs: implement GatewayAddresses for linux.
25         Original patch by Christoph von Wittich.
26         Fixes bug #544640.
27
28 2009-09-29 Gonzalo Paniagua Javier <gonzalo@novell.com>
29
30         * Ping.cs: fix the check for a time-out return value from 'ping'.
31
32 2009-09-24  Zoltan Varga  <vargaz@gmail.com>
33
34         * LinuxNetworkInterfaceMarshal.cs: Add StructLayout attribute to structures, so
35         the aot compiler can generate PtrToStructure wrappers for them.
36
37 2009-09-19 Gonzalo Paniagua Javier <gonzalo@novell.com>
38
39         * Ping.cs: if we receive a packet that is ignored, adjust the
40         timeout. Fixes bug #538013.
41
42 2009-05-16  Miguel de Icaza  <miguel@novell.com>
43
44         * Apply patch from Alex Shulgin
45         <alexander.shulgin@yessoftware.com> to support OSX in
46         NetworkInformation classes.
47
48 2009-05-03 Gonzalo Paniagua Javier <gonzalo@novell.com>
49
50         * Ping.cs: we just need the address(es), not a host entry. This avoids
51         querying the DNS server(s) when the target is an IP address.
52
53 2009-03-24 Gonzalo Paniagua Javier <gonzalo@novell.com>
54
55         * Ping.cs: MacOS has different arguments for ping.
56         Bug #486904 fixed.
57
58 2009-01-26  Christian Prochnow <cproch@seculogix.de>
59
60         * Ping.cs: ignore ICMP echo request packet in case we ping
61           localhost.
62
63 2009-01-11  Atsushi Enomoto  <atsushi@ximian.com>
64
65         * NetworkInformationPermission.cs,
66           NetworkInformationPermissionAttribute.cs : implement some,
67           otherwise it blocks compilation.
68
69 2008-12-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
70
71         * Ping.cs: use the new internal method in Socket to avoid having to
72         throw exceptions when there's a timeout.
73
74 2008-12-11 Gonzalo Paniagua Javier <gonzalo@novell.com>
75
76         * Ping.cs: close the socket in SendPrivileged. Use Buffer.BlockCopy
77         instead of Array.Copy. Return IPStatus.Unknown instead of throwing an
78         exception for unknown status codes received.
79
80 2008-11-29  Miguel De Icaza  <miguel@novell.com>
81
82         * NetworkInterface.cs: Do not throw an exception when scanning
83         external kernel information that might cause problems.   The
84         application should not crash just trying to fetch interfaces from
85         the system. 
86
87 2008-11-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
88
89         * Ping.cs: the time for the arguments of 'ping' is in seconds. Don't
90         read the output of running the command, since we trust the return
91         code.
92
93 2008-10-27  Atsushi Enomoto  <atsushi@ximian.com>
94
95         * Ping.cs : use privileged mode for non-unix. On Windows there is
96           no /usr/bin/ping.
97
98 2008-10-04 Gonzalo Paniagua Javier <gonzalo@novell.com>
99
100         * NetworkInterface.cs: detect wireless 802.11 on linux.
101
102 2008-09-28 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
103
104         * NetworkInterface.cs: special case for loopback interfaces so that
105         their a physical interface address is PhysicalInterfaceAddress.None.
106         Fixes bug #422118.
107
108 2008-08-15  Atsushi Enomoto  <atsushi@ximian.com>
109
110         * IPInterfaceProperties.cs, UnicastIPAddressInformation.cs,
111           UnicastIPAddressInformationCollection.cs : fixed bug #416526, based
112           on the patch by Fredrik Kling. support UnicastIPAddressInformation
113           on win32.
114
115 2008-08-06  Atsushi Enomoto  <atsushi@ximian.com>
116
117         * IPGlobalProperties.cs : fixed ToEndPoint() to not bork at 
118           parsing IPv6 string. Fixed bug #410006.
119
120 2008-07-31  Jb Evain  <jbevain@novell.com>
121
122         * NetworkInformationException.cs: cleanup for NET_2_1.
123
124 2008-07-17  Marek Habersack  <mhabersack@novell.com>
125
126         * IPInterfaceProperties.cs: implemented UnicastAddresses
127
128 2008-07-14  Marek Habersack  <mhabersack@novell.com>
129
130         * NetworkInterface.cs: implemented support for Linux. Parts
131         contributed by Eric Butler (eric@extremeboredom.net), thanks!
132
133         * GatewayIPAddressInformationCollection.cs,
134         IPInterfaceProperties.cs, IPAddressInformationCollection.cs: added
135         support for Linux. Patch contributed by Eric Butler
136         (eric@extremeboredom.net), thanks!
137
138         * IPv4InterfaceProperties.cs: implemented support for Linux.
139
140         * LinuxNetworkInterfaceMarshal.cs: added. Contains a set of
141         Linux-specific structures required for accessing the network
142         information. Patch contributed by Eric Butler
143         (eric@extremeboredom.net), thanks!
144
145         * MulticastIPAddressInformation.cs: added support for Linux
146         multicast information. Patch contributed by Eric Butler
147         (eric@extremeboredom.net), thanks!
148
149         * IPv4InterfaceStatistics.cs: use the parent IfacePath to get the
150         path to the interface description file.
151
152         * UnicastIPAddressInformation.cs: added stubs for
153         LinuxUnicastIPAddressInformation. Patch contributed by Eric Butler
154         (eric@extremeboredom.net), thanks!
155
156         * Ping.cs: Use /bin/ping when running as non-root user
157         (implementation by Jackson Harper <jaharper@novell.com>) or use
158         raw sockets if running as root or if the current process has the
159         CAP_NET_RAW Linux capability set while running as an unprivileged
160         user.
161
162 2008-03-07  Miguel de Icaza  <miguel@novell.com>
163
164         * NetworkInterface.cs: Use GetFileSystemEntries, on some systems
165         the files do not appear to be symlinks, but directories.
166
167 2008-02-18  Miguel de Icaza  <miguel@novell.com>
168
169         * IPv4InterfaceStatistics.cs: Implemented Linux support.
170
171         * NetworkInterface.cs: Implemented Linux support.
172
173         TODO: still missing GetIPProperties.
174
175 2007-10-23  Atsushi Enomoto  <atsushi@ximian.com>
176
177         * Ping.cs : Do not call OnPingCompleted() at CancelAsync() it should
178           be called at RunWorkerCompleted. Simplified RunWorkerCompleted.
179
180 2007-09-29  Miguel de Icaza  <miguel@novell.com>
181
182         * NetworkInterface.cs (GetAllNetworkInterfaces): return an empty
183         array instead of throwing an exception on operating systems where
184         we can not detect the network interfaces. 
185
186 2007-09-07  Atsushi Enomoto  <atsushi@ximian.com>
187
188         * IPGlobalProperties.cs : implemented properties on linux.
189
190 2007-09-06  Atsushi Enomoto  <atsushi@ximian.com>
191
192         * Ping.cs, PingReply.cs, PingCompletedEventArgs.cs : implemented
193           in managed code.
194
195 2007-09-03  Atsushi Enomoto  <atsushi@ximian.com>
196
197         * IPGlobalStatistics.cs : Mib-* class is nonpublic.
198         * Win32NetworkInterfaceMarshal.cs IPv4InterfaceProperties.cs
199           IPGlobalProperties.cs IPInterfaceProperties.cs
200           NetworkInterface.cs : move Win32NetworkInterfaceMarshal.FixedInfo to
201           Win32_FIXED_INFO.Instance and share it with Win32IPGlobalProperties.
202           Fixed GetUdp[6]Table() / GetTcp[6]Table() marshalling issue.
203
204 2007-08-29  Atsushi Enomoto  <atsushi@ximian.com>
205
206         * NetworkInterface.cs,
207           IPv4InterfaceStatistics.cs
208           IPInterfaceProperties.cs
209           IPv4InterfaceProperties.cs
210           IPv6InterfaceProperties.cs
211           IPAddressCollection.cs
212           GatewayIPAddressInformation.cs
213           GatewayIPAddressInformationCollection.cs
214           IPAddressInformation.cs
215           IPAddressInformationCollection.cs
216           MulticastIPAddressInformation.cs
217           MulticastIPAddressInformationCollection.cs
218           UnicastIPAddressInformation.cs
219           UnicastIPAddressInformationCollection.cs
220           Win32NetworkInterfaceMarshal.cs (new) :
221           NetworkInterface implementation using Win32 API.
222
223           Not sure how MIB-based implementation (for Linux) is possible but
224           it will follow.
225
226 2007-08-27  Atsushi Enomoto  <atsushi@ximian.com>
227
228         * IPGlobalProperties.cs : implemented remaining methods in
229           MibIPGlobalProperties. Support /usr/compat/linux/proc
230           for some BSD environment.
231
232 2007-08-27  Atsushi Enomoto  <atsushi@ximian.com>
233
234         * IPGlobalProperties.cs, TcpStatistics.cs,
235           IPGlobalStatistics.cs, IcmpV4Statistics.cs,
236           IcmpV6Statistics.cs, UdpStatistics.cs :
237           and here is non-Windows version, based on /proc/net/snmp(6).
238
239 2007-08-27  Atsushi Enomoto  <atsushi@ximian.com>
240
241         * IPGlobalProperties.cs, TcpConnectionInformation.cs,
242           TcpStatistics.cs, IPGlobalStatistics.cs, IcmpV4Statistics.cs,
243           IcmpV6Statistics.cs, UdpStatistics.cs :
244           initial implementation of IPGlobalProperties and its children
245           for Win32 API, mostly done. Non-Windows implementation should
246           follow.
247
248 2007-08-13  Alan McGovern  <amcgovern@novell.com>
249
250         * PhysicalAddress.cs: Added patch for #82403 to fix some parsing
251         errors and a bug in .Equals()
252
253 2006-03-11  Miguel de Icaza  <miguel@novell.com>
254
255         * NetworkChange.cs: Use pragmas to eliminate warnings from events
256         that we do not trigger yet.
257
258         This is a candidate for using Aaron's NetworkManager code.  But
259         would make us depend on d-bus.
260
261         * NetworkInformationException.cs: Use error_code for ErrorCode,
262         instead of NativeErrorCode.   Fixes warning. 
263
264 2006-02-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
265
266         * UnicastIPAddressInformation.cs:
267         * PingException.cs:
268         * TcpConnectionInformation.cs:
269         * IPv4InterfaceStatistics.cs:
270         * NetworkInformationException.cs:
271         * IPAddressInformation.cs:
272         * MulticastIPAddressInformationCollection.cs:
273         * TcpStatistics.cs:
274         * IPGlobalStatistics.cs:
275         * NetworkInformationPermission.cs:
276         * MulticastIPAddressInformation.cs:
277         * IcmpV4Statistics.cs:
278         * IcmpV6Statistics.cs:
279         * IPv4InterfaceProperties.cs:
280         * PhysicalAddress.cs:
281         * IPv6InterfaceProperties.cs:
282         * GatewayIPAddressInformationCollection.cs:
283         * ChangeLog: Modified file.
284         * UnicastIPAddressInformationCollection.cs:
285         * IPAddressCollection.cs:
286         * NetworkInformationPermissionAttribute.cs:
287         * Ping.cs:
288         * NetworkChange.cs:
289         * IPAddressInformationCollection.cs:
290         * UdpStatistics.cs:
291         * GatewayIPAddressInformation.cs:
292         * IPGlobalProperties.cs:
293         * IPInterfaceProperties.cs:
294         * NetworkInterface.cs: implemented or stubbed out.
295
296 2006-02-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
297
298         * NetBiosNodeType.cs:
299         * IPStatus.cs:
300         * NetworkInterfaceType.cs:
301         * SuffixOrigin.cs:
302         * DuplicateAddressDetectionState.cs:
303         * NetworkInformationAccess.cs:
304         * OperationalStatus.cs:
305         * TcpState.cs:
306         * PingCompletedEventHandler.cs:
307         * NetworkInterfaceComponent.cs:
308         * NetworkAvailabilityChangedEventHandler.cs:
309         * NetworkAvailabilityEventArgs.cs:
310         * PrefixOrigin.cs:
311         * NetworkAddressChangedEventHandler.cs:
312         * PingCompletedEventArgs.cs:
313         * PingOptions.cs:
314         * PingReply.cs: all enums, all event handlers/args + 2 classes.
315