diff --git a/net/tipc/bearer.c b/net/tipc/bearer.c
index 2cde375477e3..b4629ff03e67 100644
--- a/net/tipc/bearer.c
+++ b/net/tipc/bearer.c
@@ -256,7 +256,7 @@ static int tipc_enable_bearer(struct net *net, const char *name,
 	char *errstr = "";
 	u32 i;
 
-	if (!bearer_name_validate(name, &b_names)) {
+	if (IS_ERR_OR_NULL(name) || !bearer_name_validate(name, &b_names)) {
 		NL_SET_ERR_MSG(extack, "Illegal name");
 		return res;
 	}