dd09ce3930
In Azure, the DHCP servers add private option (id 0xf5), which contains binary form of an IPv4 address. Once this option is converted to string form, it could contain '$', e.g. IPv4 address: 100.72.36.54 binary form: 0x64 0x48 0x24 0x36 string form: "dH$6" dhclient bails upon "illegal" options like the above example, thus the VM bring-up will fail. Also as a side note, this "illegal" option detection was added in OpenBSD ~11years ago: http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sbin/dhclient/dhclient.c?rev=1.50&content-type=text/x-cvsweb-markup And it was removed along with the removal of script support in OpenBSD ~3years ago: http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sbin/dhclient/dhclient.c?rev=1.159&content-type=text/x-cvsweb-markup Reported by: Hongxiong Xian <v-hoxian microsoft com> Reviewed by: jhb, Dexuan Cui <decui microsoft com> Tested by: Hongxiong Xian <v-hoxian microsoft com> Analyzed by: Dong Liu <doliu microsoft com> MFC after: 1 week Sponsored by: Microsoft OSTC Differential Revision: https://reviews.freebsd.org/D5853 |
||
---|---|---|
.. | ||
tests | ||
alloc.c | ||
bpf.c | ||
clparse.c | ||
conflex.c | ||
convert.c | ||
dhclient-script | ||
dhclient-script.8 | ||
dhclient.8 | ||
dhclient.c | ||
dhclient.conf | ||
dhclient.conf.5 | ||
dhclient.leases.5 | ||
dhcp-options.5 | ||
dhcp.h | ||
dhcpd.h | ||
dhctoken.h | ||
dispatch.c | ||
errwarn.c | ||
hash.c | ||
inet.c | ||
Makefile | ||
Makefile.depend | ||
options.c | ||
packet.c | ||
parse.c | ||
privsep.c | ||
privsep.h | ||
tables.c | ||
tree.c | ||
tree.h |