Skip to content
This repository has been archived by the owner on Aug 30, 2023. It is now read-only.

Commit

Permalink
gofmt + make docs
Browse files Browse the repository at this point in the history
  • Loading branch information
vaerh committed Jan 22, 2023
1 parent 2c2f490 commit 3c2df3a
Show file tree
Hide file tree
Showing 6 changed files with 119 additions and 47 deletions.
46 changes: 0 additions & 46 deletions CHANGELOG.md

This file was deleted.

1 change: 1 addition & 0 deletions docs/resources/firewall_filter.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
- `dst_port` (String) List of destination port numbers or port number ranges.
- `fragment` (Boolean) Matches fragmented packets. First (starting) fragment does not count. If connection tracking is enabled there will be no fragments as system automatically assembles every packet
- `hotspot` (String) Matches packets received from HotSpot clients against various HotSpot matchers.
- `hw_offload` (Boolean) Connection offloading for Fasttrack.
- `icmp_options` (String) Matches ICMP type: code fields.
- `in_bridge_port` (String) Actual interface the packet has entered the router if the incoming interface is a bridge. Works only if use-ip-firewall is enabled in bridge settings.
- `in_bridge_port_list` (String) Set of interfaces defined in interface list. Works the same as in-bridge-port.
Expand Down
34 changes: 34 additions & 0 deletions docs/resources/ipv6_address.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# routeros_ipv6_address (Resource)




<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `interface` (String) Name of the interface.

### Optional

