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>
This commit is contained in:
Ying Xue 2012-08-16 12:09:08 +00:00 committed by David S. Miller
parent 4225a398c1
commit fc0739385b
4 changed files with 3 additions and 12 deletions

View File

@ -60,7 +60,7 @@ static int media_name_valid(const char *name)
len = strlen(name); len = strlen(name);
if ((len + 1) > TIPC_MAX_MEDIA_NAME) if ((len + 1) > TIPC_MAX_MEDIA_NAME)
return 0; 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 */ /* validate component parts of bearer name */
if ((media_len <= 1) || (media_len > TIPC_MAX_MEDIA_NAME) || if ((media_len <= 1) || (media_len > TIPC_MAX_MEDIA_NAME) ||
(if_len <= 1) || (if_len > TIPC_MAX_IF_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)))
return 0; return 0;
/* return bearer name components, if necessary */ /* return bearer name components, if necessary */

View File

@ -50,9 +50,6 @@
/* global variables used by multiple sub-systems within TIPC */ /* global variables used by multiple sub-systems within TIPC */
int tipc_random; int tipc_random;
const char tipc_alphabet[] =
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_.";
/* configurable TIPC parameters */ /* configurable TIPC parameters */
u32 tipc_own_addr; u32 tipc_own_addr;
int tipc_max_ports; int tipc_max_ports;

View File

@ -85,8 +85,6 @@ extern int tipc_remote_management;
* Other global variables * Other global variables
*/ */
extern int tipc_random; extern int tipc_random;
extern const char tipc_alphabet[];
/* /*
* Routines available to privileged subsystems * Routines available to privileged subsystems

View File

@ -210,9 +210,7 @@ static int link_name_validate(const char *name,
(z_local > 255) || (c_local > 4095) || (n_local > 4095) || (z_local > 255) || (c_local > 4095) || (n_local > 4095) ||
(z_peer > 255) || (c_peer > 4095) || (n_peer > 4095) || (z_peer > 255) || (c_peer > 4095) || (n_peer > 4095) ||
(if_local_len <= 1) || (if_local_len > TIPC_MAX_IF_NAME) || (if_local_len <= 1) || (if_local_len > TIPC_MAX_IF_NAME) ||
(if_peer_len <= 1) || (if_peer_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)))
return 0; return 0;
/* return link name components, if necessary */ /* return link name components, if necessary */