1ToDo: -*- text -*- 2 3---------------------------------------------------------------------- 4Memory allocation locality: 5 6Currently mallocs memory in a very haphazard manner. As such, most of 7the program ends up core-resident all the time just to follow all the 8stupid pointers around. . . . 9 10---------------------------------------------------------------------- 11Input parser: 12 13The reader implemented in readfile.c could use improvement. Some sort 14of "data-driven" parser should be used so the big switch statements 15would have only one case for each data type instead of one case for 16every recognized option symbol. Then adding a new tag would involve 17only adding a new element to the data table describing known symbols. 18Hopefully, this would shrink the code a bit too. -gwr 19 20---------------------------------------------------------------------- 21SLIP Initialization via BOOTP: 22 23In the function handle_request(), both in bootpd and bootpgw, 24we might want to add code like the following just before testing 25the client IP address field for zero. (bp->bp_ciaddr == 0) 26(David suggests we leave this out for now. -gwr) 27 28#if 1 /* XXX - Experimental */ 29 /* 30 * SLIP initialization support. 31 * 32 * If this packet came from a SLIP driver that does 33 * automatic IP address initialization, then the socket 34 * will have the IP address and the packet will 35 * have zeros for both the IP and HW addresses. 36 * 37 * Thanks to David P. Maynard <dpm@depend.com> 38 * for explaining how this works. -gwr 39 */ 40 if ((bp->bp_ciaddr.s_addr == 0) && 41 (bp->bp_htype == 0)) 42 { 43 /* Pretend the client knows its address. It will soon. */ 44 bp->bp_ciaddr = recv_addr.sin_addr; 45 if (debug) 46 report(LOG_INFO, "fixed blank request from IP addr %s", 47 inet_ntoa(recv_addr.sin_addr)); 48 } 49#endif 50 51---------------------------------------------------------------------- 52DHCP Support: 53 54There is a set of patches from Jeanette Pauline Middelink 55<middelin@calvin.polyware.iaf.nl> to add DHCP support. 56 57Those patches will be integrated into the BOOTP release stream 58very soon, but if you can't wait, you can get them from: 59nimbus.anu.edu.au:/pub/tridge/samba/contributed/DHCP.patch 60 61---------------------------------------------------------------------- 62