From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: passt.top; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: passt.top; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256 header.s=mimecast20190719 header.b=AizG32EX; dkim-atps=neutral Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by passt.top (Postfix) with ESMTPS id AFF6F5A0269 for ; Mon, 01 Jun 2026 09:38:08 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1780299487; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UhwdqxmMMqBH52EstlR8Phz6mmY/YMSiFkyPUlf99X0=; b=AizG32EXmWx/tjoTm+QrjWGw7/vd94hxpOW/RRhWM9mXCTA36/6pJIQvKAnuVfwegGdnoo 5fxvt8GFq/+a7SbdnA3Y4JAtOdrzRRAqyg+7fMcRUcUqjR/dyJTuptTSDIxGrmSvpEg1dk jZYBIsuZNWwsbcsdScyVdEedjY+CVNs= Received: from mx-prod-mc-01.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-634-zdxruTVbNS6i18UNqAVhJw-1; Mon, 01 Jun 2026 03:38:06 -0400 X-MC-Unique: zdxruTVbNS6i18UNqAVhJw-1 X-Mimecast-MFC-AGG-ID: zdxruTVbNS6i18UNqAVhJw_1780299485 Received: from mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.111]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 11B2B1956089; Mon, 1 Jun 2026 07:38:05 +0000 (UTC) Received: from anskuma-thinkpadp1gen7.bengluru.csb (unknown [10.74.80.95]) by mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 6B7941800352; Mon, 1 Jun 2026 07:38:00 +0000 (UTC) From: Anshu Kumari To: passt-dev@passt.top, anskuma@redhat.com, sbrivio@redhat.com Subject: [PATCH v3 0/6] Add --dhcp-boot and --dhcp-opt options Date: Mon, 1 Jun 2026 13:07:50 +0530 Message-ID: <20260601073758.1571317-1-anskuma@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.111 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: hCiZ9KbsLGP42Ws6aiJ1l6XK82uMb4YvRpwAhOW-v4o_1780299485 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit Message-ID-Hash: TLPNQUFDVQMOHTVLLY5G5I623R4IIECO X-Message-ID-Hash: TLPNQUFDVQMOHTVLLY5G5I623R4IIECO X-MailFrom: anskuma@redhat.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: david@gibson.dropbear.id.au, jmaloy@redhat.com, lvivier@redhat.com X-Mailman-Version: 3.3.8 Precedence: list List-Id: Development discussion and patches for passt Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: This series adds support for custom DHCP options in passt, enabling network boot (PXE/UEFI HTTP Boot) and arbitrary DHCP option injection. Two new command-line flags are introduced: --dhcp-boot URL Sets the boot file URL (DHCP option 67 and the legacy boot file field) --dhcp-opt CODE,VALUE Sets any DHCP option by numeric code, with type-aware parsing per RFC 2132 The DHCP reply path is extended with option overload support (RFC 2132 option 52), allowing options to overflow into the file and sname fields when the standard options area is full. Anshu Kumari (6): conf: Add --dhcp-opt command-line option conf: Add --dhcp-boot command-line option dhcp: Add option type table and value parser dhcp: Refactor fill_one() to operate on a generic buffer dhcp: Add option overload doc: Add --dhcp-boot and --dhcp-opt to man page conf.c | 29 ++++- dhcp.c | 322 ++++++++++++++++++++++++++++++++++++++++++++++++++++---- dhcp.h | 1 + passt.1 | 41 ++++++++ passt.h | 16 +++ 5 files changed, 389 insertions(+), 20 deletions(-) -- 2.54.0