diff -rU 2 ./dhcp-2.0.std/common/options.c ./dhcp-2.0/common/options.c --- ./dhcp-2.0.std/common/options.c Thu May 6 14:54:34 1999 +++ ./dhcp-2.0/common/options.c Mon Oct 11 21:25:12 1999 @@ -193,4 +193,18 @@ [DHO_DHCP_MAX_MESSAGE_SIZE].data); + /* Begin Add by ME */ + /* Added for Mac NC to increase max packet size for return */ + /* Check to see if above set mms for future if Apple decides */ + /* To use industry standards to notify dhcpd of max packet size */ + /* Does anyone what the real max is for NetBooting Macs? */ + /* I know it is bad to make a guess and make it bigger than it */ + /* should be but it works for now. If anyone knows it, let me know! */ + if (!mms && + inpacket && + inpacket -> options [DHO_MAC_NC_CLIENT_ID].data && + (strcmp (inpacket -> options [DHO_MAC_NC_CLIENT_ID].data, "Apple Mac NC"))) + mms = 576; + /* End Add by ME */ + /* If the client has provided a maximum DHCP message size, use that; otherwise, if it's BOOTP, only 64 bytes; otherwise @@ -207,4 +221,8 @@ if (main_buffer_size > sizeof buffer) main_buffer_size = sizeof buffer; + + /* Begin Add by ME */ + debug ("MacNC: Final value of main_buffer_size: %d", main_buffer_size); + /* End Add by ME */ /* Preload the option priority list with mandatory options. */ diff -rU 2 ./dhcp-2.0.std/includes/dhcp.h ./dhcp-2.0/includes/dhcp.h --- ./dhcp-2.0.std/includes/dhcp.h Tue Dec 22 14:46:17 1998 +++ ./dhcp-2.0/includes/dhcp.h Mon Oct 11 21:26:23 1999 @@ -156,4 +156,15 @@ #define DHO_DHCP_CLIENT_IDENTIFIER 61 #define DHO_DHCP_USER_CLASS_ID 77 +/* Begin Add by ME */ +#define DHO_MAC_NC_CLIENT_UNKNOWN 220 +#define DHO_MAC_NC_CLIENT_ID 221 +#define DHO_MAC_NC_SERVER_VERSION 230 +#define DHO_MAC_NC_SERVER_USER_NAME 232 +#define DHO_MAC_NC_SERVER_PASSWORD 233 +#define DHO_MAC_NC_SERVER_NB_IMG 234 +#define DHO_MAC_NC_SERVER_APPS_IMG 235 +#define DHO_MAC_NC_SERVER_MACHINE_NAME 237 +#define DHO_MAC_NC_SERVER_CLIENT_NB_IMG 238 +/* End Add by ME */ #define DHO_END 255