aboutsummaryrefslogtreecommitdiff
path: root/slirp/bootp.c
diff options
context:
space:
mode:
authorBenjamin Drung <benjamin.drung@profitbricks.com>2018-02-27 17:06:01 +0100
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2018-05-31 21:19:08 +0200
commitf18d137542a48150d177031fc6c54786179bf2a3 (patch)
tree5b8d86d0280a01ffc70ea84538169282c70854d7 /slirp/bootp.c
parentc181ddaa176856b3cd2dfd12bbcf25fa9c884a97 (diff)
slirp: Add domainname option to slirp's DHCP server
This patch will allow the user to include the domainname option in replies from the built-in DHCP server. Signed-off-by: Benjamin Drung <benjamin.drung@profitbricks.com> Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Diffstat (limited to 'slirp/bootp.c')
-rw-r--r--slirp/bootp.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/slirp/bootp.c b/slirp/bootp.c
index 5dd1a415b5..9e7b53ba94 100644
--- a/slirp/bootp.c
+++ b/slirp/bootp.c
@@ -298,6 +298,14 @@ static void bootp_reply(Slirp *slirp, const struct bootp_t *bp)
q += val;
}
+ if (slirp->vdomainname) {
+ val = strlen(slirp->vdomainname);
+ *q++ = RFC1533_DOMAINNAME;
+ *q++ = val;
+ memcpy(q, slirp->vdomainname, val);
+ q += val;
+ }
+
if (slirp->vdnssearch) {
size_t spaceleft = sizeof(rbp->bp_vend) - (q - rbp->bp_vend);
val = slirp->vdnssearch_len;