NetLabel: check for a CIPSOv4 option before we do call into the CIPSOv4 layer

Right now the NetLabel code always jumps into the CIPSOv4 layer to determine if
a CIPSO IP option is present.  However, we can do this check directly in the
NetLabel code by making use of the CIPSO_V4_OPTEXIST() macro which should save
us a function call in the common case of not having a CIPSOv4 option present.

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>
Этот коммит содержится в:
Paul Moore
2006-11-17 17:38:47 -05:00
коммит произвёл David S. Miller
родитель 701a90bad9
Коммит 05e00cbf50
2 изменённых файлов: 2 добавлений и 6 удалений

Просмотреть файл

@@ -149,10 +149,8 @@ int netlbl_socket_getattr(const struct socket *sock,
int netlbl_skbuff_getattr(const struct sk_buff *skb,
struct netlbl_lsm_secattr *secattr)
{
int ret_val;
ret_val = cipso_v4_skbuff_getattr(skb, secattr);
if (ret_val == 0)
if (CIPSO_V4_OPTEXIST(skb) &&
cipso_v4_skbuff_getattr(skb, secattr) == 0)
return 0;
return netlbl_unlabel_getattr(secattr);