Good Evening,

This is cross posted in 3 groups, pls bear with me. We are doing what
amounts to behavioural research on a variety of devices with embedded OSes.
For the sake of simplicity we need to emulate elements of DHCP clients of
other operating systems on w2k & xp boxes.

I have been attempting to modify DHCPCSVC.DLL to send different vendor ids,
but have been only marginally successful. By default in w2k the DHCP client
sends "MSFT 5.0" as the data for DHCP option 60. It appears to be 8 bytes
in length. We would like to replace it with a 31 byte value representing an
appliance that must behave as a DHCP client. Replacing MSFT 5.0 with
another 8 byte value works fine, but if the string is longer the DLL fails
to load & reshacker (:P) indicates that there is no message table or version
info.

Below is a snippet of a tethereal dump with a modified option 60 string (no
DHCP relay on this VLAN):

Option 53: DHCP Message Type = DHCP Discover
Option 50: Requested IP Address = 169.254.32.82
Option 12: Host Name = "host"
Option 60: Vendor class identifier = "test ;-)t="
Option 55: Parameter Request List

What do we need to do to make option 60 look like:
"Appliance_Trans,image-ver=A00.00.00"? A wild guess, based on RFC 1533,
would be the LEN being define earlier in the file... or perhaps there's a
checksum in there? Anyone willing to offer up a crash course in DLL
hacking?

Thanks in Advance & Happy Holidays!



. Mft .
planet dot eon dot net