docs: def rule_list(env, securitygroup_id, sortby):
      """List security group rules."""
  
      mgr = SoftLayer.NetworkManager(env.client)
  
      table = formatting.Table(COLUMNS)
      table.sortby = sortby
  
      rules = mgr.list_securitygroup_rules(securitygroup_id)
      for rule in rules:
          port_min = rule.get('portRangeMin')
          port_max = rule.get('portRangeMax')
          if port_min is None:
              port_min = formatting.blank()
          if port_max is None:
              port_max = formatting.blank()
  
          table.add_row([
              rule['id'],
              rule.get('remoteIp') or formatting.blank(),
              rule.get('remoteGroupId') or formatting.blank(),
              rule['direction'],
              rule.get('ethertype') or formatting.blank(),
              port_min,
              port_max,
              rule.get('protocol') or formatting.blank(),
              rule.get('createDate') or formatting.blank(),
              rule.get('modifyDate') or formatting.blank()
          ])
  
      env.fout(table)