From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: passt.top; dmarc=fail (p=quarantine dis=none) header.from=redhat.com 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 17C675A0269 for ; Mon, 26 Oct 2026 11:57:13 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1793012232; 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=41AUQqYk4iALPN5gWXaBlRp3KaiUmg+4RCziXzdBH5o=; b=XFoctfEOC7f2kjKHM74/ctf80GB6h6/0DL2ni4h8nfgf8VbOtDv04uH3CogpLCv4i68bWS EbpkRTvDRLhsTN3aJuouWSY7zrCq8KmKlhNdHTsDnM6YkIrNHCy6a3NNXNzRjvmdgJyEEQ nTrjOX85lefZrx2aABW7rWXbm0E7sNQ= Received: from mx-prod-mc-03.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-146-nJdiCwF7PHqg1CXBQwUULw-1; Mon, 26 Oct 2026 06:57:04 -0400 X-MC-Unique: nJdiCwF7PHqg1CXBQwUULw-1 X-Mimecast-MFC-AGG-ID: nJdiCwF7PHqg1CXBQwUULw_1793012224 Received: from mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.4]) (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-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id DD536195606C for ; Mon, 26 Oct 2026 10:57:03 +0000 (UTC) Received: from anskuma-thinkpadp1gen7.bengluru.csb (unknown [10.74.80.94]) by mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id CC04430000E3; Mon, 26 Oct 2026 10:57:01 +0000 (UTC) From: Anshu Kumari To: sbrivio@redhat.com, passt-dev@passt.top Subject: [PATCH v8 0/6] Add --dhcp-boot and --dhcp-opt options Date: Mon, 26 Oct 2026 16:26:52 +0530 Message-ID: <20261026105659.1585444-1-anskuma@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.4 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: uVtmDhj0To5T7mzIXbzy4DRKYKO4JwrMYF18CaQOV44_1793012224 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit Message-ID-Hash: JRJD2YZCVHFELUX6RNQXZZESPIOYQGO4 X-Message-ID-Hash: JRJD2YZCVHFELUX6RNQXZZESPIOYQGO4 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: anskuma@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. RFC 3396 option splitting for concatenation-requiring options has also been introduce as a separate patch. Anshu Kumari (6): dhcp: Refactor fill_one() to operate on a generic buffer dhcp: Add option configuration tracking with enum opt_conf dhcp: Add --dhcp-opt with option table and value parser dhcp: Add --dhcp-boot command-line option dhcp: Add option overload dhcp: Add RFC 3396 option splitting for concatenation-requiring options conf.c | 30 ++- dhcp.c | 612 +++++++++++++++++++++++++++++++++++++++++++++++++------- dhcp.h | 2 + passt.1 | 48 +++++ 4 files changed, 624 insertions(+), 68 deletions(-) -- 2.55.0