From owner-svn-ports-head@freebsd.org Tue Jul 3 03:29:47 2018 Return-Path: Delivered-To: svn-ports-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2BBDBFF3DB5; Tue, 3 Jul 2018 03:29:47 +0000 (UTC) (envelope-from timur@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BF01D886F5; Tue, 3 Jul 2018 03:29:46 +0000 (UTC) (envelope-from timur@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A05D5168E5; Tue, 3 Jul 2018 03:29:46 +0000 (UTC) (envelope-from timur@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w633TkOK056792; Tue, 3 Jul 2018 03:29:46 GMT (envelope-from timur@FreeBSD.org) Received: (from timur@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w633ThS8056768; Tue, 3 Jul 2018 03:29:43 GMT (envelope-from timur@FreeBSD.org) Message-Id: <201807030329.w633ThS8056768@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: timur set sender to timur@FreeBSD.org using -f From: "Timur I. Bakeyev" Date: Tue, 3 Jul 2018 03:29:43 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r473793 - in head/devel: . cwrap nss_wrapper pam_wrapper resolv_wrapper socket_wrapper uid_wrapper X-SVN-Group: ports-head X-SVN-Commit-Author: timur X-SVN-Commit-Paths: in head/devel: . cwrap nss_wrapper pam_wrapper resolv_wrapper socket_wrapper uid_wrapper X-SVN-Commit-Revision: 473793 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 03 Jul 2018 03:29:47 -0000 Author: timur Date: Tue Jul 3 03:29:42 2018 New Revision: 473793 URL: https://svnweb.freebsd.org/changeset/ports/473793 Log: Add a Cwrap suit - set of preloadable wrappers that allow to test different aspects of the application in a transparent manner. Sponsored by: iXsystems Inc. Added: head/devel/cwrap/ head/devel/cwrap/Makefile (contents, props changed) head/devel/cwrap/pkg-descr (contents, props changed) head/devel/nss_wrapper/ head/devel/nss_wrapper/Makefile (contents, props changed) head/devel/nss_wrapper/distinfo (contents, props changed) head/devel/nss_wrapper/pkg-descr (contents, props changed) head/devel/pam_wrapper/ head/devel/pam_wrapper/Makefile (contents, props changed) head/devel/pam_wrapper/distinfo (contents, props changed) head/devel/pam_wrapper/pkg-descr (contents, props changed) head/devel/resolv_wrapper/ head/devel/resolv_wrapper/Makefile (contents, props changed) head/devel/resolv_wrapper/distinfo (contents, props changed) head/devel/resolv_wrapper/pkg-descr (contents, props changed) head/devel/socket_wrapper/ head/devel/socket_wrapper/Makefile (contents, props changed) head/devel/socket_wrapper/distinfo (contents, props changed) head/devel/socket_wrapper/pkg-descr (contents, props changed) head/devel/uid_wrapper/ head/devel/uid_wrapper/Makefile (contents, props changed) head/devel/uid_wrapper/distinfo (contents, props changed) head/devel/uid_wrapper/pkg-descr (contents, props changed) Modified: head/devel/Makefile Modified: head/devel/Makefile ============================================================================== --- head/devel/Makefile Tue Jul 3 02:18:44 2018 (r473792) +++ head/devel/Makefile Tue Jul 3 03:29:42 2018 (r473793) @@ -408,6 +408,7 @@ SUBDIR += cvsweb3 SUBDIR += cvswrap SUBDIR += cweb + SUBDIR += cwrap SUBDIR += cx_Freeze SUBDIR += cxmon SUBDIR += cxref @@ -1827,6 +1828,7 @@ SUBDIR += npth SUBDIR += nsgenbind SUBDIR += nspr + SUBDIR += nss_wrapper SUBDIR += nuitka SUBDIR += obby SUBDIR += objecthash @@ -3838,6 +3840,7 @@ SUBDIR += p65 SUBDIR += p8-platform SUBDIR += paexec + SUBDIR += pam_wrapper SUBDIR += papi SUBDIR += papilio-loader SUBDIR += pas2dox @@ -5359,6 +5362,7 @@ SUBDIR += renpy6 SUBDIR += replay SUBDIR += replxx + SUBDIR += resolv_wrapper SUBDIR += rhtvision SUBDIR += riscv64-binutils SUBDIR += riscv64-gcc @@ -6092,6 +6096,7 @@ SUBDIR += smokeqt-kde4 SUBDIR += smv SUBDIR += soapui + SUBDIR += socket_wrapper SUBDIR += sonar-ant-task SUBDIR += sonar-scanner-cli SUBDIR += sonarqube @@ -6206,6 +6211,7 @@ SUBDIR += ucommon SUBDIR += ucpp SUBDIR += udis86 + SUBDIR += uid_wrapper SUBDIR += ultragetopt SUBDIR += umbrello SUBDIR += umbrello-kde4 Added: head/devel/cwrap/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cwrap/Makefile Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,20 @@ +# $FreeBSD$ + +PORTNAME= cwrap +PORTVERSION= 1.1.0 +CATEGORIES= devel + +MAINTAINER= timur@FreeBSD.org +COMMENT= Testing your full software stack on a single machine + +LICENSE= GPLv3 + +RUN_DEPENDS= nss_wrapper>=1.1.3:devel/nss_wrapper \ + pam_wrapper>=1.0.6:devel/pam_wrapper \ + resolv_wrapper>=1.1.5:devel/resolv_wrapper \ + socket_wrapper>=1.1.9:devel/socket_wrapper \ + uid_wrapper>=1.2.4:devel/uid_wrapper + +USES= metaport + +.include Added: head/devel/cwrap/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/cwrap/pkg-descr Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,3 @@ +cwrap - testing your full software stack on a single machine. + +WWW: https://cwrap.org/ Added: head/devel/nss_wrapper/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/nss_wrapper/Makefile Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,37 @@ +# $FreeBSD$ + +PORTNAME= nss_wrapper +PORTVERSION= 1.1.3 +CATEGORIES= devel +MASTER_SITES= SAMBA/cwrap + +MAINTAINER= timur@FreeBSD.org +COMMENT= Wrapper for the user, group and hosts NSS API + +LICENSE= GPLv3 + +USES= cmake:outsource perl5 shebangfix +USE_PERL5= run +USE_LDCONFIG= yes + +CMAKE_ARGS+= -DMAN_INSTALL_DIR:PATH="${PREFIX}/man" + +OPTIONS_DEFINE= TEST +OPTIONS_DEFAULT= TEST + +TEST_TARGET= test +TEST_CMAKE_BOOL= UNIT_TESTING +TEST_BUILD_DEPENDS+= cmocka>=1.1.1:sysutils/cmocka + +SHEBANG_FILES= nss_wrapper.pl + +PLIST_FILES= bin/nss_wrapper.pl \ + libdata/pkgconfig/nss_wrapper.pc \ + lib/cmake/nss_wrapper/nss_wrapper-config-version.cmake \ + lib/cmake/nss_wrapper/nss_wrapper-config.cmake \ + lib/libnss_wrapper.so.0.2.3 \ + lib/libnss_wrapper.so.0 \ + lib/libnss_wrapper.so \ + man/man1/nss_wrapper.1.gz + +.include Added: head/devel/nss_wrapper/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/nss_wrapper/distinfo Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,3 @@ +TIMESTAMP = 1530578807 +SHA256 (nss_wrapper-1.1.3.tar.gz) = c9b84c14c5bc6948cdad4cbdeefaaf8b471a11ef876535002896779411573aa3 +SIZE (nss_wrapper-1.1.3.tar.gz) = 53543 Added: head/devel/nss_wrapper/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/nss_wrapper/pkg-descr Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,17 @@ +There are projects which provide daemons needing to be able to create, modify +and delete Unix users. Or just switch user ids to interact with the system e.g. +a user space file server. To be able to test that you need the privilege to +modify the passwd and groups file. With nss_wrapper it is possible to define +your own passwd and groups file which will be used by software to act correctly +while under test. + +If you have a client and server under test they normally use functions to +resolve network names to addresses (dns) or vice versa. The nss_wrappers allow +you to create a hosts file to setup name resolution for the addresses you use +with socket_wrapper. + +- Provides information for user and group accounts. +- Network name resolution using a hosts file. +- Loading and testing of NSS modules. + +WWW: https://cwrap.org/ Added: head/devel/pam_wrapper/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/pam_wrapper/Makefile Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,47 @@ +# $FreeBSD$ + +PORTNAME= pam_wrapper +PORTVERSION= 1.0.6 +CATEGORIES= devel +MASTER_SITES= SAMBA/cwrap + +MAINTAINER= timur@FreeBSD.org +COMMENT= Preloadable wrapper to test PAM applications and PAM Modules + +LICENSE= GPLv3 + +USES= cmake:outsource python:2.7+ +USE_LDCONFIG= yes + +CMAKE_ARGS+= -DMAN_INSTALL_DIR:PATH="${PREFIX}/man" + +OPTIONS_DEFINE= TEST +OPTIONS_DEFAULT= TEST + +TEST_TARGET= test +TEST_CMAKE_BOOL= UNIT_TESTING +TEST_BUILD_DEPENDS+= cmocka>=1.1.1:sysutils/cmocka + +PLIST_FILES= libdata/pkgconfig/pam_wrapper.pc \ + libdata/pkgconfig/libpamtest.pc \ + lib/cmake/pam_wrapper/pam_wrapper-config-version.cmake \ + lib/cmake/pam_wrapper/pam_wrapper-config.cmake \ + lib/cmake/libpamtest/libpamtest-config.cmake \ + lib/cmake/libpamtest/libpamtest-config-version.cmake \ + lib/libpam_wrapper.so.0.0.3 \ + lib/libpam_wrapper.so.0 \ + lib/libpam_wrapper.so \ + lib/libpamtest.so.0.0.3 \ + lib/libpamtest.so.0 \ + lib/libpamtest.so \ + lib/pam_wrapper/pam_matrix.so \ + lib/pam_wrapper/pam_get_items.so \ + lib/pam_wrapper/pam_set_items.so \ + ${PYTHON_SITELIBDIR}/pypamtest.so \ + include/libpamtest.h \ + man/man1/pam_wrapper.1.gz \ + man/man8/pam_matrix.8.gz \ + man/man8/pam_get_items.8.gz \ + man/man8/pam_set_items.8.gz + +.include Added: head/devel/pam_wrapper/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/pam_wrapper/distinfo Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,3 @@ +TIMESTAMP = 1530578245 +SHA256 (pam_wrapper-1.0.6.tar.gz) = 00a0ea065aa20c50eb54103fc8a62504114b07ebfd2bf0c86bb8be10f612581b +SIZE (pam_wrapper-1.0.6.tar.gz) = 86221 Added: head/devel/pam_wrapper/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/pam_wrapper/pkg-descr Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,8 @@ +This tool allows you to either test your PAM application or module. For testing +PAM applications we have written a simple PAM module called pam_matrix +(see below). If you plan to test a PAM module you can use the pamtest library +we have implemented. It simplifies testing of modules. You can be combine it +with the cmocka unit testing framework or you can use the provided Python +bindings to write tests for your module in Python. + +WWW: https://cwrap.org/ Added: head/devel/resolv_wrapper/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/resolv_wrapper/Makefile Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,33 @@ +# $FreeBSD$ + +PORTNAME= resolv_wrapper +PORTVERSION= 1.1.5 +CATEGORIES= devel +MASTER_SITES= SAMBA/cwrap + +MAINTAINER= timur@FreeBSD.org +COMMENT= Wrapper for dns name resolving or dns faking + +LICENSE= GPLv3 + +USES= cmake:outsource +USE_LDCONFIG= yes + +CMAKE_ARGS+= -DMAN_INSTALL_DIR:PATH="${PREFIX}/man" + +OPTIONS_DEFINE= TEST +OPTIONS_DEFAULT= TEST + +TEST_TARGET= test +TEST_CMAKE_BOOL= UNIT_TESTING +TEST_BUILD_DEPENDS+= cmocka>=1.1.1:sysutils/cmocka + +PLIST_FILES= libdata/pkgconfig/resolv_wrapper.pc \ + lib/cmake/resolv_wrapper/resolv_wrapper-config-version.cmake \ + lib/cmake/resolv_wrapper/resolv_wrapper-config.cmake \ + lib/libresolv_wrapper.so.0.0.5 \ + lib/libresolv_wrapper.so.0 \ + lib/libresolv_wrapper.so \ + man/man1/resolv_wrapper.1.gz + +.include Added: head/devel/resolv_wrapper/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/resolv_wrapper/distinfo Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,3 @@ +TIMESTAMP = 1530576086 +SHA256 (resolv_wrapper-1.1.5.tar.gz) = e989fdaa1385bdf3ef7dbcb83b3f7f15c69e78ca6432e254be390b7c63e1b06c +SIZE (resolv_wrapper-1.1.5.tar.gz) = 34241 Added: head/devel/resolv_wrapper/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/resolv_wrapper/pkg-descr Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,10 @@ +resolv_wrapper makes it possible on most UNIX platforms to contact your own DNS +implementation in your test environment. It requires socket_wrapper to be able +to contact it. +If it doesn't work on a special platform the wrapper is able to fake DNS queries +and return valid responses to your application. + +- Redirects name queries to the nameservers specified in your resolv.conf +- Can fake DNS queries using a simple formatted DNS hosts file. + +WWW: https://cwrap.org/ Added: head/devel/socket_wrapper/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/socket_wrapper/Makefile Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,37 @@ +# $FreeBSD$ + +PORTNAME= socket_wrapper +PORTVERSION= 1.1.9 +CATEGORIES= devel +MASTER_SITES= SAMBA/cwrap + +MAINTAINER= timur@FreeBSD.org +COMMENT= Library passing all socket communications through unix sockets + +LICENSE= GPLv3 + +USES= cmake:outsource +USE_LDCONFIG= yes + +CMAKE_ARGS+= -DMAN_INSTALL_DIR:PATH="${PREFIX}/man" + +OPTIONS_DEFINE= TEST +OPTIONS_DEFAULT= TEST + +TEST_TARGET= test +TEST_CMAKE_BOOL= UNIT_TESTING +TEST_BUILD_DEPENDS+= cmocka>=1.1.1:sysutils/cmocka + +PLIST_FILES= libdata/pkgconfig/socket_wrapper.pc \ + lib/cmake/socket_wrapper/socket_wrapper-config-version.cmake \ + lib/cmake/socket_wrapper/socket_wrapper-config.cmake \ + lib/libsocket_wrapper.so.0.1.9 \ + lib/libsocket_wrapper.so.0 \ + lib/libsocket_wrapper.so \ + man/man1/socket_wrapper.1.gz + +post-configure: + ${REINPLACE_CMD} -Ee '/HAVE_FALLTHROUGH_ATTRIBUTE/d' \ + ${CONFIGURE_WRKSRC}/config.h + +.include Added: head/devel/socket_wrapper/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/socket_wrapper/distinfo Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,3 @@ +TIMESTAMP = 1530567034 +SHA256 (socket_wrapper-1.1.9.tar.gz) = 2c1d790f578c36b521c0e113fcbcf41d633336b3c60d6c6a1378f920495eebb4 +SIZE (socket_wrapper-1.1.9.tar.gz) = 772252 Added: head/devel/socket_wrapper/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/socket_wrapper/pkg-descr Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,10 @@ +socket_wrapper aims to help client/server software development teams willing to +gain full functional test coverage. It makes possible to run several instances +of the full software stack on the same machine and perform locally functional +testing of complex network configurations. + +- Redirects all network communication to happen over unix sockets. +- Support for IPv4 and IPv6 socket and addressing emulation. +- Ablility to capture network traffic in pcap format. + +WWW: https://cwrap.org/ Added: head/devel/uid_wrapper/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/uid_wrapper/Makefile Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,33 @@ +# $FreeBSD$ + +PORTNAME= uid_wrapper +PORTVERSION= 1.2.4 +CATEGORIES= devel +MASTER_SITES= SAMBA/cwrap + +MAINTAINER= timur@FreeBSD.org +COMMENT= Wrapper to fake privilege separation + +LICENSE= GPLv3 + +USES= cmake:outsource +USE_LDCONFIG= yes + +CMAKE_ARGS+= -DMAN_INSTALL_DIR:PATH="${PREFIX}/man" + +OPTIONS_DEFINE= TEST +OPTIONS_DEFAULT= TEST + +TEST_TARGET= test +TEST_CMAKE_BOOL= UNIT_TESTING +TEST_BUILD_DEPENDS+= cmocka>=1.1.1:sysutils/cmocka + +PLIST_FILES= libdata/pkgconfig/uid_wrapper.pc \ + lib/cmake/uid_wrapper/uid_wrapper-config-version.cmake \ + lib/cmake/uid_wrapper/uid_wrapper-config.cmake \ + lib/libuid_wrapper.so.0.0.6 \ + lib/libuid_wrapper.so.0 \ + lib/libuid_wrapper.so \ + man/man1/uid_wrapper.1.gz + +.include Added: head/devel/uid_wrapper/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/uid_wrapper/distinfo Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,3 @@ +TIMESTAMP = 1530550405 +SHA256 (uid_wrapper-1.2.4.tar.gz) = 3c60f65371420074ef437796a36beef2d713c28bd5c5fbf29c3e7a9647cd50fa +SIZE (uid_wrapper-1.2.4.tar.gz) = 311811 Added: head/devel/uid_wrapper/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/uid_wrapper/pkg-descr Tue Jul 3 03:29:42 2018 (r473793) @@ -0,0 +1,17 @@ +- Allows uid switching as a normal user. + +- Start any application making it believe it is running as root. + +- Support for user/group changing in the local thread using the syscalls + (like glibc). + +- More precisely this library intercepts seteuid and related calls, and + simulates them in a manner similar to the nss_wrapper and socket_wrapper + libraries. + +Some projects like a file server need privilege separation to be able to switch +to the connection user and do file operations. uid_wrapper convincingly lies to +the application letting it believe it is operating as root and even switching +between UIDs and GIDs as needed. + +WWW: https://cwrap.org/