summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Gulewich <robert.gulewich@joyent.com>2011-09-12 16:54:01 -0700
committerRob Gulewich <robert.gulewich@joyent.com>2011-09-12 16:54:01 -0700
commite285c8ec7c32dff15ef7ef2a436bc9c509436ae7 (patch)
treec0af674851b85ae99669a3247dda9248e82ba7ef
parent602f73b132f8ac9efb1202cf51f07267cbc69912 (diff)
downloadillumos-kvm-cmd-e285c8ec7c32dff15ef7ef2a436bc9c509436ae7.tar.gz
[PROV-1192] Windows VMs not bringing up second nic properly
-rw-r--r--net/vnic-dhcp.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/net/vnic-dhcp.c b/net/vnic-dhcp.c
index a8ef72c..af5978a 100644
--- a/net/vnic-dhcp.c
+++ b/net/vnic-dhcp.c
@@ -435,11 +435,13 @@ populate_dhcp_reply(const struct bootp_t *bp, struct bootp_t *rbp,
}
// dns server list
- *q++ = RFC1533_DNS;
- *q++ = 4 * vdsp->vnds_num_dns_addrs;
- for (i = 0; i < vdsp->vnds_num_dns_addrs; i++) {
- memcpy(q, &vdsp->vnds_dns_addrs[i], sizeof(struct in_addr));
- q += 4;
+ if (vdsp->vnds_num_dns_addrs > 0) {
+ *q++ = RFC1533_DNS;
+ *q++ = 4 * vdsp->vnds_num_dns_addrs;
+ for (i = 0; i < vdsp->vnds_num_dns_addrs; i++) {
+ memcpy(q, &vdsp->vnds_dns_addrs[i], sizeof(struct in_addr));
+ q += 4;
+ }
}
// lease time