<pre style='margin:0'>
Christopher Nielsen (mascguy) pushed a commit to branch master
in repository macports-legacy-support.

</pre>
<p><a href="https://github.com/macports/macports-legacy-support/commit/5e800bdeb7c907237d18c35b66c14cb8eeb6ae47">https://github.com/macports/macports-legacy-support/commit/5e800bdeb7c907237d18c35b66c14cb8eeb6ae47</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 5e800bdeb7c907237d18c35b66c14cb8eeb6ae47
</span>Author: Fred Wright <fw@fwright.net>
AuthorDate: Sat Jan 18 15:27:45 2025 -0800

<span style='display:block; white-space:pre;color:#404040;'>    Add net/if_utun.h for <10.6.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    This makes the 10.6 net/if_utun.h available in <10.6, though the
</span><span style='display:block; white-space:pre;color:#404040;'>    relevant features may or may not actually work in <10.6.  This may
</span><span style='display:block; white-space:pre;color:#404040;'>    simply replace build-time errors with runtime errors, though that's
</span><span style='display:block; white-space:pre;color:#404040;'>    sometimes a useful change.
</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/70231
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    TESTED:
</span><span style='display:block; white-space:pre;color:#404040;'>    New test passes on all platforms with this change.
</span>---
 .../_macports_extras/tiger_leopard/net/if_utun.h   | 63 ++++++++++++++++++++++
 include/net/if_utun.h                              | 37 +++++++++++++
 2 files changed, 100 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/include/_macports_extras/tiger_leopard/net/if_utun.h b/include/_macports_extras/tiger_leopard/net/if_utun.h
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..67947cf
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/include/_macports_extras/tiger_leopard/net/if_utun.h
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,63 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * Copyright (c) 2008-2009 Apple Inc. All rights reserved.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * This file contains Original Code and/or Modifications of Original Code
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * as defined in and that are subject to the Apple Public Source License
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * Version 2.0 (the 'License'). You may not use this file except in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * compliance with the License. The rights granted to you under the License
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * may not be used to create, or enable the creation or redistribution of,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * unlawful or unlicensed copies of an Apple operating system, or to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * circumvent, violate, or enable the circumvention or violation of, any
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * terms of an Apple operating system software license agreement.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * Please obtain a copy of the License at
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * http://www.opensource.apple.com/apsl/ and read it before using this file.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * The Original Code and all software distributed under the License are
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * Please see the License for the specific language governing rights and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * limitations under the License.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
</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;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#ifndef    _NET_IF_UTUN_H_
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define    _NET_IF_UTUN_H_
</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;'>+/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * Name registered by the utun kernel control
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define UTUN_CONTROL_NAME "com.apple.net.utun_control"
</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;'>+ * Socket option names to manage utun
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define UTUN_OPT_FLAGS                                     1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define UTUN_OPT_IFNAME                                    2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define UTUN_OPT_EXT_IFDATA_STATS          3       /* get|set (type int) */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define UTUN_OPT_INC_IFDATA_STATS_IN       4       /* set to increment stat counters (type struct utun_stats_param) */ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define UTUN_OPT_INC_IFDATA_STATS_OUT      5       /* set to increment stat counters (type struct utun_stats_param) */ 
</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;'>+ * Flags for by UTUN_OPT_FLAGS 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define    UTUN_FLAGS_NO_OUTPUT            0x0001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define UTUN_FLAGS_NO_INPUT                        0x0002
</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;'>+ * utun stats parameter structure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+struct utun_stats_param {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        u_int64_t       utsp_packets;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        u_int64_t       utsp_bytes;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        u_int64_t       utsp_errors;
</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;'>+#endif
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/include/net/if_utun.h b/include/net/if_utun.h
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..ae29dc5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/include/net/if_utun.h
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,37 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * Copyright (c) 2025 Frederick H. G. Wright II <fw@fwright.net>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * Permission to use, copy, modify, and distribute this software for any
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * purpose with or without fee is hereby granted, provided that the above
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * copyright notice and this permission notice appear in all copies.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
</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;'>+/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * This is a wrapper header for net/if_utun.h, to handle its absence in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * the <10.6 SDKs.  In those cases, we provide a substitute; otherwise we
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * just pass through the SDK header.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * This makes no representation as to whether the features referenced by
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * the definitions in this header actually work in <10.6.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * We don't bother with a guard macro, since all we do here is include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * other headers which have their own guard macros, and we don't define
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * anything here.
</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;'>+/* Do our SDK-related setup */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#include <_macports_extras/sdkversion.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if defined(__MPLS_SDK_MAJOR) && __MPLS_SDK_MAJOR < 1060
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#include <_macports_extras/tiger_leopard/net/if_utun.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#include_next <net/if_utun.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#endif
</span></pre><pre style='margin:0'>

</pre>