summaryrefslogtreecommitdiffstats
path: root/tests/obj
diff options
context:
space:
mode:
Diffstat (limited to 'tests/obj')
-rw-r--r--tests/obj/counter-rule-bad-objref_err.t5
-rw-r--r--tests/obj/counter-rule_ok.t6
-rw-r--r--tests/obj/counter-update_ok.t6
-rw-r--r--tests/obj/counter-userdata_err.t3
-rw-r--r--tests/obj/counter-userdata_ok.t3
-rw-r--r--tests/obj/counter_ok.t3
-rw-r--r--tests/obj/cp-expect-no-timeout_err.t3
-rw-r--r--tests/obj/ct-expect-inet_ok.t3
-rw-r--r--tests/obj/ct-expect-ipv6_ok.t3
-rw-r--r--tests/obj/ct-expect-l3num-mismatch_err.t3
-rw-r--r--tests/obj/ct-expect-no-dport_err.t3
-rw-r--r--tests/obj/ct-expect-unknown_err.t3
-rw-r--r--tests/obj/ct-expect_ok.t3
-rw-r--r--tests/obj/ct-helper-no-l4proto_err.t3
-rw-r--r--tests/obj/ct-helper-no-name_err.t3
-rw-r--r--tests/obj/ct-helper_ok.t3
-rw-r--r--tests/obj/ct-timeout-no-l4proto_err.t3
-rw-r--r--tests/obj/ct-timeout_ok.t3
-rw-r--r--tests/obj/del-counter-twice_err.t7
-rw-r--r--tests/obj/del-counter_ok.t6
-rw-r--r--tests/obj/limit-bytes_ok.t3
-rw-r--r--tests/obj/limit-pkts_ok.t3
-rw-r--r--tests/obj/map-counter-bad_err.t6
-rw-r--r--tests/obj/map-counter_ok.t6
-rw-r--r--tests/obj/map-quota-bad_err.t6
-rw-r--r--tests/obj/max_err.t3
-rw-r--r--tests/obj/obj-no-name_err.t3
-rw-r--r--tests/obj/objref_enoent_err.t6
-rw-r--r--tests/obj/objref_no_name_err.t6
-rw-r--r--tests/obj/objref_no_type_err.t6
-rw-r--r--tests/obj/quota-bad-flags_err.t3
-rw-r--r--tests/obj/quota-consumed-overrun_err.t3
-rw-r--r--tests/obj/quota-consumed_ok.t3
-rw-r--r--tests/obj/quota-flags_ok.t3
-rw-r--r--tests/obj/quota-no-quota_err.t3
-rw-r--r--tests/obj/quota-only-consumed_err.t3
-rw-r--r--tests/obj/quota-update_ok.t6
-rw-r--r--tests/obj/quota_ok.t3
-rw-r--r--tests/obj/secmark-empty-ctx_err.t3
-rw-r--r--tests/obj/secmark-no-ctx_err.t3
-rw-r--r--tests/obj/synproxy_ok.t3
-rw-r--r--tests/obj/tunnel-bad-family_err.t3
-rw-r--r--tests/obj/tunnel-ipv4_ok.t3
-rw-r--r--tests/obj/tunnel-ipv6_ok.t3
-rw-r--r--tests/obj/tunnel-no-id_err.t3
-rw-r--r--tests/obj/tunnel-no-ip_err.t3
-rw-r--r--tests/obj/unspec_err.t3
47 files changed, 177 insertions, 0 deletions
diff --git a/tests/obj/counter-rule-bad-objref_err.t b/tests/obj/counter-rule-bad-objref_err.t
new file mode 100644
index 0000000..1a23c5f
--- /dev/null
+++ b/tests/obj/counter-rule-bad-objref_err.t
@@ -0,0 +1,5 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_counter("test", NULL, NULL, NULL, NULL);
+add_rule("test", "0x1", NULL, NULL, NULL);
+objref("2", "test", NULL, NULL, NULL);
+commit();
diff --git a/tests/obj/counter-rule_ok.t b/tests/obj/counter-rule_ok.t
new file mode 100644
index 0000000..48124b5
--- /dev/null
+++ b/tests/obj/counter-rule_ok.t
@@ -0,0 +1,6 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_basechain("test", "filter", "0", "0", NULL, NULL, "NF_ACCEPT", NULL, NULL, NULL, NULL, NULL, NULL);
+add_obj_counter("test", NULL, NULL, NULL, NULL);
+add_rule("test", "0x1", NULL, NULL, NULL);
+objref("1", "test", NULL, NULL, NULL);
+commit();
diff --git a/tests/obj/counter-update_ok.t b/tests/obj/counter-update_ok.t
new file mode 100644
index 0000000..889b7cc
--- /dev/null
+++ b/tests/obj/counter-update_ok.t
@@ -0,0 +1,6 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_counter("test", NULL, NULL, NULL, NULL);
+commit();
+set_table(NFPROTO_IPV4, "test");
+add_obj_counter("test", NULL, NULL, "100", "200");
+commit();
diff --git a/tests/obj/counter-userdata_err.t b/tests/obj/counter-userdata_err.t
new file mode 100644
index 0000000..85e02eb
--- /dev/null
+++ b/tests/obj/counter-userdata_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_counter("test", NULL, "000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", NULL, NULL);
+commit();
diff --git a/tests/obj/counter-userdata_ok.t b/tests/obj/counter-userdata_ok.t
new file mode 100644
index 0000000..3bc5d2e
--- /dev/null
+++ b/tests/obj/counter-userdata_ok.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_counter("test", NULL, "0123456789", NULL, NULL);
+commit();
diff --git a/tests/obj/counter_ok.t b/tests/obj/counter_ok.t
new file mode 100644
index 0000000..ba7ab19
--- /dev/null
+++ b/tests/obj/counter_ok.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_counter("test", NULL, NULL, NULL, NULL);
+commit();
diff --git a/tests/obj/cp-expect-no-timeout_err.t b/tests/obj/cp-expect-no-timeout_err.t
new file mode 100644
index 0000000..00a3dee
--- /dev/null
+++ b/tests/obj/cp-expect-no-timeout_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_ct_expect("test", NULL, NULL, "2", "6", "22", NULL, "10");
+commit();
diff --git a/tests/obj/ct-expect-inet_ok.t b/tests/obj/ct-expect-inet_ok.t
new file mode 100644
index 0000000..31835ea
--- /dev/null
+++ b/tests/obj/ct-expect-inet_ok.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_INET, "test", NULL, NULL, NULL);
+add_obj_ct_expect("test", NULL, NULL, "2", "6", "22", "100", "10");
+commit();
diff --git a/tests/obj/ct-expect-ipv6_ok.t b/tests/obj/ct-expect-ipv6_ok.t
new file mode 100644
index 0000000..a743df4
--- /dev/null
+++ b/tests/obj/ct-expect-ipv6_ok.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV6, "test", NULL, NULL, NULL);
+add_obj_ct_expect("test", NULL, NULL, "10", "6", "22", "100", "10");
+commit();
diff --git a/tests/obj/ct-expect-l3num-mismatch_err.t b/tests/obj/ct-expect-l3num-mismatch_err.t
new file mode 100644
index 0000000..4cebb63
--- /dev/null
+++ b/tests/obj/ct-expect-l3num-mismatch_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_ct_expect("test", NULL, NULL, "10", "6", "22", "100", "10");
+commit();
diff --git a/tests/obj/ct-expect-no-dport_err.t b/tests/obj/ct-expect-no-dport_err.t
new file mode 100644
index 0000000..1e8ffc8
--- /dev/null
+++ b/tests/obj/ct-expect-no-dport_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_ct_expect("test", NULL, NULL, "2", "6", NULL, "100", "10");
+commit();
diff --git a/tests/obj/ct-expect-unknown_err.t b/tests/obj/ct-expect-unknown_err.t
new file mode 100644
index 0000000..c3ab281
--- /dev/null
+++ b/tests/obj/ct-expect-unknown_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_ct_expect("test", NULL, NULL, "100", "6", "22", "100", "10");
+commit();
diff --git a/tests/obj/ct-expect_ok.t b/tests/obj/ct-expect_ok.t
new file mode 100644
index 0000000..c5219bb
--- /dev/null
+++ b/tests/obj/ct-expect_ok.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_ct_expect("test", NULL, NULL, "2", "6", "22", "100", "10");
+commit();
diff --git a/tests/obj/ct-helper-no-l4proto_err.t b/tests/obj/ct-helper-no-l4proto_err.t
new file mode 100644
index 0000000..297fd06
--- /dev/null
+++ b/tests/obj/ct-helper-no-l4proto_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_ct_helper("test", NULL, NULL, "ftp", "2", NULL);
+commit();
diff --git a/tests/obj/ct-helper-no-name_err.t b/tests/obj/ct-helper-no-name_err.t
new file mode 100644
index 0000000..90e0ede
--- /dev/null
+++ b/tests/obj/ct-helper-no-name_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_ct_helper("test", NULL, NULL, NULL, "2", "6");
+commit();
diff --git a/tests/obj/ct-helper_ok.t b/tests/obj/ct-helper_ok.t
new file mode 100644
index 0000000..8e00214
--- /dev/null
+++ b/tests/obj/ct-helper_ok.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_ct_helper("test", NULL, NULL, "ftp", "2", "6");
+commit();
diff --git a/tests/obj/ct-timeout-no-l4proto_err.t b/tests/obj/ct-timeout-no-l4proto_err.t
new file mode 100644
index 0000000..ec820b1
--- /dev/null
+++ b/tests/obj/ct-timeout-no-l4proto_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_ct_timeout("test", NULL, NULL, "2", NULL, { "10", "20", "30", "40", "50", "60", "70", "80", "90", "100", "110" });
+commit();
diff --git a/tests/obj/ct-timeout_ok.t b/tests/obj/ct-timeout_ok.t
new file mode 100644
index 0000000..30fa93b
--- /dev/null
+++ b/tests/obj/ct-timeout_ok.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_ct_timeout("test", NULL, NULL, "2", "6", { "10", "20", "30", "40", "50", "60", "70", "80", "90", "100", "110" });
+commit();
diff --git a/tests/obj/del-counter-twice_err.t b/tests/obj/del-counter-twice_err.t
new file mode 100644
index 0000000..61963be
--- /dev/null
+++ b/tests/obj/del-counter-twice_err.t
@@ -0,0 +1,7 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_counter("test", NULL, NULL, NULL, NULL);
+commit();
+set_table(NFPROTO_IPV4, "test");
+del_obj_unknown("test", NULL, NULL, "1");
+del_obj_unknown("test", NULL, NULL, "1");
+commit();
diff --git a/tests/obj/del-counter_ok.t b/tests/obj/del-counter_ok.t
new file mode 100644
index 0000000..4911cce
--- /dev/null
+++ b/tests/obj/del-counter_ok.t
@@ -0,0 +1,6 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_counter("test", NULL, NULL, NULL, NULL);
+commit();
+set_table(NFPROTO_IPV4, "test");
+del_obj_unknown("test", NULL, NULL, "1");
+commit();
diff --git a/tests/obj/limit-bytes_ok.t b/tests/obj/limit-bytes_ok.t
new file mode 100644
index 0000000..3bfd31d
--- /dev/null
+++ b/tests/obj/limit-bytes_ok.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_limit("test", NULL, NULL, "0x1000", "0x1", "0x5", "1", NULL);
+commit();
diff --git a/tests/obj/limit-pkts_ok.t b/tests/obj/limit-pkts_ok.t
new file mode 100644
index 0000000..b09167a
--- /dev/null
+++ b/tests/obj/limit-pkts_ok.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_limit("test", NULL, NULL, "0x1", "0x1", "0x1", "0", NULL);
+commit();
diff --git a/tests/obj/map-counter-bad_err.t b/tests/obj/map-counter-bad_err.t
new file mode 100644
index 0000000..2326b98
--- /dev/null
+++ b/tests/obj/map-counter-bad_err.t
@@ -0,0 +1,6 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_basechain("test", "filter", "0", "0", NULL, NULL, "NF_ACCEPT", NULL, NULL, NULL, NULL, NULL, NULL);
+add_obj_quota("test", NULL, NULL, "1000", NULL, NULL);
+add_set("test", "0x40", "2", "13", NULL, NULL, NULL, NULL, NULL, "0x1", NULL, NULL, "1", NULL, NULL);
+add_elem("0016", NULL, NULL, NULL, NULL, NULL, NULL, NULL, "test", NULL);
+commit();
diff --git a/tests/obj/map-counter_ok.t b/tests/obj/map-counter_ok.t
new file mode 100644
index 0000000..b869431
--- /dev/null
+++ b/tests/obj/map-counter_ok.t
@@ -0,0 +1,6 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_basechain("test", "filter", "0", "0", NULL, NULL, "NF_ACCEPT", NULL, NULL, NULL, NULL, NULL, NULL);
+add_obj_counter("test", NULL, NULL, NULL, NULL);
+add_set("test", "0x40", "2", "13", NULL, NULL, NULL, NULL, NULL, "0x1", NULL, NULL, "1", NULL, NULL);
+add_elem("0016", NULL, NULL, NULL, NULL, NULL, NULL, NULL, "test", NULL);
+commit();
diff --git a/tests/obj/map-quota-bad_err.t b/tests/obj/map-quota-bad_err.t
new file mode 100644
index 0000000..d522c27
--- /dev/null
+++ b/tests/obj/map-quota-bad_err.t
@@ -0,0 +1,6 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_basechain("test", "filter", "0", "0", NULL, NULL, "NF_ACCEPT", NULL, NULL, NULL, NULL, NULL, NULL);
+add_obj_quota("test", NULL, NULL, NULL, NULL, NULL);
+add_set("test", "0x40", "2", "13", NULL, NULL, NULL, NULL, NULL, "0x1", NULL, NULL, "1", NULL, NULL);
+add_elem("0016", NULL, NULL, NULL, NULL, NULL, NULL, NULL, "test", NULL);
+commit();
diff --git a/tests/obj/max_err.t b/tests/obj/max_err.t
new file mode 100644
index 0000000..a7c58c3
--- /dev/null
+++ b/tests/obj/max_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_unknown("test", NULL, NULL, "11");
+commit();
diff --git a/tests/obj/obj-no-name_err.t b/tests/obj/obj-no-name_err.t
new file mode 100644
index 0000000..1179b65
--- /dev/null
+++ b/tests/obj/obj-no-name_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_counter(NULL, NULL, NULL, NULL, NULL);
+commit();
diff --git a/tests/obj/objref_enoent_err.t b/tests/obj/objref_enoent_err.t
new file mode 100644
index 0000000..45c9efc
--- /dev/null
+++ b/tests/obj/objref_enoent_err.t
@@ -0,0 +1,6 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_basechain("test", "filter", "0", "0", NULL, NULL, "NF_ACCEPT", NULL, NULL, NULL, NULL, NULL, NULL);
+add_obj_counter("test", NULL, NULL, NULL, NULL);
+add_rule("test", "0x1", NULL, NULL, NULL);
+objref("1", "bad", NULL, NULL, NULL);
+commit();
diff --git a/tests/obj/objref_no_name_err.t b/tests/obj/objref_no_name_err.t
new file mode 100644
index 0000000..36c8996
--- /dev/null
+++ b/tests/obj/objref_no_name_err.t
@@ -0,0 +1,6 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_basechain("test", "filter", "0", "0", NULL, NULL, "NF_ACCEPT", NULL, NULL, NULL, NULL, NULL, NULL);
+add_obj_counter("test", NULL, NULL, NULL, NULL);
+add_rule("test", "0x1", NULL, NULL, NULL);
+objref("1", NULL, NULL, NULL, NULL);
+commit();
diff --git a/tests/obj/objref_no_type_err.t b/tests/obj/objref_no_type_err.t
new file mode 100644
index 0000000..ce37839
--- /dev/null
+++ b/tests/obj/objref_no_type_err.t
@@ -0,0 +1,6 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_basechain("test", "filter", "0", "0", NULL, NULL, "NF_ACCEPT", NULL, NULL, NULL, NULL, NULL, NULL);
+add_obj_counter("test", NULL, NULL, NULL, NULL);
+add_rule("test", "0x1", NULL, NULL, NULL);
+objref(NULL, "test", NULL, NULL, NULL);
+commit();
diff --git a/tests/obj/quota-bad-flags_err.t b/tests/obj/quota-bad-flags_err.t
new file mode 100644
index 0000000..961946c
--- /dev/null
+++ b/tests/obj/quota-bad-flags_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_quota("test", NULL, NULL, "1000", NULL, "0x2");
+commit();
diff --git a/tests/obj/quota-consumed-overrun_err.t b/tests/obj/quota-consumed-overrun_err.t
new file mode 100644
index 0000000..20f6cf4
--- /dev/null
+++ b/tests/obj/quota-consumed-overrun_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_quota("test", NULL, NULL, "1000", "1001", NULL);
+commit();
diff --git a/tests/obj/quota-consumed_ok.t b/tests/obj/quota-consumed_ok.t
new file mode 100644
index 0000000..d1295c5
--- /dev/null
+++ b/tests/obj/quota-consumed_ok.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_quota("test", NULL, NULL, "1000", "1000", NULL);
+commit();
diff --git a/tests/obj/quota-flags_ok.t b/tests/obj/quota-flags_ok.t
new file mode 100644
index 0000000..8a2b1b3
--- /dev/null
+++ b/tests/obj/quota-flags_ok.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_quota("test", NULL, NULL, "1000", NULL, "0x1");
+commit();
diff --git a/tests/obj/quota-no-quota_err.t b/tests/obj/quota-no-quota_err.t
new file mode 100644
index 0000000..f5f1cac
--- /dev/null
+++ b/tests/obj/quota-no-quota_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_quota("test", NULL, NULL, NULL, NULL, NULL);
+commit();
diff --git a/tests/obj/quota-only-consumed_err.t b/tests/obj/quota-only-consumed_err.t
new file mode 100644
index 0000000..ab640b4
--- /dev/null
+++ b/tests/obj/quota-only-consumed_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_quota("test", NULL, NULL, NULL, "1", NULL);
+commit();
diff --git a/tests/obj/quota-update_ok.t b/tests/obj/quota-update_ok.t
new file mode 100644
index 0000000..f77d6ce
--- /dev/null
+++ b/tests/obj/quota-update_ok.t
@@ -0,0 +1,6 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_quota("test", NULL, NULL, "1000", NULL, NULL);
+commit();
+set_table(NFPROTO_IPV4, "test");
+add_obj_quota("test", NULL, NULL, "2000", NULL, NULL);
+commit();
diff --git a/tests/obj/quota_ok.t b/tests/obj/quota_ok.t
new file mode 100644
index 0000000..82219bf
--- /dev/null
+++ b/tests/obj/quota_ok.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_quota("test", NULL, NULL, "1000", NULL, NULL);
+commit();
diff --git a/tests/obj/secmark-empty-ctx_err.t b/tests/obj/secmark-empty-ctx_err.t
new file mode 100644
index 0000000..9ae6d06
--- /dev/null
+++ b/tests/obj/secmark-empty-ctx_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_secmark("test", NULL, NULL, "");
+commit();
diff --git a/tests/obj/secmark-no-ctx_err.t b/tests/obj/secmark-no-ctx_err.t
new file mode 100644
index 0000000..aa5d898
--- /dev/null
+++ b/tests/obj/secmark-no-ctx_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_secmark("test", NULL, NULL, NULL);
+commit();
diff --git a/tests/obj/synproxy_ok.t b/tests/obj/synproxy_ok.t
new file mode 100644
index 0000000..2bc2b68
--- /dev/null
+++ b/tests/obj/synproxy_ok.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_synproxy("test", NULL, NULL, "1460", "9", "0x0");
+commit();
diff --git a/tests/obj/tunnel-bad-family_err.t b/tests/obj/tunnel-bad-family_err.t
new file mode 100644
index 0000000..4d402d6
--- /dev/null
+++ b/tests/obj/tunnel-bad-family_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_tunnel("test", NULL, NULL, "1", NULL, NULL, "01020304010203040102030401020304", "01020304010203040102030401020304", NULL, "10", "20", NULL, NULL, "64");
+commit();
diff --git a/tests/obj/tunnel-ipv4_ok.t b/tests/obj/tunnel-ipv4_ok.t
new file mode 100644
index 0000000..bb03f1b
--- /dev/null
+++ b/tests/obj/tunnel-ipv4_ok.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_NETDEV, "test", NULL, NULL, NULL);
+add_obj_tunnel("test", NULL, NULL, "1", "0x01020304", "0x04050607", NULL, NULL, NULL, "10", "20", NULL, NULL, "64");
+commit();
diff --git a/tests/obj/tunnel-ipv6_ok.t b/tests/obj/tunnel-ipv6_ok.t
new file mode 100644
index 0000000..a145498
--- /dev/null
+++ b/tests/obj/tunnel-ipv6_ok.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_NETDEV, "test", NULL, NULL, NULL);
+add_obj_tunnel("test", NULL, NULL, "1", NULL, NULL, "01020304010203040102030401020304", "01020304010203040102030401020304", NULL, "10", "20", NULL, NULL, "64");
+commit();
diff --git a/tests/obj/tunnel-no-id_err.t b/tests/obj/tunnel-no-id_err.t
new file mode 100644
index 0000000..607bd5b
--- /dev/null
+++ b/tests/obj/tunnel-no-id_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_tunnel("test", NULL, NULL, NULL, "0x01020304", "0x04050607", "01020304010203040102030401020304", NULL, NULL, "10", "20", NULL, NULL, "64");
+commit();
diff --git a/tests/obj/tunnel-no-ip_err.t b/tests/obj/tunnel-no-ip_err.t
new file mode 100644
index 0000000..9e5196e
--- /dev/null
+++ b/tests/obj/tunnel-no-ip_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_tunnel("test", NULL, NULL, "1", NULL, NULL, NULL, NULL, NULL, "10", "20", NULL, NULL, "64");
+commit();
diff --git a/tests/obj/unspec_err.t b/tests/obj/unspec_err.t
new file mode 100644
index 0000000..e9430e6
--- /dev/null
+++ b/tests/obj/unspec_err.t
@@ -0,0 +1,3 @@
+add_table(NFPROTO_IPV4, "test", NULL, NULL, NULL);
+add_obj_unknown("test", NULL, NULL, "0");
+commit();