summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYing Xue <ying.xue@windriver.com>2012-08-16 12:09:08 +0000
committerDavid S. Miller <davem@davemloft.net>2012-08-20 02:26:30 -0700
commitfc0739385ba10f59105e87a46cc93d9d9a10553c (patch)
tree7ae1ac9f233ed40183e6f5f06b5488b076106389
parent4225a398c1352a7a5c14dc07277cb5cc4473983b (diff)
downloadlinux-fc0739385ba10f59105e87a46cc93d9d9a10553c.tar.bz2
tipc: remove pointless name sanity check and tipc_alphabet array
There is no real reason to check whether all letters in the given media name and network interface name are within the character set defined in tipc_alphabet array. Even if we eliminate the checking, the rest of checking conditions in tipc_enable_bearer() can ensure we do not enable an invalid or illegal bearer. Signed-off-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/tipc/bearer.c6
-rw-r--r--net/tipc/core.c3
-rw-r--r--net/tipc/core.h2
-rw-r--r--net/tipc/link.c4
4 files changed, 3 insertions, 12 deletions
diff --git a/net/tipc/bearer.c b/net/tipc/bearer.c
index 09e71241265d..6b2faa57a394 100644
--- a/net/tipc/bearer.c
+++ b/net/tipc/bearer.c
@@ -60,7 +60,7 @@ static int media_name_valid(const char *name)
len = strlen(name);
if ((len + 1) > TIPC_MAX_MEDIA_NAME)
return 0;
- return strspn(name, tipc_alphabet) == len;
+ return 1;
}
/**
@@ -206,9 +206,7 @@ static int bearer_name_validate(const char *name,
/* validate component parts of bearer name */
if ((media_len <= 1) || (media_len > TIPC_MAX_MEDIA_NAME) ||
- (if_len <= 1) || (if_len > TIPC_MAX_IF_NAME) ||
- (strspn(media_name, tipc_alphabet) != (media_len - 1)) ||
- (strspn(if_name, tipc_alphabet) != (if_len - 1)))
+ (if_len <= 1) || (if_len > TIPC_MAX_IF_NAME))
return 0;
/* return bearer name components, if necessary */
diff --git a/net/tipc/core.c b/net/tipc/core.c
index 6586eac6a50e..c261a5dca7c5 100644
--- a/net/tipc/core.c
+++ b/net/tipc/core.c
@@ -50,9 +50,6 @@
/* global variables used by multiple sub-systems within TIPC */
int tipc_random;
-const char tipc_alphabet[] =
- "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_.";
-
/* configurable TIPC parameters */
u32 tipc_own_addr;
int tipc_max_ports;
diff --git a/net/tipc/core.h b/net/tipc/core.h
index fd42e106c185..e4e46cd2d0e6 100644
--- a/net/tipc/core.h
+++ b/net/tipc/core.h
@@ -85,8 +85,6 @@ extern int tipc_remote_management;
* Other global variables
*/
extern int tipc_random;
-extern const char tipc_alphabet[];
-
/*
* Routines available to privileged subsystems
diff --git a/net/tipc/link.c b/net/tipc/link.c
index 1c1e6151875e..a79c755cb417 100644
--- a/net/tipc/link.c
+++ b/net/tipc/link.c
@@ -210,9 +210,7 @@ static int link_name_validate(const char *name,
(z_local > 255) || (c_local > 4095) || (n_local > 4095) ||
(z_peer > 255) || (c_peer > 4095) || (n_peer > 4095) ||
(if_local_len <= 1) || (if_local_len > TIPC_MAX_IF_NAME) ||
- (if_peer_len <= 1) || (if_peer_len > TIPC_MAX_IF_NAME) ||
- (strspn(if_local, tipc_alphabet) != (if_local_len - 1)) ||
- (strspn(if_peer, tipc_alphabet) != (if_peer_len - 1)))
+ (if_peer_len <= 1) || (if_peer_len > TIPC_MAX_IF_NAME))
return 0;
/* return link name components, if necessary */