@Override
 public SocketAddress getLocalAddress() throws IOException {
   synchronized (stateLock) {
     if (!isOpen()) throw new ClosedChannelException();
     // Perform security check before returning address
     return Net.getRevealedLocalAddress(localAddress);
   }
 }