<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/f9b7e0da3919ceb09ca2da8c3bac2aec125fc227">https://github.com/macports/macports-legacy-support/commit/f9b7e0da3919ceb09ca2da8c3bac2aec125fc227</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit f9b7e0da3919ceb09ca2da8c3bac2aec125fc227
</span>Author: Fred Wright <fw@fwright.net>
AuthorDate: Sun May 18 00:34:54 2025 -0700

<span style='display:block; white-space:pre;color:#404040;'>    test_arc4random: Fix verbosity.
</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;'>    Output as expected.
</span><span style='display:block; white-space:pre;color:#404040;'>    "Passes" on all platforms.
</span>---
 test/test_arc4random.c | 33 ++++++++++++++++++++-------------
 1 file changed, 20 insertions(+), 13 deletions(-)

<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 724d6f7..b62938b 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,12 +1,18 @@
</span> /*
  * Simple test harness and benchmark for MT Arc4Random
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * Note that this is almost entirely just a benchmark, and not an actual
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * test of the randomness of the result, which would be complicated.  The
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * only thing really being "tested" is that the function can be called.
</span>  */
<span style='display:block; white-space:pre;background:#e0ffe0;'>+#include <errno.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#include <fcntl.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#include <libgen.h>
</span> #include <stdint.h>
 #include <stdio.h>
 #include <stdlib.h>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#include <errno.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#include <string.h>
</span> #include <unistd.h>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#include <fcntl.h>
</span> 
 /*
  * Performance counter access.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -25,7 +31,6 @@ static inline uint64_t sys_cpu_timestamp(void)
</span> 
 #elif defined(__x86_64__)
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> static inline uint64_t sys_cpu_timestamp(void)
 {
     uint64_t res;
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -51,7 +56,7 @@ static inline uint64_t sys_cpu_timestamp(void)
</span>  * Generate 'siz' byte RNG in a tight loop and provide averages.
  */
 static void
<span style='display:block; white-space:pre;background:#ffe0e0;'>-bench(int fd, size_t siz, size_t niter)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bench(int fd, size_t siz, size_t niter, int verbose)
</span> {
     size_t j;
     uint8_t *buf = malloc(siz);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -79,36 +84,38 @@ bench(int fd, size_t siz, size_t niter)
</span> 
     double speedup = ss / sa;
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    printf("%6lu, %9.4f,\t%9.4f,\t%6.2f\n", siz, sa, ss, speedup);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if (verbose) printf("%6lu,\t%9.4f,\t%9.4f,\t%6.2f\n", siz, sa, ss, speedup);
</span> 
     free(buf);
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> #define NITER       8192
 
 int
<span style='display:block; white-space:pre;background:#ffe0e0;'>-main()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+main(int argc, char *argv[])
</span> {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+  int verbose = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  char *progname = basename(argv[0]);
</span>   int i;
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+  if (argc > 1 && !strcmp(argv[1], "-v")) verbose = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  if (verbose) printf("%s started\n", progname);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>   int fd = open("/dev/urandom", O_RDONLY);
 
   int args[]  = { 16, 32, 64, 256, 512 };
   int nargs = 5;
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-  printf("size,      arc4rand,\tsysrand,\tspeed-up\n");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  if (verbose) printf("  size,\t arc4rand,\t  sysrand,\tspeedup\n");
</span>   for (i = 0; i < nargs; ++i) {
     int z = args[i];
     if (z <= 0) continue;
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    bench(fd, z, NITER);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    bench(fd, z, NITER, verbose);
</span>   }
 
   close(fd);
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+  printf("%s completed.\n", progname);
</span>   return 0;
 }
<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;'>-/* EOF */
</span></pre><pre style='margin:0'>

</pre>