From patchwork Thu Jul 23 17:46:42 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Magdum X-Patchwork-Id: 27493 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id 67C15BDE17 for ; Thu, 23 Jul 2026 17:46:51 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 7F5C967ED8; Thu, 23 Jul 2026 19:46:50 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="SQ03S6T5"; dkim-atps=neutral Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com [IPv6:2a00:1450:4864:20::32a]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id DF03D67E5C for ; Thu, 23 Jul 2026 19:46:48 +0200 (CEST) Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-4954c0833b4so6830705e9.1 for ; Thu, 23 Jul 2026 10:46:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1784828808; x=1785433608; darn=lists.libcamera.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=9ss7TsarfSL+sWVJUZl5iQ6SaTa9iURY4Fc5p4wGQUY=; b=SQ03S6T5rEKc1Y5Arb70NONjp9Y362v+DCeQ50JPQWRpS2NE2/wpMNkWSqnUatBarh 0484R9c2M8yNIoaQeaP7OVB/VngSvg2Y/iyy1RbAL9fdp8tmVQ0H9W3D+SbEAMm61ncX GtCEVsb8szLDR9DzMqzQsxuk8VF/gaEp9GciF6ykLQb6zQ7qie/ZxekaPwgAZb1P40ug 8wyMsLC7cSALsPJl83W2VjXm5Qhz5Jv3ivpKvHtS9SA3q1HryK7gwUx3Rw/+67fPzTlv JlBRzG6qMWqtfync7WHrWW8pPqHLa0MM/c+6N854O4whXqOd+GHt7AX6w4zda7vdyhFH UtEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784828808; x=1785433608; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=9ss7TsarfSL+sWVJUZl5iQ6SaTa9iURY4Fc5p4wGQUY=; b=jq8rbgjkh/A4W730ogbh2Oj9cJZF1qxtWluHS1uujkGf9sDHA7SZWtBWrkWhkF2TyV GShaf/FWjKjrf61GxlW3E4OqUZvgLGs9d7EhXdt/y4WjHlaTqAl8yn7l8FRkNUr8z3id z0pP+S0qPeKyjXaHQAdp/2Qo8Y6/hM7d9WW4i+R+wA7vPZteF8MQcPQq12c8aaazdsKp 1EGwWTxhWPZQq59g1D/JqShOwbAI4UsFyjPuV7SQVRPE6WNMCmRU/ybDf0UW5Chi2DRr fNfMqfRoBfJkISHxu7I5STPJgxnQPVsfGR+b+03/Y0sVfrK60YK5dwvs0kJl/oxqdv3p Wzbg== X-Gm-Message-State: AOJu0YyIE1sg95yuH/AS5LRbzlU9jDmew4DfN6zC92vb8KwK3Q0y6rMk XyZ+mGDdnLa/nSzUC2RaLtpIWTw1HHzfonWcal4qsPax8m5INzJQsAMp2z5irT1A0Zw= X-Gm-Gg: AR+sD12A9dLcQ/wpmWwvVV9qmi/V0Nj9fYugxGGYXf0rL1HMUbEFS76UlS5upY7PQBC twidX/GQ/EVCYgg262VdslQ8gvhBiima6vy6ZiWUNVCBhMVHLh68/mnduCE/bRVjb2Guc5+Gnjq U2KdFNScfcpmxVam4IY0B2HnjGYnr+/IBbYU6IgLePhjf6g5ceckvf5/c2W0JmwAREnqQREd1Fk Qu5PDja9kNngA47DUNmjEDdBJ00EYZaKJB60KQNg/7iARILlK7UQZDDvL/IU2kl1uFhAXuobeiV DqoHmy9fJ2sNvwgh8mqW64BBZgnkqKsRavl4sfIvFnA1l9k1Cq8ed/0TU8oKfeqRYHO7kQ59w5Y F6Kyz4FBVZTyHwLEi553ykD4gNv+3MGLlR57lJdoq+3cr49qygS10PySEcBbzqV22QEBwiZ4yrc Npbo2H2VaBgGCJlvNVM1SyxG+KuFrUEwsvEwXkWQ== X-Received: by 2002:a05:6000:2904:b0:46e:624e:3c2f with SMTP id ffacd0b85a97d-47f8dc8565cmr5065783f8f.47.1784828808132; Thu, 23 Jul 2026 10:46:48 -0700 (PDT) Received: from magdum-System-Product-Name.vodafone.ultrahub ([2a02:810d:4b14:4600:72e8:99a4:5b87:2e43]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-47f85c67339sm18199270f8f.31.2026.07.23.10.46.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 23 Jul 2026 10:46:47 -0700 (PDT) From: Magdum To: libcamera-devel@lists.libcamera.org Cc: Magdum Subject: [PATCH 0/2] libcamera: Control name serialization v3 and input validation hardening Date: Thu, 23 Jul 2026 19:46:42 +0200 Message-ID: <20260723174644.6580-1-magdum.foss@gmail.com> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" This series bumps the IPA controls serialization format to v3 to support local control names across IPC, and introduces robust size validation safeguards against potential serialization overflows. Patch 1 updates the format layout and serialization logic to preserve V4L2-style control names. Patch 2 hardens the control serializer with input verification boundaries and extended boundary tests. Magdum (2): libcamera: Serialize local control names in IPA format v3 libcamera: Harden control serializer size and input validation include/libcamera/ipa/ipa_controls.h | 6 +- src/libcamera/control_serializer.cpp | 337 ++++++++++++++++--- test/serialization/control_serialization.cpp | 174 ++++++++++ 3 files changed, 460 insertions(+), 57 deletions(-)