Posted to tcl by colin at Wed Jul 23 12:19:00 GMT 2008view raw

  1. CODE:
  2.  
  3. package require tls
  4.  
  5. proc connected {sock args} {
  6. puts stderr "Connected: $args"
  7. while 1 {[puts stderr [gets $sock]]}
  8. }
  9. proc progress {args} {
  10. puts stderr "Progress: $args"
  11. }
  12.  
  13. tls::socket -server ::connected -command ::progress -ssl3 1 -ssl2 0 -tls1 1 8090
  14.  
  15. set var 0
  16. vwait var
  17.  
  18. OUTPUT:
  19. Connected: 127.0.0.1 45836
  20. Progress: info sock6 handshake start {before/accept initialization}
  21. Progress: info sock6 accept loop {before/accept initialization}
  22. Progress: info sock6 accept exit {SSLv3 read client hello B}
  23. Progress: error sock6 {wrong version number}
  24. error reading "sock6": software caused connection abort
  25. while executing
  26. "gets $sock"
  27. (procedure "::connected" line 3)
  28. invoked from within
  29. "::connected sock6 127.0.0.1 45836"
  30. ("uplevel" body line 1)
  31. invoked from within
  32. "uplevel #0 $callback"
  33. (procedure "tls::_accept" line 8)
  34. invoked from within
  35. "tls::_accept {-server 1 -command ::progress -ssl3 1 -ssl2 0 -tls1 1} ::connected sock6 127.0.0.1 45836"
  36.