> I've attached a possible patch for this issue, against the 3.5.1 source
tree.
I guess that you are already using Python 3.5.1 which uses getrandom(). You should try to confirm using strace.
I updated your patch. I replaced "#if defined(__sun__)" with "#ifdef sun", since "#ifdef sun" looks more common in the Python code base, and I never saw "#if defined(__sun__)" in the Python code base.
I also avoided the new len variable, I reused the n variable.
I don't have Solaris, so I cannot test. I didn't find getrandom() manual page neither, I only found this blog post which doesn't mention the 1024 bytes limitation on Solaris:
https://blogs.oracle.com/darren/entry/solaris_new_system_calls_getentropy |