From nobody Wed Jun 21 18:41:05 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QmXQB1rn2z4gN7F; Wed, 21 Jun 2023 18:41:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QmXQB0W3lz3LT1; Wed, 21 Jun 2023 18:41:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687372866; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ULt9YH/joqgHqfW/jqbiN0onPyCJJeq/xo7uaYu12UY=; b=EjEKoVyvSdvI94uHzlYNJOopADN+eJuTKOPUC5flCc6IL7yHJTjwmIuWX6ztFVFe0UYjj2 0o0eOtiCt/mCGMoipr3/FFPuigLyNqAr0Zma9tScJEpICGoiZ4F5k+f29BV9xtizhqv9e+ g+KDAwegKCuaedy/O28xKmfMnx7q1M30sfftsQDXQ7/1LrfJ9niMu7l1gAVAudg/ztkejh 9CnU0yPmw8KSZXs4IkLNBHNI3l90f/ptcWINVfxYhECHXa3l1puqlrCT6+AXxYlzIrhU61 SWpZ6LQxEgVt+kVSU096pkUklQvR6xDbzqce09HINhsaN3xmV8Cp6dFDGK8fSA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687372866; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ULt9YH/joqgHqfW/jqbiN0onPyCJJeq/xo7uaYu12UY=; b=cy8iVV1+nBnPfov/vwDTCJsKwy5X+Sug6iEszH5LPLayC+/NYk/mw5RtWFjEv19GGXBmFG ycvz6XJsP4MyA49Me2bVzwvyHu35J2oewLJaGgJNevSFnh30Pk2WSXBw597vf2QCb6UJ8F Lu8HCPjVCTh6IgnP1sNtgR0EtYYw06WgNCPVOzeVz1WWav/nGqJUfAxQcGdkDW5UHVGSu/ I1NxzHCVGAXP2Wd5gj7IOUgr7nmcGKhA1TThV/njtweS5U+wJVMpNo3H4ayqu5abNkPsQ0 C1zvTLjpsec4XddqDydgsA3PT4uU5ZIx9QAxBrVChdX5Lz22JovUjlsUaCbn1w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687372866; a=rsa-sha256; cv=none; b=CJqcW93C490Stx9m9Vx+y/supDtDfFbmB5k1PImS+SlkrfU0BaaGDFVeUYdtCgY88I35K4 H0/hIZl142CgJuUSWLqwjMNYFOTA9zzYM3olbDhVHjK2ciJoVrzRoYUUYEl1gsSDTDJyiB JeYU26OwJy4emtXJxW3lMP8iZZvaj14qv4A8+uJzU/XoyXewNge4mlOpwg8ahRYWzIun7+ aJAjeGz09iQZd6qEIsPCuKglBYr1k/vfxPU0Jgg7Ua6j6a4ka07geJeDY+TNWauFZA0OAN 2NO6gc/H+GfIcwLL5Rlplhol1WD+fnTIPTg02s9VfWaHFSFFlBGoCgghskIYWw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4QmXQ95szXzsKb; Wed, 21 Jun 2023 18:41:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 35LIf5mp048368; Wed, 21 Jun 2023 18:41:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35LIf5ga048367; Wed, 21 Jun 2023 18:41:05 GMT (envelope-from git) Date: Wed, 21 Jun 2023 18:41:05 GMT Message-Id: <202306211841.35LIf5ga048367@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 383d51d59236 - main - unix tests: Add a regression test for getpeername(2) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 383d51d592369f92b836f77abf8f118ab4e44ff1 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=383d51d592369f92b836f77abf8f118ab4e44ff1 commit 383d51d592369f92b836f77abf8f118ab4e44ff1 Author: Mark Johnston AuthorDate: 2023-06-21 18:33:52 +0000 Commit: Mark Johnston CommitDate: 2023-06-21 18:39:36 +0000 unix tests: Add a regression test for getpeername(2) Ensure that it works as expected when applied to a self-connected socket. MFC after: 1 week Sponsored by: The FreeBSD Foundation --- tests/sys/kern/unix_dgram.c | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/tests/sys/kern/unix_dgram.c b/tests/sys/kern/unix_dgram.c index 93669a30d4c5..9df0d4ca7168 100644 --- a/tests/sys/kern/unix_dgram.c +++ b/tests/sys/kern/unix_dgram.c @@ -36,6 +36,7 @@ #include #include #include +#include #include #include @@ -363,12 +364,39 @@ ATF_TC_BODY(event, tc) test42(fd[0]); } -ATF_TP_ADD_TCS(tp) +ATF_TC_WITHOUT_HEAD(selfgetpeername); +ATF_TC_BODY(selfgetpeername, tc) { + struct sockaddr_un sun; + const char *name; + socklen_t len; + int sd; + + name = "selfgetpeername"; + + sd = socket(PF_UNIX, SOCK_DGRAM, 0); + ATF_REQUIRE(sd != -1); + + memset(&sun, 0, sizeof(sun)); + sun.sun_len = sizeof(sun); + sun.sun_family = AF_UNIX; + snprintf(sun.sun_path, sizeof(sun.sun_path), "%s", name); + ATF_REQUIRE(bind(sd, (struct sockaddr *)&sun, sizeof(sun)) == 0); + ATF_REQUIRE(connect(sd, (struct sockaddr *)&sun, sizeof(sun)) == 0); + + len = sizeof(sun); + ATF_REQUIRE(getpeername(sd, (struct sockaddr *)&sun, &len) == 0); + ATF_REQUIRE(strcmp(sun.sun_path, name) == 0); + ATF_REQUIRE(close(sd) == 0); +} + +ATF_TP_ADD_TCS(tp) +{ ATF_TP_ADD_TC(tp, basic); ATF_TP_ADD_TC(tp, one2many); ATF_TP_ADD_TC(tp, event); + ATF_TP_ADD_TC(tp, selfgetpeername); return (atf_no_error()); }