<div dir="auto">No, ideally we should target 10+ these days as 9 is out of support. But even building for 9+ should be fine here.</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat 26 Feb 2022, 19:22 Jeffrey Walton, <<a href="mailto:noloader@gmail.com">noloader@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Sat, Feb 26, 2022 at 2:14 PM Jeffrey Walton <<a href="mailto:noloader@gmail.com" target="_blank" rel="noreferrer">noloader@gmail.com</a>> wrote:<br>
><br>
> On Fri, Feb 25, 2022 at 10:52 AM Ben Walton <<a href="mailto:bwalton@opencsw.org" target="_blank" rel="noreferrer">bwalton@opencsw.org</a>> wrote:<br>
> ><br>
> > On Fri 25 Feb 2022, 11:39 Jeffrey Walton via users, <<a href="mailto:users@lists.opencsw.org" target="_blank" rel="noreferrer">users@lists.opencsw.org</a>> wrote:<br>
> >><br>
> >> I was looking at the libexpat recipe again. This kind of jumps out<br>
> >> from <a href="https://sourceforge.net/p/gar/code/HEAD/tree/csw/mgar/pkg/libexpat1/trunk/Makefile#l42" rel="noreferrer noreferrer" target="_blank">https://sourceforge.net/p/gar/code/HEAD/tree/csw/mgar/pkg/libexpat1/trunk/Makefile#l42</a>:<br>
> >><br>
> >> # No high-entropy random in old Solaris versions<br>
> >> EXTRA_CPPFLAGS += -DXML_POOR_ENTROPY<br>
> >><br>
> >> Solaris has /dev/urandom. It meets requirements. As far as I know,<br>
> >> even the earlier versions of the device were sufficient for<br>
> >> cryptographic needs. It may be time to revisit that define.<br>
> ><br>
> > Yeah, I'd drop it and see that it passes the test suite. Not sure how far back you'd need to go os and hardware worse to still need it, but arms pretty ancient to me.<br>
><br>
> Here's some more reading on XML_POOR_ENTROPY:<br>
> <a href="https://github.com/libexpat/libexpat/issues/172" rel="noreferrer noreferrer" target="_blank">https://github.com/libexpat/libexpat/issues/172</a>.<br>
><br>
> It looks like libexpat needs a good random source for some hash<br>
> tables. Or more specifically, to avoid collisions due to a poor<br>
> entropy source. If the entropy source produces collisions, then it is<br>
> considered poor.<br>
><br>
> I personally think this problem should probably be addressed<br>
> differently. Instead of asking users to evaluate their entropy source,<br>
> I think libexpat should obtain a uniform distribution via something<br>
> like operating system random source + SipHash. SipHash should produce<br>
> a uniform distribution and it only requires entropy once to key the<br>
> algorithm. It does not need a constant stream of bytes.<br>
><br>
> Getting back to libexpat, it looks like /dev/urandom is sufficient<br>
> nowadays. Also see<br>
> <a href="https://github.com/libexpat/libexpat/blob/master/expat/lib/xmlparse.c#L122" rel="noreferrer noreferrer" target="_blank">https://github.com/libexpat/libexpat/blob/master/expat/lib/xmlparse.c#L122</a>.<br>
> You would get into trouble if the /dev/urandom device was missing.<br>
<br>
Ok, here's the missing piece. According to<br>
<a href="https://docs.oracle.com/cd/E88353_01/html/E37851/urandom-4d.html" rel="noreferrer noreferrer" target="_blank">https://docs.oracle.com/cd/E88353_01/html/E37851/urandom-4d.html</a> ,<br>
/dev/random and /dev/urandom was added at Solaris 9 with a patch for<br>
Solaris 8.<br>
<br>
I'm not sure how that affects the define. Does OpenCSW support Solaris<br>
7 and below?<br>
<br>
Jeff<br>
</blockquote></div>