<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/4fb5266e70ab078aae9c25432960526ae5df1b9c">https://github.com/macports/macports-legacy-support/commit/4fb5266e70ab078aae9c25432960526ae5df1b9c</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 4fb5266e70ab078aae9c25432960526ae5df1b9c
</span>Author: Fred Wright <fw@fwright.net>
AuthorDate: Mon Jun 24 18:17:48 2024 -0700
<span style='display:block; white-space:pre;color:#404040;'> Clean up arc4random support.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> This makes the proper SDK/lib split for the feature flag.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> With a proper stdlib.h wrapper, there's no need for a private
</span><span style='display:block; white-space:pre;color:#404040;'> arc4random.h, nor is there any need to test the feature flag in the
</span><span style='display:block; white-space:pre;color:#404040;'> test.
</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;'> Tests pass on all platforms, including mismatched SDK cases.
</span>---
include/MacportsLegacySupport.h | 3 ++-
include/stdlib.h | 8 ++++---
src/arc4random.c | 6 ++---
src/arc4random.h | 49 -----------------------------------------
test/test_arc4random.c | 7 +-----
5 files changed, 10 insertions(+), 63 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/include/MacportsLegacySupport.h b/include/MacportsLegacySupport.h
</span><span style='display:block; white-space:pre;color:#808080;'>index 6b096b7..e10bdeb 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/include/MacportsLegacySupport.h
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/include/MacportsLegacySupport.h
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -171,7 +171,8 @@
</span> #define __MP_LEGACY_SUPPORT_LLROUND__ (__MPLS_TARGET_OSVER < 1070)
/* arc4random */
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#define __MP_LEGACY_SUPPORT_ARC4RANDOM__ (__MPLS_TARGET_OSVER < 1070)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define __MPLS_SDK_SUPPORT_ARC4RANDOM__ (__MPLS_SDK_MAJOR < 1070)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define __MPLS_LIB_SUPPORT_ARC4RANDOM__ (__MPLS_TARGET_OSVER < 1070)
</span>
/* getentropy */
#define __MP_LEGACY_SUPPORT_GETENTROPY__ (__MPLS_TARGET_OSVER < 101200)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/include/stdlib.h b/include/stdlib.h
</span><span style='display:block; white-space:pre;color:#808080;'>index b3b8f43..b28e743 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/include/stdlib.h
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/include/stdlib.h
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,3 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> /*
* Copyright (c) 2018 Chris Jones <jonesc@macports.org>
*
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -21,6 +20,9 @@
</span> /* MP support header */
#include "MacportsLegacySupport.h"
<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> /* Include the primary system stdlib.h */
#include_next <stdlib.h>
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -48,7 +50,7 @@ __MP__END_DECLS
</span> #endif /* __MP_LEGACY_SUPPORT_POSIX_MEMALIGN__ */
/* arc4random */
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if __MP_LEGACY_SUPPORT_ARC4RANDOM__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if __MPLS_SDK_SUPPORT_ARC4RANDOM__
</span>
#ifndef _SIZE_T
#define _SIZE_T
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -74,6 +76,6 @@ __MP__BEGIN_DECLS
</span> extern void arc4random_buf( void* buf, size_t n );
__MP__END_DECLS
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#endif /* __MP_LEGACY_SUPPORT_ARC4RANDOM__ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#endif /* __MPLS_SDK_SUPPORT_ARC4RANDOM__ */
</span>
#endif /* _MACPORTS_STDLIB_H_ */
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/arc4random.c b/src/arc4random.c
</span><span style='display:block; white-space:pre;color:#808080;'>index dc00b5b..da48824 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/arc4random.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/arc4random.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -20,7 +20,7 @@
</span>
// MP support header
#include "MacportsLegacySupport.h"
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if __MP_LEGACY_SUPPORT_ARC4RANDOM__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if __MPLS_LIB_SUPPORT_ARC4RANDOM__
</span>
/*
* ChaCha based random number generator from OpenBSD.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -281,8 +281,6 @@ _chacha_encrypt_bytes(chacha_ctx *x,const u8 *m,u8 *c,u32 bytes)
</span>
#define minimum(a, b) ((a) < (b) ? (a) : (b))
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#include "arc4random.h"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span>
static inline void
_rs_init(rand_state* st, u8 *buf, size_t n)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -537,4 +535,4 @@ arc4random_uniform(uint32_t upper_bound)
</span> }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#endif /* __MP_LEGACY_SUPPORT_ARC4RANDOM__ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#endif /* __MPLS_LIB_SUPPORT_ARC4RANDOM__ */
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/arc4random.h b/src/arc4random.h
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index ad6d43a..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/arc4random.h
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,49 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-/*
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * Copyright (c) 1996, David Mazieres <dm@uun.org>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * Copyright (c) 2008, Damien Miller <djm@openbsd.org>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * Copyright (c) 2013, Markus Friedl <markus@openbsd.org>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * Copyright (c) 2014, Theo de Raadt <deraadt@openbsd.org>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * Copyright (c) 2015, Sudhi Herle <sudhi@herle.net>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * Permission to use, copy, modify, and distribute this software for any
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * purpose with or without fee is hereby granted, provided that the above
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * copyright notice and this permission notice appear in all copies.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- *
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#ifndef ___ARC4RANDOM_H_5000666_1462841354__
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#define ___ARC4RANDOM_H_5000666_1462841354__ 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* Provide C linkage for symbols declared here .. */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#ifdef __cplusplus
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-extern "C" {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#endif /* __cplusplus */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#include <stdint.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#include <sys/types.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-/*
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * Generate and return a uniformly random 32-bit quantity with an
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * upper bound of 'upper_bound'
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-extern uint32_t arc4random_uniform(uint32_t upper_bound);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-/*
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * Generate 'n' random bytes and put them in 'buf'.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-extern void arc4random_buf(void* buf, size_t n);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#ifdef __cplusplus
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#endif /* __cplusplus */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#endif /* ! ___ARC4RANDOM_H_5000666_1462841354__ */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-/* EOF */
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/test/test_arc4random.c b/test/test_arc4random.c
</span><span style='display:block; white-space:pre;color:#808080;'>index c92bb66..5399e90 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/test/test_arc4random.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/test/test_arc4random.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,18 +1,13 @@
</span> /*
* Simple test harness and benchmark for MT Arc4Random
*/
<span style='display:block; white-space:pre;background:#e0ffe0;'>+#include <stdint.h>
</span> #include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <unistd.h>
#include <fcntl.h>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#if __MP_LEGACY_SUPPORT_ARC4RANDOM__
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#include "../src/arc4random.h"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#include <stdint.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> /*
* Performance counter access.
*
</pre><pre style='margin:0'>
</pre>