code: func (runner *runner) checkRuleUsingCheck(args []string) (bool, error) {
  	ctx, cancel := context.WithTimeout(context.Background(), 5*time.Minute)
  	defer cancel()
  
  	out, err := runner.runContext(ctx, opCheckRule, args)
  	if ctx.Err() == context.DeadlineExceeded {
  		return false, fmt.Errorf("timed out while checking rules")
  	}
  	if err == nil {
  		return true, nil
  	}
  	if ee, ok := err.(utilexec.ExitError); ok {
  		// iptables uses exit(1) to indicate a failure of the operation,
  		// as compared to a malformed commandline, for example.
  		if ee.Exited() && ee.ExitStatus() == 1 {
  			return false, nil
  		}
  	}
  	return false, fmt.Errorf("error checking rule: %v: %s", err, out)
  }
docs: // Executes the rule check using the "-C" flag