WeBWorK::PG::SafeIOHandle - A restricted stand-in for IO::Handle, shared into the safe compartment.
Rserve blesses its connection socket as an IO::Handle and uses its print, flush, read, and close methods. If the IO::Handle package is shared directly, then all of its methods are exposed. In particular the new_from_fd method is exposed (in addition to other potentially dangerous methods such as new, fdopen, etc.) which allows a PG problem to wrap and read from or write to any file descriptor the process happens to have open. So instead this package is shared aliased as the IO::Handle package (via WWSafe::share_package_as) exposing only the necessary methods.