]> git.karo-electronics.de Git - karo-tx-redboot.git/blob - packages/net/tcpip/v2_0/ChangeLog
cc3a4d8e7affe2359c9a1fb77f038acd6d9ea4ff
[karo-tx-redboot.git] / packages / net / tcpip / v2_0 / ChangeLog
1 2003-12-10  Gary Thomas  <gary@mlbassoc.com>
2
3         * include/netinet/in.h: Prototype for inet_ntoa_r()
4
5 2003-11-25  Manu Sharma <manu.sharma@ascom.com>
6         * src/sys/net/bridgestp.c: Code for Spanning Tree Protocol (STP).
7
8         * cdl/openbsd_net.cdl: Changes make provisions for STP code.
9         * doc/openbsd.sgml:         Same.
10         * include/net/if.h:         Same.
11         * include/net/if_bridge.h:  Same.
12         * include/net/if_llc.h:     Same.
13         * include/sys/sockio.h:     Same.
14         * src/sys/net/if_bridge.c:  Same.
15
16         * doc/openbsd-manpages-stp.sgml: Documentation for OpenBSD specific code
17         * doc/openbsd-manpages-netintro.sgml: Same.
18         * doc/openbsd-manpages-bridge.sgml:   Same.
19
20 2003-09-22  Reinhard Jessich  <Reinhard.Jessich@frequentis.com>
21
22         * include/net/if.h: Define macro IF_IS_EMPTY needed by eth_drv.c
23
24 2003-02-24  Jonathan Larmour  <jifl@eCosCentric.com>
25
26         * cdl/openbsd_net.cdl: Improve doc links.
27
28 2003-01-30  Jonathan Larmour  <jifl@eCosCentric.com>
29
30         * src/sys/net/if_bridge.c (bridge_input): Learn source host addr,
31         not dest host addr.
32         Fix pointed to by Daniel NĂ©ri.
33
34 2002-12-14  Nick Garnett  <nickg@ecoscentric.com>
35
36         * src/sys/netinet/tcp_usrreq.c (tcp_usrreq): Rearranged ifndef on
37         PRU_SENSE case to keep the case in the switch and let it return a
38         sensible result. Otherwise a stat() on a socket causes a panic().
39
40 2002-12-03  Gary Thomas  <gthomas@ecoscentric.com>
41
42         * src/ecos/support.c (show_network_tables): New function used
43         to print network information (interface, routing).
44
45 2002-05-21  Jesper Skov  <jskov@redhat.com>
46
47         * src/lib/recv.c: Fix warning. socket.h declarations are not
48         available to the kernel code. Added missing argument in the
49         recvfrom call.
50
51 2002-05-14  Jesper Skov  <jskov@redhat.com>
52
53         * include/netinet6/in6.h: Fixed warnings.
54
55         * src/sys/kern/uipc_socket2.c (sblock): Fixed warning.
56         * src/sys/netinet/tcp_input.c: Same.
57         * src/sys/net/if_loop.c (looutput): Same.
58         * src/sys/kern/sockio.c: Same.
59
60         * include/sys/param.h: Include machine headers after the namespace
61         changing macros to get the desired declarations, thus fixing
62         compiler warnings.
63
64 2002-04-26  Gary Thomas  <gthomas@redhat.com>
65
66         * src/sys/netinet/ip_input.c: Proper "extern" definition of 'ipstat'.
67
68         * src/sys/netinet/raw_ip.c: 
69         * src/sys/netinet/ip_output.c: 
70         * include/netinet/ip_var.h: Use of ramdom IP packet id is optional.
71
72 2002-04-22  Gary Thomas  <gthomas@redhat.com>
73
74         * src/sys/netinet/tcp_usrreq.c: 
75         * src/sys/netinet/tcp_output.c: 
76         * src/sys/netinet/tcp_input.c: 
77         * src/sys/netinet/tcp_debug.c: 
78         * include/netinet/tcp_debug.h: Fully conditionalize on TCPDEBUG.
79
80 2002-03-27  Jonathan Larmour  <jlarmour@redhat.com>
81
82         * doc/openbsd.sgml: Manpages now live in "common" BSD package.
83
84 2002-03-19  Gary Thomas  <gthomas@redhat.com>
85
86         * src/sys/net/route.c (cyg_route_reinit): Renamed from route_reinit.
87
88 2002-03-11  Hugo Tyson  <hmt@redhat.com> 
89
90         [Case 107110]
91
92         * src/sys/netinet/in.c (in_control): SIOCSIFADDR switch entry
93         moved to before the scan for this same address being in the list
94         already, along with Add and Delete (SIOCAIFADDR,SIOCDIFADDR) arms.
95         It falls through into the same alloc-if-needed code anyway.
96         Thus repeatedly setting the same address does not leak store.
97
98         * src/sys/net/route.c (route_reinit): Rewrite to delete all routes
99         individually rather than en-masse (leaking store).
100         (rt_reinit_rtdelete): New function; callback for individual
101         deletion.
102         (rtioctl): Do not pass in a "route **" to return a pointer to the
103         route removed or added; this results in an extra reference, by the
104         returned pointer, and so a storeleak.
105         (rtrequest): RTM_DELETE arm: do not free a gateway route if the
106         gateway pointer is the same as the route itself - it gets freed
107         *again* at the end of the routine if you do.  Just dec the refcnt.
108
109 2002-03-07  Gary Thomas  <gthomas@redhat.com>
110
111         * include/sys/param.h: Privatize route_reinit(), arc4random().
112
113 2002-02-28  Hugo Tyson  <hmt@redhat.com>
114 2002-02-28  Martin Buck <martin.buck@ascom.ch>
115
116         * src/sys/net/if_ethersubr.c (ether_input): [Bugzilla 60318]
117         ether_input() schedules processing by calling schednetisr(FOO) and
118         then queues the frame afterwards.  Where we cannot be preempted
119         eg. in a DSR or in the original BSD kernel, this is OK.  In eCos
120         the call to schednetisr(FOO) might cause a context switch *before*
121         the frame is enqueued.  This "jams" one packet in the queue,
122         delaying it until the next packet, and so on.
123
124         This change makes ether_input() store up the schednetisr() arg
125         until the end, and do the call then, much like it does with the
126         queue to use.  Thanks Martin!
127
128 2002-02-22  Hugo Tyson  <hmt@redhat.com>
129
130         * doc/openbsd.sgml: New file; separated stack-specific docs from
131         monolithic net doc, and tidied up in various ways.
132
133 2002-02-15  Gary Thomas  <gthomas@redhat.com>
134
135         * cdl/openbsd_net.cdl: Slight changes in layout required by split
136         of network stacks.
137
138 2002-02-13  Jonathan Larmour  <jlarmour@redhat.com>
139 2002-02-13  Andrew Lunn  <andrew.lunn@ascom.ch>
140
141         * include/sys/mbuf.h: Declare variables as extern in header.
142         * src/sys/kern/uipc_mbuf.c: Define mbtypes[] and init it.
143
144 2002-02-05  Hugo Tyson  <hmt@redhat.com>
145
146         * cdl/openbsd_net.cdl: Place this package below  CYGPKG_NET
147         ie. the common networking package.  Only affects the view in the
148         GUI CT, no big deal.
149
150 2002-01-28  Gary Thomas  <gthomas@redhat.com>
151
152         * src/sys/netinet/ip_input.c: inet_ntoa() is now common.
153
154         * cdl/openbsd_net.cdl: Renamed from net.cdl.  This package
155         is now a proper sub-package, implementing a network stack.
156
157 2002-01-28  Jonathan Larmour  <jlarmour@redhat.com>
158
159         * cdl/net.cdl: Clarify CYGPKG_NET_ROUTING description.
160
161 2002-01-08  Jonathan Larmour  <jlarmour@redhat.com>
162
163         * tests/server_test.c (server_test): Correct port conversion.
164
165 2001-12-14  Hugo Tyson  <hmt@redhat.com>
166
167         * src/sys/net/if_ethersubr.c (ether_output): Never ever print
168         anything!  It can recurse unexpectedly if debugging over net.
169
170 2001-12-10  Andrew Lunn <andrew.lunn@ascom.ch>
171
172         * cdl/net.cdl: Add configury to eliminate network timing stats.
173         * src/include/machine/param.h: Timing statistics for things like 
174         memcpy, mbuf_alloc etc now use configury to determine if the
175         statistics code should be compiled.
176         * src/ecos/support.c: Ditto.
177         * tests/nc_test_slave.c: Only print timing stats when they
178         are enabled. 
179         * tests/tcp_echo.c: Ditto.
180         * tests/nc_test_master.c: Allow building with SNMP lib which has
181         its own gettimeofday(). This should be fixed better a different
182         way but will do for now.
183         
184 2001-12-06  Hugo Tyson  <hmt@redhat.com>
185
186         * src/lib/bootp_support.c (init_net): Just re-tabbed and checked
187         the addition to initialize DNS from DHCP info - it had already
188         snuck into the file in the previous change from Andrew.  Include
189         of netdb.h added also, from the patch in Bug 57019.  Also check
190         CYGINT_ISO_DNS for the setup code instead of CYGPKG_ISO_DNS.
191
192 2001-12-04  Jonathan Larmour  <jlarmour@redhat.com>
193
194         * src/lib/bootp_support.c: Check CYGINT_ISO_DNS (from
195         <pkgconf/isoinfra.h>) instead of CYGPKG_ISO_DNS.
196
197 2001-12-03   Andrew Lunn  <Andrew.Lunn@ascom.ch>
198
199         * src/lib/bootp_support.c: get_bootp_option(): Take the
200         max length of data we want out of the bootp record.
201         * src/lib/dhcp_prot.c: Pass the length we expect for an option.
202
203 2001-08-16  Anssi Pulkkinen <Anssi.Pulkkinen@ascom.ch>
204
205         * src/lib/dhcp_prot.c: Make sure we use the newly calculated xid.
206         
207 2001-08-02  Anand Srivastava <Anand.Srivastava@ascom.ch>
208
209         * src/lib/dhcp_prot.c do_dhcp: ID calculation must be done only
210         once. moved it out the loop.    
211         
212 2001-11-21  Hugo Tyson  <hmt@redhat.com>
213
214         * src/lib/dhcp_support.c (dhcp_mgt_entry): If we have an
215         SNMPAGENT, must recycle it whenever we reinitialize all
216         interfaces; call SnmpdShutDown() to cause this.
217         Also re-initialize all loopback interfaces here too.    
218
219 2001-11-30  Hugo Tyson  <hmt@redhat.com>
220
221         * src/lib/dhcp_prot.c (set_default_dhcp_tags): New routine to
222         insert all the extra woffle we need neatly each time, keeping the
223         state machine's case arms to the real work.  The new thing this
224         sets is TAG_DHCP_PARM_REQ_LIST, with a list that matches the
225         default set we get from a LINUX dhcpd.  This is because M$ servers
226         need explicit requests for eg. TAG_GATEWAY.  Note that I have
227         included configuration to override the set of tags requested here
228         in the source, but not yet backed up by CDL - we'll see whether
229         anyone needs this.
230         (set_variable_tag): New routine to insert a variable pointed-to
231         data item rather than an int of 1,2 or 4 bytes.
232         (do_dhcp): Call set_default_dhcp_tags() every time we send a
233         packet, rather than ad hoc additions in each state.
234
235 2001-11-29  Jonathan Larmour  <jlarmour@redhat.com>
236
237         * include/machine/ansi.h: No longer require BSD string function
238         compatibility macros (in fact they confuse things).
239
240         * cdl/net.cdl: Require BSD compatibility functions from <string.h>.
241
242 2001-11-19  Hugo Tyson  <hmt@redhat.com>
243
244         * include/bootp.h (BP_STD_TX_MINPKTSZ): New symbol defining the
245         minimal DHCP packet size which we should send.
246
247         * src/lib/dhcp_prot.c (scan_dhcp_size): New routine to scan up to
248         the end of the packet, for length determination and padding.
249         (dhcp_size): Now uses scan_dhcp_size().
250         (dhcp_size_for_send): New, uses scan_dhcp_size() and pads with
251         zero up to the min packet size that we should send.
252         (do_dhcp): In every sendto() call, use dhcp_size_for_send(xmit) in
253         order to send padded, full size packets as needed.  5 instances.
254
255         Credit to "Anssi Pulkkinen" <Anssi.Pulkkinen@ascom.ch> for the
256         original version of this patch.
257
258 2001-11-08  Jesper Skov  <jskov@redhat.com>
259
260         * tests/server_test.c (net_test): Fix compile error.
261
262 2001-11-02  Gary Thomas  <gthomas@redhat.com>
263
264         * src/ecos/support.c: 
265         * include/machine/ansi.h: Add C++ support [externC].
266
267 2001-11-11  Andrew Lunn <andrew.lunn@ascom.ch>
268
269         *src/lib/recv.c: Implement the recv() call.
270
271 2001-10-29  Hugo Tyson  <hmt@redhat.com>
272
273         * src/sys/net/if_ethersubr.c (ether_output): [CASE 106613] Even if
274         the queue is full, and we are dropping the packet, try to start
275         the interface anyway, to give it a chance to empty the queue if
276         the device has recovered from whatever made the queue fill up in
277         the first place - being unplugged from the network for example.
278         This change is belt & braces with a similar policy in the periodic
279         tickle function in the logical ether driver in io/eth/... ; this
280         change will recover the situation immediately if the application
281         continues trying to send despite ENOBUFS.
282
283 2001-10-25  Hugo Tyson  <hmt@redhat.com>
284
285         * src/sys/net/if_bridge.c (bridge_broadcast): Count if_obytes in
286         destination interfaces as well as the bridge interface; normally
287         this is done in if_ethersubr.c but here we talk directly to the
288         interface, bypassing that layer.  Thanks to Andrew Lunn for
289         noticing that.
290
291 2001-10-18  Jonathan Larmour  <jlarmour@redhat.com>
292
293         * src/sys/netinet/in.c (in_lifaddr_ioctl): Silence warnings about
294         trigraphs.
295
296 2001-10-10  Hugo Tyson  <hmt@redhat.com>
297
298         * tests/ftp_test.c (net_test): This was lacking #ifdefs for
299         CYGHWR_NET_DRIVER_ETH0 and CYGHWR_NET_DRIVER_ETH1.  Ooops.
300
301 2001-10-05  Jonathan Larmour  <jlarmour@redhat.com>
302
303         * cdl/net.cdl (CYGPKG_NET_CFLAGS_ADD): Define __INSIDE_NET within
304         this package to allow segregation of definitions only relevant for
305         internal consumption, and definitions allowable for external
306         consumption.
307
308         * include/lib/libkern/libkern.h: Conditionalize on __INSIDE_NET.
309
310 2001-10-04  Jonathan Larmour  <jlarmour@redhat.com>
311
312         * cdl/net.cdl (CYGHWR_NET_DRIVER_ETH0): Make flavor bool so it isn't
313         defined when 0.
314         (CYGHWR_NET_DRIVER_ETH1): Ditto.
315
316 2001-10-04  Hugo Tyson  <hmt@redhat.com>
317
318         * src/lib/dhcp_support.c: Some conditional compilation tags were
319         wrong vis a vis ETH1 versus ETH0.  Thanks to "Simon"
320         <simoncc@ms46.url.com.tw> for spotting it.
321
322 2001-10-04  Jesper Skov  <jskov@redhat.com>
323
324         * tests/multi_lo_select.c (cyg_user_start): Added CYG_TEST_INIT
325         call.
326         * tests/ping_lo_test.c (cyg_start): Same.
327         * tests/tcp_lo_test.c (cyg_start): Same.
328         * tests/udp_lo_test.c (cyg_start): Same.
329         * tests/tcp_lo_select.c (cyg_start): Same.
330
331 2001-09-28  Jonathan Larmour  <jlarmour@redhat.com>
332
333         * cdl/net.cdl: Tell isoinfra we support getproto* and getserv*
334         NS functionality.
335         * include/netdb.h: Move to...
336         * include/net/netdb.h: ...here.
337
338 2001-09-25  Jesper Skov  <jskov@redhat.com>
339
340         * cdl/net.cdl: Don't build tests/nc_test_master as it's a host
341         side tool.
342
343         * src/lib/getserv.c: Added domain service.
344
345         * include/netdb.h: Moved getbyhost()/getbyaddr() declarations and
346         hostent struct definition to the DNS package. 
347
348         * src/lib/gethost.c: Removed.
349
350         * cdl/net.cdl: Removed gethost.c (replaced by proper
351         implementation in CYGPKG_NS_DNS).
352
353 2001-09-17  Hugo Tyson  <hmt@redhat.com>
354 2001-09-17  Andrew Lunn <Andrew.Lunn@ascom.ch>
355
356         * src/sys/net/if_bridge.c (bridge_broadcast): Fix a null pointer
357         deference.  Supporting VLANs, it seems that during the net_init()
358         function, it sends a packet to the bridge with the source
359         interface being NULL.  Stats counting assumed otherwise.
360
361 2001-09-14  Jonathan Larmour  <jlarmour@redhat.com>
362
363         * src/sys/kern/uipc_syscalls.c: Last change to uipc_syscalls.c
364         wasn't right. The parts that were __ECOS__ should simply have
365         been completely removed.
366
367 2001-09-13  Hugo Tyson  <hmt@redhat.com>
368
369         * cdl/net.cdl: Add configury to control whether we can tickle the
370         network devices if there's a lack of network traffic, and to
371         control the delay time before so doing.
372
373         * src/ecos/timeout.c (alarm_thread): Use a timed wait, if so
374         configured, for the flag; and if it times out, tickle all the
375         devices via the common ether driver routine for so doing.
376
377 2001-09-12  Jonathan Larmour  <jlarmour@redhat.com>
378
379         * include/sys/socketvar.h: Use __ECOS, not __ECOS__.
380         * src/sys/kern/uipc_syscalls.c: Ditto.
381         * src/sys/kern/uipc_socket2.c (sblock): Ditto.
382
383 2001-08-02  Jonathan Larmour  <jlarmour@redhat.com>
384
385         * tests/linux_echo.c (echo_test): Set socket options before bind.
386         * tests/nc_test_slave.c (do_tcp_test): Ditto.
387         * tests/server_test.c (server_test): Ditto.
388         * tests/tcp_echo.c (echo_test): Ditto.
389         * tests/tcp_lo_test.c (server): Ditto.
390         * tests/tcp_sink.c (sink_test): Ditto.
391         * tests/tcp_source.c (source_test): Ditto.
392
393 2001-07-27  Jonathan Larmour  <jlarmour@redhat.com>
394
395         * include/sys/select.h: Renamed to....
396         * include/sys/bsdselect.h: New file.
397         * include/sys/socketvar.h: Include <sys/bsdselect.h> instead of
398         <sys/select.h>
399         * src/lib/select.c: Include <sys/bsdselect.h>
400
401 2001-07-26  Jonathan Larmour  <jlarmour@redhat.com>
402
403         * cdl/net.cdl (CYGPKG_NET_API_LOCAL): Implements select()
404         * include/sys/bsdtypes.h: No need for these select definitions.
405
406 2001-06-20  Grant Edwards <grante@visi.com>
407 2001-06-20  Hugo Tyson  <hmt@redhat.com>
408
409         * src/lib/dhcp_prot.c (alarm_function): Change the lease state
410         before re-enabling the alarm so that if it somehow gets times of
411         zero (ie. right now) it quickly completes the state machine rather
412         than recursing to its doom.
413         (new_lease): Test the retcode of get_bootp_option() and use
414         obvious defaults if the T1 and T2 times are not provided - this is
415         RFC compliant! - and use "infinite lease" if the lease time is not
416         provided at all.
417
418 2001-06-19  Trenton D. Adams  <tadams@extremeeng.com>
419
420         * tests/server_test.c (server_test): Null terminate read string
421         at right place.
422
423 2001-06-13  Jonathan Larmour  <jlarmour@redhat.com>
424
425         * cdl/net.cdl: Make debug output an option. Include DHCP.
426
427         * src/lib/dhcp_prot.c: DHCP_CHATTER -> CYGDBG_NET_DHCP_CHATTER
428
429         * src/ecos/support.c (cyg_kmem_init): Only print debug output if
430         requested.
431
432         * cdl/net.cdl: Make requirements on other eCos features more
433         abstract.
434
435 2001-05-09  Robin Farine <acnrf@dial.eunet.ch>
436 2001-05-09  Hugo Tyson  <hmt@redhat.com>
437
438         * src/lib/dhcp_prot.c (do_dhcp): In DHCPSTATE_INIT case, create a
439         new xid.  Servers apparantly can use *only* this to distinguish
440         machines, even with different MAC addresses!  Therefore we use
441         both the most sensitive randomizer available (arc4random()) which
442         in reality uses a finegrain clock, and salt the value further with
443         the MAC address itself.  Thanks again Robin.
444
445         * src/ecos/support.c (arc4random): Make arc4random not always be a
446         multiple of 256; stir the clock into the low bits also.
447
448 2001-05-09  Robin Farine <acnrf@dial.eunet.ch>
449 2001-05-09  Hugo Tyson  <hmt@redhat.com>
450
451         * src/sys/net/if_bridge.c: Patch from Robin; the route aging
452         process took twice as long to timeout because an entry requires
453         *two* executions of bridge_rtage() to actually get removed.
454         Record the timeout over 2 to fix that and also define
455         BRIDGE_RTABLE_TIMEOUT as 300s that the standard specifies as
456         default aging time.
457
458 2001-05-09  Hugo Tyson  <hmt@redhat.com>
459
460         * src/lib/getserv.c (setreturned): New routine to set up a copy of
461         the service data with the port converted to network order like the
462         API demands.  It's this way to make the initialization of the
463         table most readable.  
464         (services[]): Added an entry for snmp.
465         (getservbyname): Use setreturned() to return adjusted info.
466         (getservbyport): Use setreturned() to return adjusted info and
467         compare with host-ordered version of the port.
468
469         * src/lib/tftp_client.c (tftp_get): 
470         (tftp_put): Do not convert to net order from
471         the getserv structure; it's already net order.
472
473         * src/lib/tftp_server.c (tftpd_server): Convert the socket into
474         host order; it's network order in the getserv API.
475
476         * tests/ftp_test.c (ftp_test): Do not convert to net order from
477         the getserv structure; it's already net order.
478
479         * tests/tftp_client_test.c (PUTFILE): Changed the names of the
480         test files to be fully qualified, this makes the test work with
481         more server machines.  /tftpboot/tftp_get and /tftpboot/tftp_put.
482         
483 2001-04-24  Bart Veer  <bartv@redhat.com>
484
485         * cdl/net.cdl:
486         Prevent multiple device drivers from implementing the
487         same eth0/eth1 device.
488
489 2001-03-30  Jonathan Larmour  <jlarmour@redhat.com>
490
491         * cdl/net.cdl (CYGPKG_NET_SYSCTL): Comment out - currently unsupported.
492
493 2001-03-28  Richard Panton  <rpanton@3glab.com>
494
495         * include/bootp.h: Define func protos with C linkage
496         * include/netdb.h: Ditto
497         * include/network.h: Ditto
498         * include/tftp_support.h: Ditto
499
500         * src/lib/getserv.c: getservbynumber() -> getservbyport()       
501
502 2001-03-12  Gary Thomas  <gthomas@redhat.com>
503
504         * src/lib/network_support.c (init_all_network_interfaces): 
505         FIx slightly broken previous attempt in abort code.
506
507 2001-03-11  Gary Thomas  <gthomas@redhat.com>
508
509         * src/lib/network_support.c (init_all_network_interfaces): 
510         Let initialization of PCMCIA devices abort after ~5 seconds.
511
512 2001-02-23  Jonathan Larmour  <jlarmour@redhat.com>
513
514         * src/lib/tftp_server.c (STACK_SIZE): Align
515
516 2001-02-20  Jonathan Larmour  <jlarmour@redhat.com>
517
518         * cdl/net.cdl: Avoid puts to the CDL header when a CDL
519         define will do.
520         Rename CYGPKG_NET_BRIDGE_CODE -> CYGPKG_NET_BRIDGE
521         Rename CYGPKG_NET_NBRIDGE -> CYGNUM_NET_BRIDGES
522         Rename CYGPKG_NET_BRIDGE_HANDLER -> CYGINT_NET_BRIDGE_HANDLER
523         Make if_bridge.c compilation conditional on CYGPKG_NET_BRIDGE
524
525         * src/sys/net/if_bridge.c: Reflect above renames.
526
527 2001-02-20  Hugo Tyson  <hmt@redhat.com>
528 2001-02-15  Martin Buck  <martin.buck@ascom.ch>
529
530         * cdl/net.cdl: Split up CYGPKG_NET_NBRIDGE into 2 parts:
531         CYGPKG_NET_NBRIDGE and CYGPKG_NET_BRIDGE_HANDLER. If
532         CYGPKG_NET_BRIDGE_HANDLER is nonzero, calls to an Ethernet
533         bridge are inserted into the stack's data path. If
534         CYGPKG_NET_NBRIDGE is nonzero, the standard OpenBSD bridge
535         code is added. This setup allows you to implement your own
536         bridge as a separate package which then implements
537         CYGPKG_NET_BRIDGE_HANDLER so it gets called by the stack.
538         NBRIDGE now is the same as CYGPKG_NET_BRIDGE_HANDLER instead
539         of CYGPKG_NET_NBRIDGE. This means it's nonzero if the bridge
540         is wanted, but it no longer contains the number of bridge
541         buffers requested. This shouldn't be a problem, because the
542         only place where the actual number of buffers is required is
543         in if_bridge.c, which now uses CYGPKG_NET_NBRIDGE instead
544         of NBRIDGE.
545
546         * src/sys/net/if_bridge.c: Use CYGPKG_NET_NBRIDGE instead of
547         NBRIDGE, because the latter one now only means that there is
548         a bridge, not that we should implement it.
549
550 2001-01-07  Gary Thomas  <gthomas@redhat.com>
551
552         * src/ecos/support.c: 
553         * cdl/net.cdl:  Add interface 'CYGPKG_NET_DRIVER_FRAMEWORK'
554         to describe interdependencies between network stack and driver
555         framework packages.
556
557
558 2001-01-03  Hugo Tyson  <hmt@redhat.com>
559
560         * tests/linux_echo.c: New file to test for network bandwidth
561         limitations in host side.  Builds to a linux version of the
562         tcp_echo middleman.
563
564         * tests/make.linux (all): Build linux_echo.
565
566 2001-01-03  Hugo Tyson  <hmt@redhat.com>
567
568         * include/dhcp.h (struct dhcp_lease): Define the semaphore pointer
569         field in each lease structure.
570
571         * src/lib/dhcp_support.c: Initialize the dhcp_lease structs to
572         point to the semaphore "dhcp_needs_attention".
573
574         * src/lib/dhcp_prot.c (alarm_function): Post to the semaphore
575         pointed to in the lease structure, rather than one hard-coded.
576         This is much cleaner, in that dhcp_prot.c now uses no external
577         variables, all state goes through the API.
578
579 2000-11-15  Hugo Tyson  <hmt@redhat.com>
580
581         * src/lib/bootp_support.c (init_net): Do a SIOCSIFADDR a 2nd time
582         after setting the netmask (SIOCSIFNETMASK) in order for the newly
583         set netmask to "take" - otherwise a bogus route based on the
584         default netmask lurks within the system.
585
586 2000-11-10  Hugo Tyson  <hmt@redhat.com>
587
588         * src/ecos/support.c (cyg_net_get_mem_stats): New API for getting
589         info on the various mem pools the stack uses to enable tests to
590         spot store leaks.
591
592         * include/network.h (cyg_net_get_mem_stats): Export this API for
593         automated network testing.
594
595 2000-10-24  Hugo Tyson  <hmt@redhat.com>
596
597         * src/lib/tftp_server.c (tftpd_server): Cut down the chatter to
598         nothing (unless there's an error) if running automated testing.
599
600 2000-10-17  Hugo Tyson  <hmt@redhat.com>
601 2000-10-10  Andrew Lunn <Andrew.Lunn@ascom.ch>
602
603         * src/ecos/support.c (setsoftnet,cyg_panic): Less chatter,
604         particularly not when we're out of MBUFs.
605
606 2000-10-17  Hugo Tyson  <hmt@redhat.com>
607 2000-10-10  Andrew Lunn <Andrew.Lunn@ascom.ch>
608
609         * src/sys/net/if_bridge.c: Intergrated a more up to date version
610         from the OpenBSD sources. This fixes a few bugs.
611
612 2000-10-17  Hugo Tyson  <hmt@redhat.com>
613
614         * src/ecos/support.c (cyg_ktime_init): Start time at 1 Second so
615         that all visible time values are valid; offset time by 1 Second
616         subsequently, for ever.
617
618         * src/sys/netinet/if_ether.c (arpresolve): Undo the change below;
619         instead make "kernel time" be valid ie. more than 1 second into
620         its life.  Dumb stack assumes it takes UNIX-like time to start.
621
622 2000-10-16  Hugo Tyson  <hmt@redhat.com>
623
624         * src/sys/netinet/if_ether.c (arpresolve): Deal with the initial
625         case when the route timeout is zero (as initialized).  Otherwise
626         it never actually sent out the initial ARP request packet.  This
627         caused connect() not to work, and thus ftp_test, for example.
628
629         * src/lib/dhcp_support.c (dhcp_start_dhcp_mgt_thread): Also
630         initialize the dhcp semaphore here.  The other place it is init'd
631         [correctly] didn't fire if we use the standard support.  Fixed
632         some absent return value warnings.
633
634 2000-10-10  Hugo Tyson  <hmt@redhat.com>
635
636         * src/lib/tftp_server.c (tftpd_server): Modify the server to
637         support multiple sessions - ie. starting N servers at once.
638         Mainly this means closing the initial socket whilst servicing a
639         request, so that another server can then bind to it; tell another
640         server to retry that bind via a semaphore, that it waited on when
641         the bind failed initially, rather than just returning.
642
643         * src/lib/tftp_dummy_file.c (dummy_open): Trivial bugfix: scan the
644         list of files as well as incrementing the counter.
645
646 2000-10-05  Andrew Lunn <andrew.lunn@ascom.ch>
647
648         * src/ecos/support.c (cyg_ktime_func,cyg_ktime_init,cyg_net_init): 
649         Make 'ktime' value valid.
650
651 2000-10-05  Hugo Tyson  <hmt@redhat.com>
652
653         * src/lib/tftp_server.c (tftpd_write_file): Restructure this
654         function to match the loop layout of the tftpd_read_file; so that
655         it retries sensibly, and so that a delayed/duplicated packet does
656         not cause a doubling of all traffic with a less smart host.
657
658 2000-10-05  Hugo Tyson  <hmt@redhat.com>
659
660         * include/tftp_support.h (TFTP_TIMEOUT_MAX): Change this to 50; it
661         refers to total timeouts for a whole session, so it should be
662         greater than the retry count for each packet.
663
664 2000-10-05  Hugo Tyson  <hmt@redhat.com>
665
666         * src/lib/tftp_dummy_file.c: Make the fake file slots be a Mb
667         instead of 10k so that you can do meaningful timing tests with it.
668         (dummy_open): Allow re-write of an existing file so that you can
669         do repeated put tests without running out of slots.
670
671 2000-10-05  Hugo Tyson  <hmt@redhat.com>
672
673         * src/lib/select.c (_cyg_select): Unlock the scheduler in a couple
674         of other places I missed.  Doh.
675
676 2000-09-28  Hugo Tyson  <hmt@redhat.com>
677
678         * src/lib/select.c (_cyg_select): Elect to wait for the flags
679         atomically wrt sockets possibly becoming ready - this was a race
680         condition that would apparently delay a packet until another
681         arrived, eg. a tftp retry.  Then two came along all at once.
682
683 2000-09-28  Hugo Tyson  <hmt@redhat.com>
684
685         * src/lib/tftp_server.c: Add lots of instrumentation for
686         debugging.  It's switched off, and doesn't have a real config opt,
687         though it easily could have.
688
689 2000-09-26  Hugo Tyson  <hmt@redhat.com>
690
691         * src/lib/tftp_server.c (tftpd_read_file): Doh! TFTP_TIMEOUT is an
692         internal API thing, not an error we can send in an ERROR packet.
693
694         * include/tftp_support.h: Comment to this effect.
695
696 2000-09-26  Hugo Tyson  <hmt@redhat.com>
697 2000-09-25  Andrew Lunn <Andrew.Lunn@ascom.ch>
698
699         * src/lib/tftp_server.c: Send an ERROR packet when giving up after
700         too many timeouts.  This should cause the client to give up as
701         well.  Also moved all the replicated code to send an ERROR packet
702         into one function.
703
704         [Huge] I collected another point where we can use the common
705         function also, and used ETIMEOUT instead of EBADOP for the new
706         error packet returns. Thanks Andrew!
707         
708 2000-09-14  Hugo Tyson  <hmt@redhat.com>
709
710         * cdl/net.cdl (CYGOPT_NET_DHCP_DHCP_THREAD_PARAM): Set default to
711         1 so that the DHCP management thread loops forever.  This allows
712         it to recover from a DHCP renewal failure.
713
714         * src/lib/dhcp_prot.c (next_timeout): Harden the DHCP protocol
715         machine against [simulated] failures - otherwise the tests with
716         simulated failures tend just to close down all the interfaces when
717         DHCP packets are lost.
718
719 2000-09-11  Gary Thomas  <gthomas@redhat.com>
720
721         * src/lib/bootp_support.c (init_net): Set default route correctly.
722
723 2000-09-01  Hugo Tyson  <hmt@cygnus.co.uk>
724
725         * src/ecos/support.c (cyg_net_init): You can't print things while
726         initializing the network!  Well, not if connected to GDB over the
727         network anyway.  The printf("Init device '%s'...); removed.
728
729 2000-09-01  Hugo Tyson  <hmt@cygnus.co.uk>
730
731         * OVERVIEW: This is part of the change to the network stack to
732         greatly reduce latencies both of (other) DSRs and of thread
733         scheduling.  All the work that the network stack *and* individual
734         ether drivers used to do in DSRs (including alarm callbacks and
735         data copies to/from the device memory) is moved into a "fast
736         network thread" instead.  It calls a device's "deliver" function
737         to do the work that was previously in the DSR.  This is a separate
738         thread so that it can be set higher priority than application
739         threads in order to minimize packet loss (depending on the
740         driver), if required (the application threads presumed to be
741         higher priority in turn than the network thread).  A crucial
742         consequence of this is that we are no longer locking against DSRs,
743         so a plain mutex can be used rather than the global scheduler
744         lock, thus simplifying all the splfoo/splx() style functions.
745
746         * src/ecos/timeout.c (alarm_thread): Addition of the "fast network
747         thread" which runs DSR-like activities.
748         (do_timeout): Timeout function morphed for calling from that.
749         (do_alarm, ecos_synch_eth_drv_dsr): new DSR functions to signal to
750         the thread.
751         (timeout): Race condition fixed.  splinternal() used for locking
752         instead of scheduler.
753         
754         * src/ecos/support.c (cyg_net_init): Splfoo/splx() functions,
755         together with tsleep/wakeup functions, all removed to separate
756         them from the mixed bag of utilities in this file.  What remains
757         is mbuf wrapper routines and the like, plus the network "netisr"
758         thread itself, the caller into the stack that does the slower
759         priority work.
760
761         * src/ecos/synch.c: New file; implemtation of new splfoo/splx()
762         functions, together with tsleep/wakeup functions, since they are
763         related now.
764
765         * cdl/net.cdl: Compile new file synch.c; two new options, one for
766         "fast thread" priority, and one for DHCP manager thread priority,
767         as I was adding prio configury.  CYGPKG_NET_FAST_THREAD_PRIORITY
768         and CYGPKG_NET_DHCP_THREAD_PRIORITY resp, with suitable default
769         values relative to the CYGPKG_NET_THREAD_PRIORITY.
770
771         * src/lib/dhcp_support.c (dhcp_start_dhcp_mgt_thread): Use the
772         configured priority rather than just "net thread - 1"
773
774 2000-08-31  Hugo Tyson  <hmt@cygnus.co.uk>
775
776         * tests/tcp_echo.c: Change the priorities of the main and loading
777         threads to accommodate the network having helper threads around at
778         adjacent priorities to its main thread prio.
779
780 2000-08-24  Hugo Tyson  <hmt@cygnus.co.uk>
781
782         * src/sys/net/if.c (ifioctl): Support the two new ioctl() keys; at
783         this level, the struct ifreq at the head of the data area must be
784         filled to select an interface.
785
786         * include/sys/sockio.h (SIOCGIFSTATSUD): Add two new eCos-only
787         ioctl() keys, SIOCGIFSTATSUD and SIOCGIFSTATS, for reading
788         statistical information out of ethernet devices, for SNMP. This
789         should allow SNMP (a) to not explode, (b) to get useful info out
790         of other device implementations than this one.
791
792 2000-08-17  Hugo Tyson  <hmt@cygnus.co.uk>
793
794         * src/ecos/timeout.c (timeout): Rework the timeout system to
795         record last-time-we-set-the-alarm and whence values, so that new
796         timeouts being added can be set up relative to the correct
797         absolute time.  Otherwise adding a new timeout sets them *all*
798         into the future by the expired portion of the previous minimum
799         pending timeout.  Also deal better with recursion ie. timeout
800         handlers themselves setting new timeouts as is only natural.
801         Lots of asserts too.
802
803         * src/ecos/support.c (cyg_splsoftnet): Use the new kernel facility
804         to lock mutex &c atomically, with the scheduler locked already.
805         (cyg_tsleep): Similarly, and reclaim the mutex likewise.
806         Also added lots of asserts to both calls the better to document
807         what's going on.
808
809 2000-08-17  Hugo Tyson  <hmt@cygnus.co.uk>
810
811         * src/lib/tftp_server.c: Fix contributors field.
812
813 2000-08-16  Hugo Tyson  <hmt@cygnus.co.uk>
814
815         * src/lib/tftp_server.c: Improvements to server wrt better error
816         messages and detection of filesystem errors eg. on close-file.
817         Contrib from ASCOM.  I tidied up some comments and indent to
818         minimize the diff.  [CASE 104354]
819
820 2000-08-15  Hugo Tyson  <hmt@cygnus.co.uk>
821
822         * doc/bridge.html: New file...
823         * doc/bridge.doc: New file...
824         provided by ASCOM from the OpenBSD version.
825
826 2000-08-15  Hugo Tyson  <hmt@cygnus.co.uk>
827
828         * src/sys/net/if_bridge.c (bridge_ioctl): SIOCBRDGSTO takes
829         argument in seconds not in ticks.  So move around some mul/div by
830         hz ops to get this right.
831
832 2000-08-14  Gary Thomas  <gthomas@redhat.com>
833
834         * src/ecos/support.c: Use new table definition mechanism.
835
836 2000-07-27  Hugo Tyson  <hmt@cygnus.co.uk>
837
838         * src/lib/dhcp_prot.c (do_dhcp): Use xmit->bp_htype =
839         HTYPE_ETHERNET rather than ifr.ifr_hwaddr.sa_family; sa_family is
840         in a different namespace, despite appearances.
841
842         * src/lib/bootp_support.c (do_bootp): Use bp_htype =
843         HTYPE_ETHERNET rather than ifr.ifr_hwaddr.sa_family; sa_family is
844         in a different namespace, despite appearances.
845
846 2000-07-27  Nick Garnett  <nickg@cygnus.co.uk>
847
848         * cdl/net.cdl: Require the C library STDIO package to be present
849         if there is more than one loopback interface. This is because it
850         needs sprintf() to form the interface names.
851
852         * src/sys/net/if_loop.c (loopattach): 
853         Only use sprintf() to form the loopback interface names when there
854         is more than one. The CDL ensures that this will work.
855
856         * src/lib/network_support.c:
857         Added diag_printf() version of perror() for when STDIO package is
858         absent.
859         Only use sprintf() to form the loopback interface names when there
860         is more than one. The CDL ensures that this will work.
861
862         * tests/multi_lo_select.c:
863         * tests/ping_lo_test.c:
864         * tests/tcp_lo_test.c:
865         Removed dependence on C library by adding a substitute perror()
866         based on diag_printf() that is enabled when the STDIO package is
867         absent.
868         
869 2000-07-26  Hugo Tyson  <hmt@cygnus.co.uk>
870  
871         * src/lib/dhcp_prot.c (do_dhcp): Set the broadcast flag where
872         necessary, and the client address too.  This makes it talk to a
873         greater range of servers OK.
874  
875 2000-07-25  Nick Garnett  <nickg@cygnus.co.uk>
876
877         * tests/multi_lo_select.c: Changed definition of NLISTENERS to
878         work correctly with FILEIO package.
879
880         * src/sys/net/if_loop.c (loopattach): Changed initialization of
881         if_xname to "lo0".
882
883         * src/ecos/support.c (cyg_net_init): Removed redundant code to
884         initialize loop-back interface.
885
886 2000-07-25  Hugo Tyson  <hmt@cygnus.co.uk>
887
888         * src/lib/getserv.c: Add a list terminator record with NULLs in it
889         so that the search finishes (without throwing asserts about bad
890         strings).
891
892 2000-07-21  Hugo Tyson  <hmt@cygnus.co.uk>
893
894         * src/sys/net/if_bridge.c: Move the include of stdio.h lower,
895         apparently it confuses local x86 compilers if their host tree is
896         malformed.  Or something.
897
898 2000-07-21  Hugo Tyson  <hmt@cygnus.co.uk>
899
900         * cdl/net.cdl: Add a lot of description about the way the various
901         fields are used in interface initialization: specifically that
902         "server" so-called is just "someone to talk to" in the absence of
903         bootp - and our tests depend on it!
904
905         * src/lib/bootp_support.c (init_net): Only set up a route if the
906         route address is nonzero - or all manner of confusion occurs with
907         multiple interfaces and route that sends to 0.0.0.0...
908         For setting up the default route, use
909               (SIOCADDRT, 0, 0, TAG_GATEWAY)
910         rather than the bogus
911               (SIOCADDRT, yiaddr & netmask, netmask, TAG_GATEWAY)
912         that we did before.
913
914         * tests/ftp_test.c (ftp_test): Try it with eth1 if available also.
915
916         * tests/ping_test.c (ping_host): If a ping fails, reset the packet
917         size to small just in case the huge packet size is what's causing
918         confusion - helps it as a debug tool.
919
920         * tests/dhcp_test.c (net_test): It didn't compile if DHCP is
921         disabled!  Doh.  Same change as ping_test also.
922
923 2000-07-19  Hugo Tyson  <hmt@cygnus.co.uk>
924
925         * src/lib/tftp_server.c (tftpd_read_file): Deal with a) [assumed]
926         timeouts on the select, and b) ACKs for old packets.
927         [CASE 104052 and CASE 104055]
928
929 2000-07-19  Hugo Tyson  <hmt@cygnus.co.uk>
930
931         * src/lib/select.c (_cyg_select): Return 0 and do not perturb
932         errno when the timeout occurs.  That matches the man page!
933         [CASE 104054]
934
935 2000-07-19  Hugo Tyson  <hmt@cygnus.co.uk>
936
937         * include/machine/param.h: Be more defensive against warnings from
938         external defines such as __linux__/__bsdi__/__FreeBSD__/...
939         [CASE 104090]
940
941 2000-07-19  Hugo Tyson  <hmt@cygnus.co.uk>
942
943         * tests/multi_lo_select.c: New test program to test for proper
944         broadcast behaviour of select() implementation.  Took some
945         fiddling to get it to work, but it really did fail before the
946         select change below.
947
948         * cdl/net.cdl: Build the new test.
949
950         * src/lib/select.c (_cyg_select): Don't use the CLR flag in the
951         flag wait because that gives unicast semantics.  Flags have
952         producer-does-all-the-work behaviour, so setting a value then
953         clearing it right afterwards does the right thing, with broadcast
954         semantics so long as no waiter has set the CLR part.
955         [CASE 104058]
956
957 2000-07-18  Hugo Tyson  <hmt@cygnus.co.uk>
958
959         All part of the bridge contribution from Andrew Lunn/ASCOM
960         (andrew.lunn@ascom.ch).  Bridginess is controlled by NBRIDGE which
961         is itself controlled by CDL option CYGPKG_NET_NBRIDGE aka "Number
962         of bridge buffers?"
963
964         * include/machine/param.h: Add proper definition of untimeout().
965
966         * include/sys/sockio.h (SIOCBRDGFRL): Add this and the other 2
967         bridge ioctl() call definitions. 
968
969         * include/sys/param.h (splhigh): Added.
970
971         * src/ecos/timeout.c (untimeout): Implement this properly, it was
972         never used before.
973
974         * src/ecos/support.c: implement cyg_splhigh(), call bridgeintr()
975         when it is scheduled and bridgeattach() if configured.
976
977         * tests/bridge.c: New "test" file - implements an ethernet bridge.
978         Contributed by Andrew Lunn/ASCOM, from the usual OpenBSD external
979         source original.
980
981         * include/net/if_bridge.h: New file, contributed by Andrew Lunn/
982         ASCOM, from OpenBSD original.  (Actually did exist in eCos source
983         tree but was not released)
984
985         * src/sys/net/if_bridge.c: New file, contributed by Andrew Lunn/
986         ASCOM, from OpenBSD original.
987
988         * cdl/net.cdl: Build the new files.
989
990 2000-07-18  Gary Thomas  <gthomas@redhat.com>
991
992         * src/lib/tftp_client.c (tftp_get): Fix edge condition when 
993         penultimate block is full and end of file which implies that
994         the last block has zero data bytes.
995
996 2000-07-18  Hugo Tyson  <hmt@cygnus.co.uk>
997
998         * src/lib/dhcp_prot.c: Ignore NAK messages from the wrong server -
999         we get these because the REQUEST for our chosen IP is broadcast,
1000         so other servers think we've asked to use the wrong IP.
1001
1002 2000-07-14  Hugo Tyson  <hmt@cygnus.co.uk>
1003
1004         * include/bootp.h: export init_loopback_interface();
1005
1006 2000-07-14  Hugo Tyson  <hmt@cygnus.co.uk>
1007
1008         * cdl/net.cdl: Add option controlling whether to have a separate
1009         DHCP lease management thread, and what its parameter is to be -
1010         which controls whether it loops or quits if a lease fails.
1011
1012         * src/lib/dhcp_support.c (dhcp_start_dhcp_mgt_thread): Provide the
1013         DHCP management thread function and code to instantiate and start
1014         the thread if so configured.
1015
1016         * src/lib/network_support.c (init_all_network_interfaces): Call
1017         the function that starts the DHCP management thread function.
1018
1019         * include/dhcp.h: Declare the DHCP management thread function &c
1020         if so configured.
1021
1022         * tests/dhcp_test.c (net_test): Only poll for need to rebind DHCP
1023         leases if there is no service thread to do the same.
1024
1025 2000-07-14  Hugo Tyson  <hmt@cygnus.co.uk>
1026
1027         * include/bootp.h (build_bootp_record): Export this, no harm in
1028         it, and some folk want to use this rather than configured
1029         initialization or bootp/dhcp.
1030         Also commented the other APIs somewhat better.
1031
1032         * src/lib/network_support.c (build_bootp_record): Unconditionally
1033         provide this; selective linking will look after it if unused.
1034
1035 2000-07-14  Hugo Tyson  <hmt@cygnus.co.uk>
1036
1037         * src/lib/network_support.c (build_bootp_record): [Static
1038         configuration of interface parameters] Add the gateway into the
1039         options section with TAG_GATEWAY so that init_net() will pick it
1040         up and set up a route accordingly.
1041
1042 2000-07-13  Hugo Tyson  <hmt@cygnus.co.uk>
1043
1044         * tests/dhcp_test.c:
1045         * tests/flood.c:
1046         * tests/ftp_test.c:
1047         * tests/nc_test_master.c:
1048         * tests/nc_test_slave.c:
1049         * tests/ping_lo_test.c:
1050         * tests/ping_test.c:
1051         * tests/server_test.c:
1052         * tests/set_mac_address.c:
1053         * tests/tcp_echo.c:
1054         * tests/tftp_client_test.c:
1055         * tests/tftp_server_test.c:
1056         Up the stack size to cope with full DHCP initialization in
1057         init_all_network_interfaces().
1058         
1059 2000-07-13  Hugo Tyson  <hmt@cygnus.co.uk>
1060
1061         * cdl/net.cdl: Add DHCP enable and interface-specific controls.
1062
1063         * include/dhcp.h: New file: describe the DHCP APIs and behaviour,
1064         as well as some internal APIs that are also available.
1065
1066         * src/lib/dhcp_support.c: New file: the surrounding management
1067         routines, a bit like network_support.c, which know about multiple
1068         interfaces and so on.
1069
1070         * src/lib/dhcp_prot.c: New file: the interface-independent DHCP
1071         protocol machine, which is called from dhcp_support.c routines and
1072         init_all_network_interfaces() in network_support.c
1073
1074         * include/bootp.h (struct bootp): Make the packet bigger if DHCP
1075         so that a mininal DHCP packet will fit.
1076
1077         * src/lib/bootp_support.c (do_bootp): If no reply, fail gracefully
1078         and tidy up so that other interfaces can be upbrung.
1079         (show_bootp): Tell us a lot more about DHCP-specific info in the
1080         packet structure.
1081         (get_bootp_option): be aware of DHCP extensions to re-use file and
1082         sname fields for options.
1083
1084         * src/lib/network_support.c (init_all_network_interfaces): Call
1085         do_dhcp() rather than do_bootp() if so configured, and initialize
1086         the per-interface DHCP state variables accordingly.
1087
1088         * tests/dhcp_test.c (net_test): New test file that diddles the
1089         DHCP machine while doing a ping test.
1090
1091 2000-07-11  Gary Thomas  <gthomas@redhat.com>
1092
1093         * include/netdev.h: Add single-inclusion fences.
1094
1095         * include/sys/param.h: Add traced versions of splx() routines,
1096         selectable by a configuration option.
1097
1098         * src/ecos/support.c: Rework splx() emulation routines to
1099         be more robust and realtime friendly.
1100
1101         * src/lib/network_support.c (init_all_network_interfaces): 
1102         Add minimal support for PCMCIA based devices.
1103
1104 2000-07-04  Hugo Tyson  <hmt@cygnus.co.uk>
1105
1106         * include/bootp.h: Fix namespace pollution from "#define int32
1107         int" - it fights against application code too much.
1108
1109 2000-07-04  Jonathan Larmour  <jlarmour@redhat.co.uk>
1110
1111         * cdl/net.cdl: Package requires CYGPKG_MEMALLOC
1112
1113 2000-06-26  Hugo Tyson  <hmt@cygnus.co.uk>
1114
1115         * tests/ping_test.c (net_test): Added use of the
1116         CYGPKG_NET_TESTS_USE_RT_TEST_HARNESS stuff now that the test
1117         passes (consequent on the change below); also use larger ping
1118         packets now that that is working also.
1119
1120         * tests/tcp_echo.c (echo_test): Added use of the
1121         CYGPKG_NET_TESTS_USE_RT_TEST_HARNESS stuff now that the test
1122         passes (consequent on the change below).
1123
1124 2000-06-26  Hugo Tyson  <hmt@cygnus.co.uk>
1125
1126         * src/ecos/support.c (cyg_splnet): Use the scheduler lock and a
1127         mutex instead of disable-interrupts for SPLX type processing.  A
1128         mutex is used at splsoftnet because that is client threads - we do
1129         not want them to pre-empt the rest of the app.  This enables the
1130         real-time response testing for the EBSA285 to succeed (interrupts
1131         every 1mS, DSRs delayed by at most 2mS).
1132
1133 2000-06-23  Hugo Tyson  <hmt@cygnus.co.uk>
1134
1135         * src/ecos/support.c (cyg_net_mbuf_alloc, cyg_kmem_init): Align
1136         the mbuf pool to MSIZE [128] bytes.  That way dtom() works, nasty
1137         though it is.  That's needed for ip reassembly in ip_input.c, when
1138         dealing with large icmp-layer packets eg. ping -s 2000 ...
1139
1140 2000-06-21  Hugo Tyson  <hmt@cygnus.co.uk>
1141
1142         * include/lib/libkern/libkern.h: Do not define assert multiple
1143         times; guarded by __ECOS.
1144
1145         * include/sys/param.h (MAX,MIN): Only define if undef.
1146
1147 2000-06-21  Hugo Tyson  <hmt@cygnus.co.uk>
1148
1149         * cdl/net.cdl: Build the new tests; in fact build them
1150         unconditionally.
1151
1152         * src/lib/network_support.c (init_all_network_interfaces):
1153         Initialize loopback device[s] using init_loopback_interface(),
1154         providing a sensible default route et al.  Multiple devs: lo1 will
1155         be 127.0.*1*.1, and so on; class C netmasks will be used.
1156
1157         init_all_network_interfaces() is also made thread-safe as well as
1158         idempotent, so other threads (or daemons) can call it to make sure
1159         the net is up.
1160
1161         * src/ecos/support.c (cyg_net_init): Add a call to loopattach() if
1162         there are indeed loopback dev(s) configured.  This does the
1163         equivalent of the init of a device from the table, but simpler.
1164
1165         * tests/udp_lo_test.c (udp_server): New testcase...
1166         * tests/tcp_lo_select.c (tcp_server): New testcase...
1167         * tests/tcp_lo_test.c (tcp_client): New testcase...
1168         * tests/ping_lo_test.c (net_test): New testcase, unconditionally
1169         built loopback device test.  Will run on platforms with no network
1170         interfaces.
1171
1172 2000-06-19  Nick Garnett  <nickg@cygnus.co.uk>
1173
1174         * src/ecos/support.c:
1175         * include/netdev.h:
1176         Converted to use of new table construction mechanism.
1177
1178 2000-06-16  Jonathan Larmour  <jlarmour@redhat.co.uk>
1179
1180         * include/bootp.h: Remove RCS id tag
1181         * include/netinet/ip_auth.h: Ditto
1182         * include/netinet/ip_fil.h: Ditto
1183         * include/netinet/ip_fil_compat.h: Ditto
1184         * include/netinet/ip_frag.h: Ditto
1185         * include/netinet/ip_nat.h: Ditto
1186         * include/netinet/ip_proxy.h: Ditto
1187         * include/netinet/ip_state.h: Ditto
1188
1189 2000-06-15  Nick Garnett  <nickg@cygnus.co.uk>
1190
1191         * src/sys/kern/sockio.c: Added cyg_selinit() calls to bad_socket()
1192         and bsd_accept() functions.
1193
1194         * src/ecos/support.c (cyg_tsleep): Changed tests on wakeup from
1195         semaphore waits to enable return of EINTR results.
1196
1197 2000-06-09  Nick Garnett  <nickg@cygnus.co.uk>
1198
1199         * src/sys/net/if_loop.c: Substituted sprintf() for a straight
1200         strcpy() when initalizing if name. This currently only works for
1201         one loopback interface. However, there seems little need to have
1202         more than one.
1203
1204         * src/sys/kern/sockio.c (bsd_select): Added select support.
1205
1206         * include/sys/time.h: Moved timeval structure definition to
1207         isoinfra time.h header since it is needed by the select() API.
1208
1209         * include/sys/select.h: Added option to use fileio select
1210         mechanism if it is present.
1211
1212         * src/ecos/support.c (cyg_net_init):
1213         Added code to bring up the loopback interface. This is to help
1214         with testing on platforms without network hardware.
1215
1216 2000-06-08  Hugo Tyson  <hmt@cygnus.co.uk>
1217
1218         * include/netinet/ip_var.h: Export ipforwarding as well as
1219         ip_defttl for monitoring applications.
1220
1221 2000-06-07  Nick Garnett  <nickg@cygnus.co.uk>
1222
1223         * tests/tcp_echo.c: 
1224         * tests/socket_test.c: 
1225         * tests/server_test.c: 
1226         * tests/ping_test.c: 
1227         * tests/nc_test_master.c: 
1228         * tests/nc_test_slave.c: 
1229         * tests/ftp_test.c:
1230         Removed dependence of these programs on STDIO. For most this
1231         simply required the use of a diag_printf() based perror() clone is
1232         CYGPKG_LIBC_STDIO is not defined. For server_test is also required
1233         the substitution of sprintf() with some more primitive string
1234         functions.
1235
1236         * src/sys/netinet/ip_input.c: Rewrote inet_ntoa() to not use
1237         sprintf(). This was the only place in the TCP/IP stack that was
1238         dependent on a STDIO function. We really should avoid building
1239         this kind of casual dependency into the code.
1240
1241         * src/sys/kern/sockio.c: This new file contain code to support the
1242         fileio package. So far only a few of these functions have actually
1243         been tested.
1244
1245         * include/sys/kernel.h (time): The time variable clashes with the
1246         C library time() function. To prevent this it is renamed ktime,
1247         and a #define allows "kernel" code to continue accessing it as
1248         time.
1249
1250         * src/ecos/support.c: Added definition for ktime variable, as
1251         described above. I could not find any definition for struct
1252         timeval time. I have a nasty suspicion that it was using the
1253         time() function - let's hope that no code that actually uses this
1254         has been run.
1255
1256         * src/lib/bootp_support.c: Another substitution of a diag_printf()
1257         based perror() clone when STDIO is absent.
1258         
1259         * include/sys/bsdtypes.h: This is the original
1260         include/sys/types.h. Renamed to avoid clashing with <sys/types.h>
1261         defined by the isoinfra package.
1262
1263         * include/sys/types.h: Renamed to bsdtypes.h.
1264         
1265         * include/machine/limits.h:
1266         Various changes to make these headers play nicely with those
1267         defined in isoinfra package.
1268
1269         * include/network.h: Added include of <pkgconf/system.h>. Fixed
1270         prototypes of functions here to match POSIX specifications.
1271
1272         * cdl/net.cdl:
1273         Split list of files to compile into the common set plus those
1274         needed when the fileio package is present and those that are
1275         needed when it is absent.
1276         Added CDL to export our definitions to <sys/types.h>.
1277         
1278
1279 2000-05-31  Hugo Tyson  <hmt@cygnus.co.uk>
1280
1281         * src/lib/network_support.c (init_all_network_interfaces): Make
1282         this call idempotent - this is useful for reliable initialization
1283         of dependent subsystems.
1284
1285         * include/lib/libkern/libkern.h: remove protos of random() and
1286         srandom() for they are not in fact provided.
1287
1288         * cdl/net.cdl: Turn off CYGPKG_NET_TESTS_USE_RT_TEST_HARNESS by
1289         default - since not all tests currently pass. 
1290
1291 2000-05-12  Hugo Tyson  <hmt@cygnus.co.uk>
1292
1293         * cdl/net.cdl (CYGPKG_NET_TFTPD_THREAD_PRIORITY): New option,
1294         control the TFTPD thread priority.  These options are *all*
1295         CYGPKG_NET.  Yuk, sort 'em out later.
1296
1297         * tests/tftp_server_test.c (tftp_test): Added use of the
1298         CYGPKG_NET_TESTS_USE_RT_TEST_HARNESS stuff, same as for the flood
1299         ping test.  This one passes (with the next change), so committed.
1300
1301         * src/lib/tftp_server.c (tftpd_server): Cancelled some of the
1302         printouts as connections come and go *iff* the tests are set up to
1303         use the realtime-ness test harness.  This needs generalizing into
1304         proper control of the network's chattiness overall.
1305         (tftpd_start): Also added configury of the TFTPD thread priority.
1306
1307 2000-05-12  Hugo Tyson  <hmt@cygnus.co.uk>
1308
1309         * cdl/net.cdl: Add flood test below.  Also add option
1310         CYGPKG_NET_TESTS_USE_RT_TEST_HARNESS to decide whether to
1311         "Use real-time response test harness (if available)".
1312         Consequently moved the test build stuff forward out of the build
1313         flags area.
1314
1315         * tests/flood.c (net_test): New file; performs a flood-ping (well,
1316         as fast as we can go) of the server(s) on the two interfaces.
1317         Also uses the real-time interrupt response verification stuff from
1318         the EBSA285 driver component.
1319
1320 2000-05-11  Hugo Tyson  <hmt@cygnus.co.uk>
1321
1322         * cdl/net.cdl: Add new utility (and harmless-by-default test)
1323         tests/set_mac_address.  You have to edit it to get anything
1324         damaging to happen.
1325
1326         * tests/set_mac_address.c: New file added.  It uses SIOCSIFHWADDR
1327         to set the MAC address of any interfaces it has been told to.
1328
1329 2000-05-08  Gary Thomas  <gthomas@redhat.com>
1330
1331         * include/machine/cpu.h: 
1332         * include/machine/cdefs.h: Add copyright boilerplate.
1333
1334 2000-05-05  Hugo Tyson  <hmt@cygnus.co.uk>
1335
1336         * include/arpa/tftp.h: Aargh.  Turns out that removing the align
1337         driective and retaining only the packed directive makes the
1338         original version work.  So, reverted.  Apologies for the wasted
1339         time.
1340
1341         * src/lib/tftp_server.c (tftpd_read_file): Coupla warnings
1342         reduced, and reverted to match original tftp.h
1343
1344         * src/lib/tftp_dummy_file.c (dummy_open): Removed use of
1345         undeclared malloc().
1346
1347 2000-05-04  Gary Thomas  <gthomas@redhat.com>
1348
1349         * src/lib/tftp_server.c: 
1350         * src/lib/tftp_client.c: Adjust for changes in header structure.
1351
1352         * include/arpa/tftp.h: Continuing problems with alignment on ARM.  
1353         Recourse is very bastardized structure, but it _does_ work.
1354
1355 2000-05-04  Hugo Tyson  <hmt@cygnus.co.uk>
1356
1357         * tests/tftp_client_test.c (tftp_test): Print out a coupla more
1358         things and test both interfaces if they exist - which does the
1359         same thing twice if the same server bootp'd both.  Changed the
1360         filenames to something more obvious.
1361
1362         * cdl/net.cdl (CYGPKG_NET_TESTS): Build the tftp tests
1363         tests/tftp_client_test tests/tftp_server_test
1364
1365         * src/ecos/support.c (cyg_kmem_print_stats): New function; prints
1366         info about memory usage for some tests to come.
1367
1368 2000-05-04  Gary Thomas  <gthomas@redhat.com>
1369
1370         * include/arpa/tftp.h: Force packed alignment - required on some
1371         architectures.
1372
1373 2000-05-01  Gary Thomas  <gthomas@redhat.com>
1374
1375         * src/lib/tftp_dummy_file.c: Adding very simple routines - just
1376         enough to test TFTP server.  This support will come from elsewhere
1377         in actual application environments (e.g. a real file system).
1378
1379         * tests/tftp_server_test.c: 
1380         * src/lib/tftp_server.c: 
1381         * include/tftp_support.h: Flesh out TFTP server support.
1382
1383 2000-04-13  Hugo Tyson  <hmt@cygnus.co.uk>
1384
1385         * tests/tcp_echo.c (calibrate_load): Import better background
1386         thread loading algorithm with bugfix; if the initial HIGH limit
1387         was not large enough, it never got loaded enough.
1388
1389         * tests/nc_test_slave.c (calibrate_load): Import the fixed version
1390         from above back in here.
1391
1392 2000-04-12  Gary Thomas  <gthomas@redhat.com>
1393
1394         * src/ecos/support.c (cyg_tsleep): Use 'cyg_scheduler_safe_lock()' so
1395         this function can be called with the scheduler locked.
1396
1397         * src/sys/kern/uipc_socket2.c: 
1398         * include/sys/socketvar.h: Update sblock()/sbunlock() to be eCos safe.
1399
1400 2000-04-12  Hugo Tyson  <hmt@cygnus.co.uk>
1401
1402         * tests/tcp_echo.c: Include <lib/libkern/libkern.h> so that it
1403         links - otherwise max() is not around.
1404
1405 2000-04-11  Gary Thomas  <gthomas@redhat.com>
1406
1407         * include/lib/libkern/libkern.h: 
1408         * include/network.h (NO_LIBKERN_INLINE): Disable kernel inline
1409         functions.
1410
1411 2000-04-11  Gary Thomas  <gthomas@redhat.com>
1412
1413         * src/lib/getserv.c: Add TFTP protocol.
1414
1415         * cdl/net.cdl: Add TFTP library functions.
1416         
1417         * include/tftp_support.h: 
1418         * src/lib/tftp_dummy_file.c: 
1419         * src/lib/tftp_server.c: 
1420         * src/lib/tftp_client.c: New file(s).  Basic TFTP support functions.
1421
1422 2000-04-10  Hugo Tyson  <hmt@cygnus.co.uk>
1423
1424         * tests/tcp_echo.c (echo_test): 
1425         * tests/tcp_source.c: 
1426         * tests/tcp_sink.c: 
1427         Merge in changes from Grant Edwards <grante@visi.com> presented on
1428         ecos-discuss "Mon, 10 Apr 2000 11:01:54 -0500" - fix some
1429         warnings, and use ntohl() on the control data that travels netly
1430         so that the host tools will work on otherendian machines.
1431
1432 2000-04-07  Gary Thomas  <gthomas@redhat.com>
1433
1434         * tests/nc_test_slave.c: Update background thread loading
1435         calibration to use a binary search (better) algorithm.
1436
1437 2000-03-29  Hugo Tyson  <hmt@cygnus.co.uk>
1438
1439         * tests/ftp_test.c (cyg_test_exit): 
1440         * tests/mbuf_test.c (cyg_start): 
1441         * tests/nc_test_master.c (cyg_test_exit): 
1442         * tests/nc_test_slave.c (show_net_times): 
1443         * tests/ping_test.c (cyg_test_exit): 
1444         * tests/server_test.c (cyg_test_exit): 
1445         * tests/socket_test.c (cyg_test_exit): 
1446         * tests/tcp_echo.c (cyg_test_exit): 
1447         Some eCos infrastructure changes caused, in some configurations,
1448         cyg_test_exit() from the infrastructure to be brought in (in
1449         tcdiag.o) even when the Test Case system was not explicitly being
1450         invoked.  That fought with the convenience copy of cyg_test_exit()
1451         in these tests.  The neatest fix is to use that provided centrally
1452         where relevent, so that is what this change does.
1453
1454         * tests/tcp_echo.c: Also now use granularity of 5% by default,
1455         calibrate the load at 50%, and check and report the load that was
1456         actually achieved after the test.
1457
1458 2000-03-29  John Dallaway  <jld@cygnus.co.uk>
1459
1460         * doc/ecos_tcpip.html:
1461
1462         Remove error-prone cross-reference to another eCos package.
1463
1464         * doc/index.html:
1465
1466         Synchronize index page title with web site.
1467
1468 2000-03-28  Gary Thomas  <gthomas@redhat.com>
1469
1470         * src/lib/bootp_support.c (init_net): Need to start interface,
1471         especially for manual/static IP configurations.
1472
1473         * tests/nc_test_slave.c (calibrate_load): Better calibration for
1474         slower targets.
1475
1476 2000-03-18  Gary Thomas  <gthomas@redhat.com>
1477
1478         * src/sys/kern/sys_socket.c: 
1479         * src/sys/kern/sys_generic.c: 
1480         * include/sys/sockio.h: Add FIONBIO, FIOASYNC, FIONREAD functions.
1481
1482         * include/machine/types.h: Make definitions safe for use with libc.
1483
1484 2000-03-08  Gary Thomas  <gthomas@redhat.com>
1485
1486         * src/ecos/support.c: Remove some debug messages.
1487         Update timed sleep functions (tsleep) to use scheduler lock
1488         instead of brute-force interrupt locks.
1489
1490 2000-03-08  Hugo Tyson  <hmt@cygnus.co.uk>
1491
1492         * tests/tcp_echo.c (echo_test): Also enable, log and print out the
1493         idle-thread activity during the test - this reassures us that
1494         there is no [significant] spare time being wasted idling during
1495         the test.  This change has no effect on the results at all.
1496
1497 2000-03-07  Hugo Tyson  <hmt@cygnus.co.uk>
1498
1499         * tests/tcp_echo.c (calibrate_load): Improve the accuracy of the
1500         calibration with some post-scaling.  Change load to an array
1501         accessor instead of register-based floating point - this is less
1502         load, so more loops are needed, so the initial load level is upped
1503         also.  More loops means better accuracy anyway, a good thing.
1504
1505 2000-03-06  Hugo Tyson  <hmt@cygnus.co.uk>
1506
1507         * tests/tcp_source.c (show_results): Print results in Mbit/S also.
1508         (source_test): Warnings reduction; add some casts to sending and
1509         receiving the control packets.
1510         (NUM_BUF): becomes 1024; send more data to get thro'put result.
1511
1512         * tests/tcp_sink.c (show_results): Print results in Mbit/S also.
1513         (sink_test): Warnings reduction; add some casts to sending and
1514         receiving the control packets.
1515
1516         * tests/nc_test_master.c (show_results): Reinstate tot_bytes
1517         variable for host testing tool version.  Print results in Mbit/S
1518         also.
1519
1520         * tests/nc_test_slave.c (net_test): Comment out starting multiple
1521         threads; they fight over a wide-open socket.  One thread is
1522         enough.
1523
1524 2000-03-06  Gary Thomas  <gthomas@redhat.com>
1525
1526         * include/netdev.h: Update structure for improved API description.
1527
1528 2000-03-05  Gary Thomas  <gthomas@redhat.com>
1529
1530         * include/network.h:
1531         * include/sys/syscallargs.h:
1532         * src/lib/accept.c:
1533         * src/lib/bootp_support.c:
1534         * src/lib/close.c:
1535         * src/lib/getpeername.c:
1536         * src/lib/getsockname.c:
1537         * src/lib/recvfrom.c:
1538         * tests/ftp_test.c:
1539         * tests/nc_test_framework.h:
1540         * tests/nc_test_master.c:
1541         * tests/nc_test_slave.c:
1542         * tests/ping_test.c:
1543         * tests/server_test.c:
1544         * tests/socket_test.c:
1545         * tests/tcp_echo.c:
1546         Cleanup to remove compiler warnings.    
1547
1548 2000-03-04  Gary Thomas  <gthomas@redhat.com>
1549
1550         * include/machine/param.h:
1551         * include/sys/socketvar.h:
1552         * src/ecos/timeout.c:
1553         * src/sys/kern/kern_subr.c:
1554         * src/sys/kern/sys_generic.c:
1555         * src/sys/kern/sys_socket.c:
1556         * src/sys/kern/uipc_mbuf.c:
1557         * src/sys/kern/uipc_socket2.c:
1558         * src/sys/kern/uipc_syscalls.c:
1559         * src/sys/net/if_ethersubr.c:
1560         * src/sys/net/if_loop.c:
1561         * src/sys/net/route.c:
1562         * src/sys/net/rtsock.c:
1563         * src/sys/netinet/in_cksum.c:
1564         * src/sys/netinet/in_pcb.c:
1565         * src/sys/netinet/ip_input.c:
1566         * src/sys/netinet/tcp_input.c:
1567         * src/sys/netinet/tcp_output.c:
1568         * src/sys/netinet/tcp_subr.c:
1569         * src/sys/netinet/udp_usrreq.c:
1570         Cleanup to remove compiler warnings.    
1571
1572 2000-03-01  Gary Thomas  <gthomas@cygnus.co.uk>
1573
1574         * tests/ping_test.c: Reorganize test, display error info.
1575
1576         * src/lib/bootp_support.c: Add support for DNS options.
1577
1578 2000-02-29  Gary Thomas  <gthomas@cygnus.co.uk>
1579
1580         * include/sys/sockio.h (SIOCSIFHWADDR): Add function to
1581         set hardware (MAC) address via ioctl.
1582
1583 2000-02-28  John Dallaway  <jld@cygnus.co.uk>
1584
1585         * cdl/net.cdl:
1586
1587         Reparent cdl_interface CYGHWR_NET_DRIVER_ETH0_SETUP under
1588         cdl_component CYGHWR_NET_DRIVER_ETH0_SETUP_OPTIONS to
1589         avoid a spurious conflict report when the latter is
1590         inactive.
1591
1592 2000-02-25  John Dallaway  <jld@cygnus.co.uk>
1593
1594         * cdl/net.cdl:
1595
1596         Reparent cdl_interface CYGHWR_NET_DRIVER_ETH1_SETUP under
1597         cdl_component CYGHWR_NET_DRIVER_ETH1_SETUP_OPTIONS to
1598         avoid a spurious conflict report when the latter is
1599         inactive.
1600
1601 2000-02-22  Gary Thomas  <gthomas@cygnus.co.uk>
1602
1603         * include/netinet/if_ether.h: 
1604         * include/netinet/ip.h: 
1605         * include/netinet/ip_icmp.h: 
1606         * include/netinet/tcp.h: 
1607         * include/netinet/udp.h: More structure alignement fixes.
1608
1609 2000-02-21  Gary Thomas  <gthomas@cygnus.co.uk>
1610
1611         * include/netinet/tcpip.h: 
1612         * include/netinet/udp_var.h: Force structure alignment.
1613
1614 2000-02-18  Gary Thomas  <gthomas@cygnus.co.uk>
1615
1616         * tests/server_test.c: Target [client] address was wrong.
1617
1618         * tests/tcp_source.c:
1619         * tests/tcp_sink.c:
1620         * tests/tcp_echo.c: New test suite.
1621         
1622 2000-02-17  Gary Thomas  <gthomas@cygnus.co.uk>
1623
1624         * tests/ping_test.c: Fix typo in startup message.
1625
1626         * src/sys/net/route.c (route_reinit): New function - only here
1627         until BOOTP problems can be found/fixed.
1628
1629         * src/lib/bootp_support.c (do_bootp): Force any existing routes
1630         to be reset since this causes a problem if BOOTP has been previously
1631         run.  Also, the BOOTP request must be zeroed or the server will
1632         get confused.
1633
1634         * src/lib/network_support.c (init_all_network_interfaces): 
1635         Rearrange initialization so that all BOOTP activity takes place
1636         before any permanent setups are in place.
1637
1638 2000-02-16  Gary Thomas  <gthomas@cygnus.co.uk>
1639
1640         * src/sys/net/route.c (rtioctl): Add support for deleting routes.
1641
1642         * src/lib/network_support.c (init_all_network_interfaces): 
1643         Support predefined IP configurations, as well as BOOTP.
1644
1645         * tests/ping_test.c: Renamed from 'bootp_test.c'
1646
1647         * src/lib/inet_addr.c: 
1648         * include/arpa/ftp.h: 
1649         * include/arpa/nameser.h: 
1650         * include/arpa/telnet.h: 
1651         * include/arpa/inet.h: 
1652         * include/arpa/tftp.h: New file(s).
1653
1654 2000-02-15  Gary Thomas  <gthomas@cygnus.co.uk>
1655
1656         * src/lib/select.c: Add 'cyg_select_with_abort()' interface which
1657         will allow 'select()' function to be abnormally terminated.  Add
1658         new function 'cyg_select_abort()' which does this.
1659
1660 2000-02-15  Hugo Tyson  <hmt@cygnus.co.uk>
1661
1662         * cdl/net.cdl: Fix typo; cdl_interface CYGHWR_NET_DRIVER_ETH1 was
1663         missing, so EBSA build was conflictual.
1664
1665 2000-02-14  Gary Thomas  <gthomas@cygnus.co.uk>
1666
1667         * tests/bootp_test.c: 
1668         * tests/ftp_test.c: 
1669         * tests/nc_test_framework.h: 
1670         * tests/nc_test_master.c: 
1671         * tests/nc_test_slave.c: 
1672         * tests/server_test.c: Rework with automatic network initialization.
1673         Includes support for multiple interfaces.
1674
1675         * src/lib/network_support.c: 
1676         * include/network.h: New file(s).
1677
1678         * cdl/net.cdl: New CDL to support multiple interfaces and their
1679         configuration.  (Not complete yet).
1680
1681 2000-02-11  Gary Thomas  <gthomas@cygnus.co.uk>
1682
1683         * src/lib/select.c (select): Add a way to abort selects (EINTR).
1684
1685 2000-02-10  Gary Thomas  <gthomas@cygnus.co.uk>
1686
1687         * tests/nc_test_slave.c (calibrate_load): Slightly different algorithm,
1688         which should work better on all platforms.
1689
1690 2000-02-09  Gary Thomas  <gthomas@cygnus.co.uk>
1691
1692         * cdl/net.cdl: Add CYGPKG_NET_THREAD_PRIORITY to allow user more
1693         control over how networking [anonymous] threads behave.
1694
1695         * tests/nc_test_framework.h: 
1696         * tests/nc_test_slave.c: 
1697         * tests/nc_test_master.c: Support test mode with target CPU under
1698         various loads.
1699
1700 2000-02-09  Hugo Tyson  <hmt@cygnus.co.uk>
1701
1702         * src/ecos/support.c (bcmp): Fix bug.  Missing pointer increments
1703         meant that the zeroth byte only was compared.  Caused stack to
1704         reject ARP packets - depending on MAC address order for particular
1705         platform.
1706
1707 2000-02-09  Hugo Tyson  <hmt@cygnus.co.uk>
1708
1709         * tests/bootp_test.c:
1710         * tests/ftp_test.c:
1711         * tests/nc_test_master.c:
1712         * tests/server_test.c:
1713         * tests/socket_test.c:
1714         Change stacksize of test thread to TYPICAL not MINIMAL - some
1715         drivers eat more stack than others.  Generally:
1716         -#define STACK_SIZE CYGNUM_HAL_STACK_SIZE_MINIMUM
1717         +#define STACK_SIZE CYGNUM_HAL_STACK_SIZE_TYPICAL
1718
1719 2000-02-08  John Dallaway  <jld@cygnus.co.uk>
1720
1721         * cdl/net.cdl:
1722
1723         Tidy display strings.
1724
1725 #####ECOSPDCOPYRIGHTBEGIN####
1726 #
1727 # Copyright (C) 2000, 2001, 2002 Red Hat, Inc.
1728 # All Rights Reserved.
1729 #
1730 # Permission is granted to use, copy, modify and redistribute this
1731 # file.
1732 #
1733 #####ECOSPDCOPYRIGHTEND####