code: def allow_port(port, proto='tcp', direction='both'):
      '''
      Like allow_ports, but it will append to the
      existing entry instead of replacing it.
      Takes a single port instead of a list of ports.
  
      CLI Example:
  
      .. code-block:: bash
  
          salt '*' csf.allow_port 22 proto='tcp' direction='in'
      '''
  
      ports = get_ports(proto=proto, direction=direction)
      direction = direction.upper()
      _validate_direction_and_proto(direction, proto)
      directions = build_directions(direction)
      results = []
      for direction in directions:
          _ports = ports[direction]
          _ports.append(port)
          results += allow_ports(_ports, proto=proto, direction=direction)
      return resultf allow_port(port, proto='tcp', direction='both'):
      '''
      Like allow_ports, but it will append to the
      existing entry instead of replacing it.
      Takes a single port instead of a list of ports.
  
      CLI Example:
  
      .. code-block:: bash
  
          salt '*' csf.allow_port 22 proto='tcp' direction='in'
      '''
  
      ports = get_ports(proto=proto, direction=direction)
      direction = direction.upper()
      _validate_direction_and_proto(direction, proto)
      directions = build_directions(direction)
      results = []
      for direction in directions:
          _ports = ports[direction]
          _ports.append(port)
          results += allow_ports(_ports, proto=proto, direction=direction)
      return results
docs: Like allow_ports, but it will append to the
      existing entry instead of replacing it.
      Takes a single port instead of a list of ports.
  
      CLI Example:
  
      .. code-block:: bash
  
          salt '*' csf.allow_port 22 proto='tcp' direction='in'