--- a/libxtables/xtables.c
+++ b/libxtables/xtables.c
@@ -1093,12 +1093,6 @@ void xtables_register_match(struct xtabl
 	struct xtables_match **pos;
 	bool seen_myself = false;
 
-	if (me->next) {
-		fprintf(stderr, "%s: match \"%s\" already registered\n",
-			xt_params->program_name, me->name);
-		exit(1);
-	}
-
 	if (me->version == NULL) {
 		fprintf(stderr, "%s: match %s<%u> is missing a version\n",
 		        xt_params->program_name, me->name, me->revision);
@@ -1277,12 +1271,6 @@ void xtables_register_target(struct xtab
 	struct xtables_target **pos;
 	bool seen_myself = false;
 
-	if (me->next) {
-		fprintf(stderr, "%s: target \"%s\" already registered\n",
-			xt_params->program_name, me->name);
-		exit(1);
-	}
-
 	if (me->version == NULL) {
 		fprintf(stderr, "%s: target %s<%u> is missing a version\n",
 		        xt_params->program_name, me->name, me->revision);