Posted to tcl by kostix at Mon Jun 02 22:36:26 GMT 2008view raw

  1. proc rand num {
  2. set fd [open "| openssl rand $num"]
  3. fconfigure $fd -translation binary
  4. set data [read $fd]
  5. close $fd
  6. binary scan $data H* hex
  7. if {[string length $hex] != 2 * $num} {
  8. error "HEX: $hex, data len: [string length $data]"
  9. }
  10. }
  11.  
  12. while 1 { rand 4 }
  13.