Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2226535/?format=api
{ "id": 2226535, "url": "http://patchwork.ozlabs.org/api/patches/2226535/?format=api", "web_url": "http://patchwork.ozlabs.org/project/openwrt/patch/20260422145623.3474490-1-ckorber@tdt.de/", "project": { "id": 45, "url": "http://patchwork.ozlabs.org/api/projects/45/?format=api", "name": "OpenWrt development", "link_name": "openwrt", "list_id": "openwrt-devel.lists.openwrt.org", "list_email": "openwrt-devel@lists.openwrt.org", "web_url": "http://openwrt.org/", "scm_url": "git://git.openwrt.org/openwrt.git", "webscm_url": "https://dev.openwrt.org/browser", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260422145623.3474490-1-ckorber@tdt.de>", "list_archive_url": null, "date": "2026-04-22T14:56:23", "name": "[ufp] ufp: write oui info to ieee-oui.txt", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "3101eb82a16d2463245501fb5ae72ac83ed95c29", "submitter": { "id": 92985, "url": "http://patchwork.ozlabs.org/api/people/92985/?format=api", "name": "Christian Korber", "email": "ckorber@tdt.de" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/openwrt/patch/20260422145623.3474490-1-ckorber@tdt.de/mbox/", "series": [ { "id": 501028, "url": "http://patchwork.ozlabs.org/api/series/501028/?format=api", "web_url": "http://patchwork.ozlabs.org/project/openwrt/list/?series=501028", "date": "2026-04-22T14:56:23", "name": "[ufp] ufp: write oui info to ieee-oui.txt", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/501028/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2226535/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2226535/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "\n <openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org>", "X-Original-To": "incoming@patchwork.ozlabs.org", "Delivered-To": "patchwork-incoming@legolas.ozlabs.org", "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n secure) header.d=lists.infradead.org header.i=@lists.infradead.org\n header.a=rsa-sha256 header.s=bombadil.20210309 header.b=OOrn7hb/;\n\tdkim=temperror header.d=tdt.de header.i=@tdt.de header.a=rsa-sha256\n header.s=z1-selector1 header.b=V3Y7yHqn;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=none (no SPF record) smtp.mailfrom=lists.openwrt.org\n (client-ip=2607:7c80:54:3::133; helo=bombadil.infradead.org;\n envelope-from=openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org;\n receiver=patchwork.ozlabs.org)" ], "Received": [ "from bombadil.infradead.org (bombadil.infradead.org\n [IPv6:2607:7c80:54:3::133])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g12R70nvXz1yCv\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 23 Apr 2026 00:58:23 +1000 (AEST)", "from localhost ([::1] helo=bombadil.infradead.org)\n\tby bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux))\n\tid 1wFZ0N-0000000AOWY-2gYI;\n\tWed, 22 Apr 2026 14:56:43 +0000", "from mxout70.expurgate.net ([91.198.224.70])\n\tby bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux))\n\tid 1wFZ0K-0000000AOW1-47Z2\n\tfor openwrt-devel@lists.openwrt.org;\n\tWed, 22 Apr 2026 14:56:42 +0000", "from [194.37.255.9] (helo=mxout.expurgate.net)\n\tby relay.expurgate.net with smtp (Exim 4.92)\n\t(envelope-from <prvs=7586a09fad=ckorber@tdt.de>)\n\tid 1wFZ0F-00FuA0-KC; Wed, 22 Apr 2026 16:56:35 +0200", "from [195.243.126.94] (helo=securemail.tdt.de)\n\tby relay.expurgate.net with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256)\n\t(Exim 4.92)\n\t(envelope-from <ckorber@tdt.de>)\n\tid 1wFZ0F-009AJH-0e; Wed, 22 Apr 2026 16:56:35 +0200", "from securemail.tdt.de (localhost [127.0.0.1])\n\tby securemail.tdt.de (Postfix) with ESMTP id 89A00240041;\n\tWed, 22 Apr 2026 16:56:34 +0200 (CEST)", "from mail.dev.tdt.de (unknown [10.2.4.42])\n\tby securemail.tdt.de (Postfix) with ESMTP id 35E6F240040;\n\tWed, 22 Apr 2026 16:56:28 +0200 (CEST)", "from PandoraBox.tdtnet.local (unknown [10.2.3.56])\n\tby mail.dev.tdt.de (Postfix) with ESMTPSA id D0C9824574;\n\tWed, 22 Apr 2026 16:56:27 +0200 (CEST)" ], "DKIM-Signature": [ "v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=lists.infradead.org; s=bombadil.20210309; h=Sender:Content-Type:\n\tList-Subscribe:List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:\n\tMIME-Version:Message-ID:Date:Subject:Cc:To:From:Reply-To:\n\tContent-Transfer-Encoding:Content-ID:Content-Description:Resent-Date:\n\tResent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:\n\tReferences:List-Owner; bh=3ee8FndtCyTu6RU5FAAUpxLgz170olN4tw4ZbTTePHI=; b=OOr\n\tn7hb/ie2N8/4+LZHF7pPTeJZ7QiQ6EBHQZLnOY7KZoxizslq9d148Gi3uNAfvzNOvIldEnsZNTXfa\n\t4WafTL9oFRVF8rJxIxdCyXWBdJt2fjgdy61q+IZCxhmBnJrc7cxzpr9HjbRu+xsG53Qv1b64zU0Th\n\tOhCof8/cQyLCTGNdJA8QvI1PgGA23L4OuohtSO1XdOpNmlcn9Y5NfBXaQxiNwDgF60ZieNYH2GTQC\n\tdISxWAEQdYuNVR/E5IG8xrWky2V1T88EDlZ/XcvGbfoWm5yfwWzCf0yvbgSnKiISFoYMcqQ2+RQBq\n\tBjq7Y5fP8TUXYjKq2rcdLubsVW42juw==;", "v=1; a=rsa-sha256; c=relaxed/relaxed; d=tdt.de;\n\ts=z1-selector1; t=1776869794;\n\tbh=bKA3fB534NMhDqIzcYjhVyrUwA9T6tqx9hhRXXYuri0=;\n\th=From:To:Cc:Subject:Date:From;\n\tb=V3Y7yHqnQ9EfnSf33jnZ8NXwqyW1qyhxv3GYJFud6S10Lks5SVGqjUAdb938V8NKK\n\t wjyGlxgQSL4tIHeAccz1qMglvJT6ebv0oh2a5Jr90auuYKvbjFTPdx771qmFyMLnkw\n\t oS+bdiS5+Ly5UdfJHiPiAl5uiAShDW56U+xwAiaJNF3WgBmrcfLb91v2hpEBObypG5\n\t OBcH/2QMT2veGljqe5xgXugCznKc8gLV/g/ecaGkjLFCnnJkDMI2/M/2dZYhGNOKJ6\n\t 82zZqHeNgHLGF7n32fkmDm32rxMY7wa45mjbab14Lbp2afM88rb47zofg0dR8tmZxU\n\t IZmeU9BR+6d8Q==" ], "From": "Christian Korber <ckorber@tdt.de>", "To": "john@phrozen.org, nbd@nbd.name", "Cc": "openwrt-devel@lists.openwrt.org", "Subject": "[ufp] ufp: write oui info to ieee-oui.txt", "Date": "Wed, 22 Apr 2026 16:56:23 +0200 (CEST)", "Message-ID": "<20260422145623.3474490-1-ckorber@tdt.de>", "X-Mailer": "git-send-email 2.47.3", "X-Spam-Status": "No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=ham\n\tautolearn_force=no version=3.4.2", "X-Spam-Checker-Version": "SpamAssassin 3.4.2 (2018-09-13) on mail.dev.tdt.de", "X-TBoneOriginalFrom": "Christian Korber <ckorber@tdt.de>", "X-TBoneOriginalTo": "john@phrozen.org, nbd@nbd.name", "X-TBoneOriginalCc": "openwrt-devel@lists.openwrt.org", "X-TBoneDomainSigned": "false", "MIME-Version": "1.0", "X-purgate": "clean", "X-purgate-type": "clean", "X-purgate-ID": "151534::1776869795-16755CE7-3F0FB6ED/0/0", "X-CRM114-Version": "20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 ", "X-CRM114-CacheID": "sfid-20260422_075641_192648_B7023374 ", "X-CRM114-Status": "GOOD ( 20.05 )", "X-Spam-Score": "-2.8 (--)", "X-Spam-Report": "Spam detection software,\n running on the system \"bombadil.infradead.org\",\n has NOT identified this incoming email as spam. The original\n message has been attached to this so you can view it or label\n similar future email. If you have any questions, see\n the administrator of that system for details.\n Content preview: This commit writes connected device's information (oui and\n vendor) to ieee-oui.txt for arp-scan. This way there is no unneccessary\n big\n file on the target. Signed-off-by: Christian Korber <ckorber@tdt.de> ---\n .../0003-ufp-write-to-ieee-oui-txt.patch | 64 +++++++++++++++++++ 1 file\n changed,\n 64 insertions(+) create mode 100644 utils/ufp/patches/0003-ufp-wr [...]\n Content analysis details: (-2.8 points, 5.0 required)\n pts rule name description\n ---- ----------------------\n --------------------------------------------------\n -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low\n trust\n [91.198.224.70 listed in list.dnswl.org]\n -0.0 SPF_PASS SPF: sender matches SPF record\n -0.0 SPF_HELO_PASS SPF: HELO matches SPF record\n -0.1 DKIM_VALID Message has at least one valid DKIM or DK\n signature\n -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from\n author's\n domain\n -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from\n envelope-from domain\n 0.1 DKIM_SIGNED Message has a DKIM or DK signature,\n not necessarily valid\n -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%\n [score: 0.0000]\n 0.0 MIME_NO_TEXT No (properly identified) text body parts", "X-BeenThere": "openwrt-devel@lists.openwrt.org", "X-Mailman-Version": "2.1.34", "Precedence": "list", "List-Id": "OpenWrt Development List <openwrt-devel.lists.openwrt.org>", "List-Unsubscribe": "<https://lists.openwrt.org/mailman/options/openwrt-devel>,\n <mailto:openwrt-devel-request@lists.openwrt.org?subject=unsubscribe>", "List-Archive": "<http://lists.openwrt.org/pipermail/openwrt-devel/>", "List-Post": "<mailto:openwrt-devel@lists.openwrt.org>", "List-Help": "<mailto:openwrt-devel-request@lists.openwrt.org?subject=help>", "List-Subscribe": "<https://lists.openwrt.org/mailman/listinfo/openwrt-devel>,\n <mailto:openwrt-devel-request@lists.openwrt.org?subject=subscribe>", "Content-Type": "multipart/mixed; boundary=\"===============3002373045871541783==\"", "Sender": "\"openwrt-devel\" <openwrt-devel-bounces@lists.openwrt.org>", "Errors-To": "\n openwrt-devel-bounces+incoming=patchwork.ozlabs.org@lists.openwrt.org" }, "content": "This commit writes connected device's information (oui and vendor) to\nieee-oui.txt for arp-scan. This way there is no unneccessary big file on\nthe target.\n\nSigned-off-by: Christian Korber <ckorber@tdt.de>\n---\n .../0003-ufp-write-to-ieee-oui-txt.patch | 64 +++++++++++++++++++\n 1 file changed, 64 insertions(+)\n create mode 100644 utils/ufp/patches/0003-ufp-write-to-ieee-oui-txt.patch", "diff": "diff --git a/utils/ufp/patches/0003-ufp-write-to-ieee-oui-txt.patch b/utils/ufp/patches/0003-ufp-write-to-ieee-oui-txt.patch\nnew file mode 100644\nindex 000000000..bacad6930\n--- /dev/null\n+++ b/utils/ufp/patches/0003-ufp-write-to-ieee-oui-txt.patch\n@@ -0,0 +1,64 @@\n+--- a/ufpd\n++++ b/ufpd\n+@@ -2,7 +2,7 @@\n+ 'use strict';\n+ import * as uloop from \"uloop\";\n+ import * as libubus from \"ubus\";\n+-import { readfile, glob, basename } from \"fs\";\n++import { readfile, glob, basename, open, stat, mkdir } from \"fs\";\n+ let uht = require(\"uht\");\n+ push(REQUIRE_SEARCH_PATH, \"/usr/share/ufp/*.uc\");\n+ \n+@@ -380,6 +380,52 @@ global.ubus_object = {\n+ \t\t\t\t}\n+ \t\t\t}\n+ \n++\t\t\t/*\n++\t\t\t * We want to populate ieee-oui.txt in order to\n++\t\t\t * use it for arp-scan. This way we don't need a\n++\t\t\t * large file too big in size, but rather rely on\n++\t\t\t * found data via ubus call 'fingerprint'.\n++\t\t\t * ieee-oui.txt will be updated on every call to:\n++\t\t\t * `ubus call fingerprint fingerprint`.\n++\t\t\t */\n++\n++\t\t\tconst tmp_dir = '/tmp/arp-scan';\n++\t\t\tconst ieee_file = sprintf('%s/ieee-oui.txt', tmp_dir);\n++\t\t\tlet ouis_added = [];\n++\n++\t\t\tif (!stat(tmp_dir))\n++\t\t\t\tmkdir(tmp_dir);\n++\n++\t\t\tconst fd = open(ieee_file, 'a+');\n++\n++\t\t\t/*\n++\t\t\t * check for duplicate ouis\n++\t\t\t */\n++\t\t\tfor (let line = fd.read('line'); length(line); line = fd.read('line')) {\n++\t\t\t\tlet oui = split(line, '\\t')[0];\n++\t\t\t\toui = uc(oui);\n++\n++\t\t\t\tif (index(ouis_added, oui) < 0)\n++\t\t\t\t\tpush(ouis_added, oui);\n++\t\t\t}\n++\n++\t\t\t/*\n++\t\t\t * write to ieee-oui.txt\n++\t\t\t */\n++\t\t\tfor (let entry in ret) {\n++\t\t\t\tlet vendor = ret[entry].vendor;\n++\t\t\t\tlet oui = split(entry, ':');\n++\t\t\t\toui = join('', slice(oui, 0,3));\n++\t\t\t\toui = uc(oui);\n++\n++\t\t\t\tif (index(ouis_added, oui) < 0) {\n++\t\t\t\t\tlet line = sprintf('%s\\t%s\\n', oui, vendor);\n++\t\t\t\t\tfd.write(line);\n++\t\t\t\t}\n++\t\t\t}\n++\n++\t\t\tfd.close();\n++\n+ \t\t\treturn req.args.macaddr ? ret[req.args.macaddr] : ret;\n+ \t\t}\n+ \t},\n", "prefixes": [ "ufp" ] }