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=QCwnmb+7; 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 DBB5C5A0265 for ; Tue, 26 May 2026 14:31:37 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1779798694; 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=lkOaSpYZsgzLEV8TirbNN5TelgrA7jqgFkTkHZvw5No=; b=QCwnmb+71sTrLxsiiTL1PVbpgN4i/Jpm8PAlvuGogi9ADVja9EW84aGHHOFalwq8k+zqrB pDVRJGePWRmolKP8aqkbF6XCzz8VjHGK7sNbdspyMRjltCRXPnQIRkvKJyG43w610PCdXS Rx08pNR19/6UXealIXeaslpq6psauP4= Received: from mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-568-d-o_dY0XMsuH1KkpT_Unjw-1; Tue, 26 May 2026 08:31:24 -0400 X-MC-Unique: d-o_dY0XMsuH1KkpT_Unjw-1 X-Mimecast-MFC-AGG-ID: d-o_dY0XMsuH1KkpT_Unjw_1779798681 Received: from mx-prod-int-10.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-10.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.95]) (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-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id CB80C18002F0; Tue, 26 May 2026 12:31:21 +0000 (UTC) Received: from anskuma-thinkpadp1gen7.bengluru.csb (unknown [10.74.65.90]) by mx-prod-int-10.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 72B261681; Tue, 26 May 2026 12:31:17 +0000 (UTC) From: Anshu Kumari To: anskuma@redhat.com, passt-dev@passt.top, sbrivio@redhat.com Subject: [PATCH v2 0/6] Add --dhcp-boot and --dhcp-opt options Date: Tue, 26 May 2026 18:01:07 +0530 Message-ID: <20260526123115.1226166-1-anskuma@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.6 on 10.30.177.95 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: cw20XmG3u9RdgR1xbeQFbnLoUtn8pLfrqJGrPENHUZw_1779798681 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit Message-ID-Hash: ZCD4Z5X7KFTX4OO77TXZLOQ3Z4HGFNOV X-Message-ID-Hash: ZCD4Z5X7KFTX4OO77TXZLOQ3Z4HGFNOV 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: jmaloy@redhat.com, lvivier@redhat.com, david@gibson.dropbear.id.au 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 | 64 +++++++++++++- dhcp.c | 253 +++++++++++++++++++++++++++++++++++++++++++++++++++----- dhcp.h | 17 ++++ passt.1 | 41 +++++++++ passt.h | 16 ++++ 5 files changed, 370 insertions(+), 21 deletions(-) -- 2.54.0