<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/0440ca85030b26f73c886a63352537f6a56c5c10">https://github.com/macports/macports-ports/commit/0440ca85030b26f73c886a63352537f6a56c5c10</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 0440ca85030 putty: fix build on older systems
</span>0440ca85030 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 0440ca85030b26f73c886a63352537f6a56c5c10
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Mon Jun 13 00:33:28 2022 +1000

<span style='display:block; white-space:pre;color:#404040;'>    putty: fix build on older systems
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/65327
</span>---
 security/putty/Portfile                 |  2 ++
 security/putty/files/sftpserver.c.patch | 16 ++++++++++++++++
 2 files changed, 18 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/security/putty/Portfile b/security/putty/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 2dfad0697bc..7d9ed156394 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/security/putty/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/security/putty/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -26,6 +26,8 @@ checksums           rmd160  d4e27e59e3a7235089ccae854db2507a650da02f \
</span> depends_build-append    port:pkgconfig
 configure.args-append   -DPUTTY_GTK_VERSION=0
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          sftpserver.c.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> pre-configure {
     configure.cflags-delete -DNDEBUG
 }
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/security/putty/files/sftpserver.c.patch b/security/putty/files/sftpserver.c.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..6b69ebe10d0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/security/putty/files/sftpserver.c.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,16 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+HAVE_FSTATAT and HAVE_DIRFD are defined using #cmakedefine01, which
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+means they will always be defined, with a value of 1 if the feature is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+available or 0 if it is not. So simply checking if they are defined is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+incorrect and leads to the functions being used when unavailable.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- unix/sftpserver.c.orig 2022-05-25 02:56:28.000000000 +1000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ unix/sftpserver.c      2022-06-13 00:27:02.000000000 +1000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -602,7 +602,7 @@ static void uss_readdir(SftpServer *srv,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         char *longnamebuf = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         struct fxp_attrs attrs = no_attrs;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if defined HAVE_FSTATAT && defined HAVE_DIRFD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if HAVE_FSTATAT && HAVE_DIRFD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         struct stat st;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (!fstatat(dirfd(udh->dp), de->d_name, &st, AT_SYMLINK_NOFOLLOW)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             char perms[11], *uidbuf = NULL, *gidbuf = NULL;
</span></pre><pre style='margin:0'>

</pre>