- `___id___` (Number) <em>Resource ID type (.id / name). This is an internal service field, setting a value is not required.</em>
- `___path___` (String) <em>Resource path for CRUD operations. This is an internal service field, setting a value is not required.</em>
- `address` (String) IPv6 address. Using the eui_64 and from_pool options can transform the original address! [See docs](https://wiki.mikrotik.com/wiki/Manual:IPv6/Address#Properties)
- `advertise` (Boolean) Whether to enable stateless address configuration. The prefix of that address is automatically advertised to hosts using ICMPv6 protocol. The option is set by default for addresses with prefix length 64.
- `comment` (String)
- `disabled` (Boolean)
- `eui_64` (Boolean) Whether to calculate EUI-64 address and use it as last 64 bits of the IPv6 address.
- `from_pool` (String) Name of the pool from which prefix will be taken to construct IPv6 address taking last part of the address from address property.
- `no_dad` (Boolean) If set indicates that address is anycast address and Duplicate Address Detection should not be performed.

### Read-Only

- `actual_interface` (String) Name of the actual interface the logical one is bound to.
- `dynamic` (Boolean) Configuration item created by software, not by management interface. It is not exported, and cannot be directly modified.
- `global` (Boolean) Whether address is global.
- `id` (String) The ID of this resource.
- `invalid` (Boolean)
- `link_local` (Boolean) Whether address is link local.


82 changes: 82 additions & 0 deletions docs/resources/ipv6_firewall_filter.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
# routeros_ipv6_firewall_filter (Resource)




<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `action` (String) Action to take if a packet is matched by the rule
- `chain` (String) Specifies to which chain rule will be added. If the input does not match the name of an already defined chain, a new chain will be created.

### Optional

- `___id___` (Number) <em>Resource ID type (.id / name). This is an internal service field, setting a value is not required.</em>
- `___path___` (String) <em>Resource path for CRUD operations. This is an internal service field, setting a value is not required.</em>
- `address_list_timeout` (String) Time interval after which the address will be removed from the address list specified by address-list parameter. Used in conjunction with add-dst-to-address-list or add-src-to-address-list actions.
- `comment` (String)
- `connection_bytes` (String) Matches packets only if a given amount of bytes has been transfered through the particular connection.
- `connection_limit` (String) Matches connections per address or address block after given value is reached. Should be used together with connection-state=new and/or with tcp-flags=syn because matcher is very resource intensive.
- `connection_mark` (String) Matches packets marked via mangle facility with particular connection mark. If no-mark is set, rule will match any unmarked connection.
- `connection_rate` (String) Connection Rate is a firewall matcher that allow to capture traffic based on present speed of the connection (0..4294967295).
- `connection_state` (String) Interprets the connection tracking analysis data for a particular packet.
- `connection_type` (String) Matches packets from related connections based on information from their connection tracking helpers.
- `content` (String) Match packets that contain specified text.
- `disabled` (Boolean)
- `dscp` (Number) Matches DSCP IP header field.
- `dst_address` (String) Matches packets which destination is equal to specified IP or falls into specified IP range.
- `dst_address_list` (String) Matches destination address of a packet against user-defined address list.
- `dst_address_type` (String) Matches destination address type.
- `dst_limit` (String) Matches packets until a given rate is exceeded.
- `dst_port` (String) List of destination port numbers or port number ranges.
- `headers` (String) Extension headers. Look at the Extras tab in the v6 filter rules.
- `hop_limit` (String) IPv6 TTL. Look at the Extras tab in the v6 filter rules.
- `icmp_options` (String) Matches ICMP type: code fields.
- `in_bridge_port` (String) Actual interface the packet has entered the router if the incoming interface is a bridge. Works only if use-ip-firewall is enabled in bridge settings.
- `in_bridge_port_list` (String) Set of interfaces defined in interface list. Works the same as in-bridge-port.
- `in_interface` (String) Interface the packet has entered the router.
- `in_interface_list` (String) Set of interfaces defined in interface list. Works the same as in-interface.
- `ingress_priority` (Number) Matches the priority of an ingress packet. Priority may be derived from VLAN, WMM, DSCP, or MPLS EXP bit.
- `ipsec_policy` (String) Matches the policy used by IPsec. Value is written in the following format: direction, policy.
- `jump_target` (String) Name of the target chain to jump to. Applicable only if action=jump.
- `limit` (String) Matches packets up to a limited rate (packet rate or bit rate). A rule using this matcher will match until this limit is reached. Parameters are written in the following format: rate[/time],burst:mode.
- `log` (Boolean) Add a message to the system log.
- `log_prefix` (String) Adds specified text at the beginning of every log message. Applicable if action=log or log=yes configured.
- `nth` (String) Matches every nth packet: nth=2,1 rule will match every first packet of 2, hence, 50% of all the traffic that is matched by the rule
- `out_bridge_port` (String) Actual interface the packet is leaving the router if the outgoing interface is a bridge. Works only if use-ip-firewall is enabled in bridge settings.
- `out_bridge_port_list` (String) Set of interfaces defined in interface list. Works the same as out-bridge-port.
- `out_interface` (String) Interface the packet is leaving the router.
- `out_interface_list` (String) Set of interfaces defined in interface list. Works the same as out-interface.
- `packet_mark` (String) Matches packets marked via mangle facility with particular packet mark. If no-mark is set, the rule will match any unmarked packet.
- `packet_size` (String) Matches packets of specified size or size range in bytes.
- `per_connection_classifier` (String) PCC matcher allows dividing traffic into equal streams with the ability to keep packets with a specific set of options in one particular stream.
- `place_before` (String) Before which position the rule will be inserted.
> Please check the effect of this option, as it does not work as you think!
> Best way to use in conjunction with a data source. See [example](../data-sources/firewall.md#example-usage).
- `port` (String) Matches if any (source or destination) port matches the specified list of ports or port ranges. Applicable only if protocol is TCP or UDP
- `priority` (Number) Matches the packet's priority after a new priority has been set. Priority may be derived from VLAN, WMM, DSCP, MPLS EXP bit, or from the priority that has been set using the set-priority action.
- `protocol` (String) Matches particular IP protocol specified by protocol name or number.
- `random` (Number) Matches packets randomly with a given probability.
- `reject_with` (String) Specifies ICMP error to be sent back if the packet is rejected. Applicable if action=reject.
- `routing_mark` (String) Matches packets marked by mangle facility with particular routing mark.
- `src_address` (String) Matches packets which source is equal to specified IP or falls into a specified IP range.
- `src_address_list` (String) Matches source address of a packet against user-defined address list.
- `src_address_type` (String) Matches source address type.
- `src_mac_address` (String) Matches source MAC address of the packet.
- `src_port` (String) List of source ports and ranges of source ports. Applicable only if a protocol is TCP or UDP.
- `tcp_flags` (String) Matches specified TCP flags.
- `tcp_mss` (String) Matches TCP MSS value of an IP packet.
- `time` (String) Allows to create a filter based on the packets' arrival time and date or, for locally generated packets, departure time and date.
- `tls_host` (String) Allows matching HTTPS traffic based on TLS SNI hostname.

### Read-Only

- `bytes` (Number) The total amount of bytes matched by the rule.
- `dynamic` (Boolean) Configuration item created by software, not by management interface. It is not exported, and cannot be directly modified.
- `id` (String) The ID of this resource.
- `invalid` (Boolean)
- `packets` (Number) The total amount of packets matched by the rule.


1 change: 1 addition & 0 deletions routeros/resource_default_actions.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"context"
"errors"
"fmt"

"github.com/hashicorp/terraform-plugin-log/tflog"
"github.com/hashicorp/terraform-plugin-sdk/v2/diag"
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
Expand Down
2 changes: 1 addition & 1 deletion routeros/resource_ipv6_address.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ func ResourceIPv6Address() *schema.Resource {
Type: schema.TypeString,
Optional: true,
Computed: true,
Description: "IPv6 address. Using the eui_64 and from_pool options can transform the original address!" +
Description: "IPv6 address. Using the eui_64 and from_pool options can transform the original address! " +
"[See docs](https://wiki.mikrotik.com/wiki/Manual:IPv6/Address#Properties)",
AtLeastOneOf: []string{"address", "from_pool"},
DiffSuppressFunc: func(k, old, new string, d *schema.ResourceData) bool {
Expand Down

0 comments on commit 3c2df3a

Please sign in to comment.