code: func (daemon *Daemon) ContainerExecResize(name string, height, width int) error {
  	ec, err := daemon.getExecConfig(name)
  	if err != nil {
  		return err
  	}
  	// TODO: the timeout is hardcoded here, it would be more flexible to make it
  	// a parameter in resize request context, which would need API changes.
  	timeout := 10 * time.Second
  	select {
  	case <-ec.Started:
  		return daemon.containerd.ResizeTerminal(context.Background(), ec.ContainerID, ec.ID, width, height)
  	case <-time.After(timeout):
  		return fmt.Errorf("timeout waiting for exec session ready")
  	}
  }
docs: // ContainerExecResize changes the size of the TTY of the process
  // running in the exec with the given name to the given height and
  // width.