Aha, so you're implying you totally understand sslfile. Congrats, that's impressive! ;) Even though I wrote essentially all of it I still can't say I understand it all the time.
Well, I don't know that total understanding is the case, but I understand the whole module much more clearly after digging through it.
If the declaration was "function(int:string) random = 0;" I'd agree with you. But now I can't find any place where it's explicitly set to zero. Where do you look?
I don't remember offhand; though I'm fairly certain that was the case at some point. The reality is that the current context doesn't make that declaration, so perhaps it was unintentional. Either way, I tend to think that it belongs in context.
Besides your kludge, I can't even find a place where any code tests its value. (Granted, I haven't looked very closely in Roxen or ChiliMoon or any of the other big TLS apps - searching for "random" in them trigs a bit too many false hits.)
That's the problem. The code just assumes it's been set to a function. I'm pretty sure the problem was that it was throwing errors because 0!=function. I can't think of a real reason to make that function configurable, unless you're worried about performance of randomness vs. quality of randomness.
Bill