<pre style='margin:0'>
Mihai Moldovan (Ionic) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/bc7595d43b545fa0cfa6521ea424eda7b560b926">https://github.com/macports/macports-ports/commit/bc7595d43b545fa0cfa6521ea424eda7b560b926</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit bc7595d43b545fa0cfa6521ea424eda7b560b926
</span>Author: Mihai Moldovan <ionic@ionic.de>
AuthorDate: Fri Nov 3 16:15:05 2017 +0100
<span style='display:block; white-space:pre;color:#404040;'> net/nxcomp: backport upstream fix for X authentication cookie fetching; revbump.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Goes in tandem with the aqua/x2goclient change.
</span>---
net/nxcomp/Portfile | 6 ++-
...p-Auth.cpp-fix-X-cookie-fetch-with-launchd.diff | 47 ++++++++++++++++++++++
2 files changed, 52 insertions(+), 1 deletion(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/nxcomp/Portfile b/net/nxcomp/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index ca4e522..879e2ca 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/net/nxcomp/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/nxcomp/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -31,6 +31,8 @@ configure.cxxflags-append \
</span> -I${prefix}/include
if {${name} eq ${subport}} {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> depends_lib-append port:libpng \
path:lib/libjpeg.dylib:jpeg \
port:zlib \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -39,9 +41,11 @@ if {${name} eq ${subport}} {
</span> worksrcdir nx-libs-${version}/nxcomp
if {${os.major} < 10} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- patchfiles patch-nxcomp_cp-compat-for-10.5-.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles patch-nxcomp_cp-compat-for-10.5-.diff
</span> }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append patch-nxcomp-Auth.cpp-fix-X-cookie-fetch-with-launchd.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> livecheck.url [lindex ${master_sites} 0]
livecheck.regex nx-libs-(\[0-9\]+(\\.\[0-9\]+)+(-\[0-9\]+)?)-lite
} else {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/nxcomp/files/patch-nxcomp-Auth.cpp-fix-X-cookie-fetch-with-launchd.diff b/net/nxcomp/files/patch-nxcomp-Auth.cpp-fix-X-cookie-fetch-with-launchd.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..03b718c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/nxcomp/files/patch-nxcomp-Auth.cpp-fix-X-cookie-fetch-with-launchd.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,47 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Auth.cpp.old 2017-11-03 15:34:07.000000000 +0100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Auth.cpp 2017-11-03 15:35:12.000000000 +0100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -267,11 +267,33 @@ int Auth::getCookie()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ //
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ char line[DEFAULT_STRING_LIMIT];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ FILE *data = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ int result = -1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (strncmp(display_, "localhost:", 10) == 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ snprintf(line, DEFAULT_STRING_LIMIT, "unix:%s", display_ + 10);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ else if ((0 == strncasecmp(display_, "/tmp/launch", 11)) || (0 == strncasecmp(display_, "/private/tmp/com.apple.launchd", 30)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ /*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * Launchd socket support, mostly for OS X, but maybe also other BSD derivates.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ const char *separator = strrchr(display_, ':');
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if ((NULL == separator) || (!isdigit(*(separator + 1))))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ #ifdef PANIC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ *logofs << "Auth: PANIC! Unable to find separating colon character '"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ << "in launchd socket path '" << display_
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ << "'.\n" << logofs_flush;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ goto AuthGetCookieResult;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ snprintf(line, DEFAULT_STRING_LIMIT, "unix:%s", separator + 1);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ snprintf(line, DEFAULT_STRING_LIMIT, "%.200s", display_);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -304,9 +326,7 @@ int Auth::getCookie()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // implementation.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ //
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- FILE *data = Popen((char *const *) parameters, "r");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- int result = -1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ data = Popen((char *const *) parameters, "r");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (data == NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span></pre><pre style='margin:0'>
</pre>