瀏覽代碼

package/passt: new package

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
Yann E. MORIN 4 月之前
父節點
當前提交
d038cc47cd
共有 4 個文件被更改,包括 65 次插入0 次删除
  1. 1 0
      package/Config.in
  2. 19 0
      package/passt/Config.in
  3. 4 0
      package/passt/passt.hash
  4. 41 0
      package/passt/passt.mk

+ 1 - 0
package/Config.in

@@ -2606,6 +2606,7 @@ endif
 	source "package/openvpn/Config.in"
 	source "package/p910nd/Config.in"
 	source "package/parprouted/Config.in"
+	source "package/passt/Config.in"
 	source "package/phidgetwebservice/Config.in"
 	source "package/phytool/Config.in"
 	source "package/pimd/Config.in"

+ 19 - 0
package/passt/Config.in

@@ -0,0 +1,19 @@
+config BR2_PACKAGE_PASST
+	bool "passt"
+	help
+	  passt: Plug A Simple Socket Transport
+	  pasta: Pack A Subtle Tap Abstraction
+
+	  passt implements a translation layer between a Layer-2
+	  network interface and native Layer-4 sockets (TCP, UDP,
+	  ICMP/ICMPv6 echo) on a host. It doesn't require any
+	  capabilities or privileges, and it can be used as a simple
+	  replacement for Slirp.
+
+	  pasta (same binary as passt, different command) offers
+	  equivalent functionality, for network namespaces: traffic
+	  is forwarded using a tap interface inside the namespace,
+	  without the need to create further interfaces on the host,
+	  hence not requiring any capabilities or privileges.
+
+	  https://passt.top/passt/about/

+ 4 - 0
package/passt/passt.hash

@@ -0,0 +1,4 @@
+# Locally computed
+sha256  f76c12e0535b9f6af59ee747d8ed7a8f691bb1ac7429225484788f0bc6e23dac  passt-2025_02_17.a1e48a0-git4.tar.gz
+sha256  32dfe03d9985f5feb581da26a2fe6c84530cccb6b53ede0d8dab075cd048ac5b  LICENSES/BSD-3-Clause.txt
+sha256  aaf135472f81c5b4a0dca9367e5bb5e9750032b5bebe5442b36e4c0a47430df3  LICENSES/GPL-2.0-or-later.txt

+ 41 - 0
package/passt/passt.mk

@@ -0,0 +1,41 @@
+################################################################################
+#
+# passt
+#
+################################################################################
+
+PASST_VERSION = 2025_02_17.a1e48a0
+PASST_SITE = https://passt.top/passt
+PASST_SITE_METHOD = git
+
+PASST_LICENSE = \
+	BSD-3-Clause, \
+	GPL-2.0-or-later
+PASST_LICENSE_FILES = \
+	LICENSES/BSD-3-Clause.txt \
+	LICENSES/GPL-2.0-or-later.txt
+
+define PASST_LINUX_CONFIG_FIXUPS
+	$(call KCONFIG_ENABLE_OPT,CONFIG_NET)
+	$(call KCONFIG_ENABLE_OPT,CONFIG_NET_CORE)
+	$(call KCONFIG_ENABLE_OPT,CONFIG_NETDEVICES)
+	$(call KCONFIG_ENABLE_OPT,CONFIG_NET_CORE)
+	$(call KCONFIG_ENABLE_OPT,CONFIG_INET)
+	$(call KCONFIG_ENABLE_OPT,CONFIG_TUN)
+endef
+
+define PASST_BUILD_CMDS
+	$(MAKE) $(TARGET_CONFIGURE_OPTS) \
+		-C $(@D) \
+		prefix=/usr
+endef
+
+define PASST_INSTALL_TARGET_CMDS
+	$(MAKE) $(TARGET_CONFIGURE_OPTS) \
+		-C $(@D) \
+		prefix=/usr \
+		DESTDIR=$(TARGET_DIR) \
+		install
+endef
+
+$(eval $(generic-package))