Exemplo n.º 1
0
Arquivo: cfg.c Projeto: DenisLug/mptcp
static void ieee802154_del_iface_deprecated(struct wpan_phy *wpan_phy,
					    struct net_device *dev)
{
	struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev);

	ieee802154_if_remove(sdata);
}
Exemplo n.º 2
0
Arquivo: tx.c Projeto: DenisLug/mptcp
netdev_tx_t
ieee802154_monitor_start_xmit(struct sk_buff *skb, struct net_device *dev)
{
	struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev);

	skb->skb_iif = dev->ifindex;

	return ieee802154_tx(sdata->local, skb);
}
Exemplo n.º 3
0
Arquivo: cfg.c Projeto: 020gzh/linux
static void
ieee802154_unlock_llsec_table(struct wpan_phy *wpan_phy,
			      struct wpan_dev *wpan_dev)
{
	struct net_device *dev = wpan_dev->netdev;
	struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev);

	mutex_unlock(&sdata->sec_mtx);
}
Exemplo n.º 4
0
Arquivo: cfg.c Projeto: 020gzh/linux
static void
ieee802154_get_llsec_table(struct wpan_phy *wpan_phy,
			   struct wpan_dev *wpan_dev,
			   struct ieee802154_llsec_table **table)
{
	struct net_device *dev = wpan_dev->netdev;
	struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev);

	*table = &sdata->sec.table;
}
Exemplo n.º 5
0
Arquivo: cfg.c Projeto: 020gzh/linux
static int
ieee802154_del_device(struct wpan_phy *wpan_phy, struct wpan_dev *wpan_dev,
		      __le64 extended_addr)
{
	struct net_device *dev = wpan_dev->netdev;
	struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev);
	int res;

	mutex_lock(&sdata->sec_mtx);
	res = mac802154_llsec_dev_del(&sdata->sec, extended_addr);
	mutex_unlock(&sdata->sec_mtx);

	return res;
}
Exemplo n.º 6
0
Arquivo: cfg.c Projeto: 020gzh/linux
static int
ieee802154_add_device(struct wpan_phy *wpan_phy, struct wpan_dev *wpan_dev,
		      const struct ieee802154_llsec_device *dev_desc)
{
	struct net_device *dev = wpan_dev->netdev;
	struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev);
	int res;

	mutex_lock(&sdata->sec_mtx);
	res = mac802154_llsec_dev_add(&sdata->sec, dev_desc);
	mutex_unlock(&sdata->sec_mtx);

	return res;
}
Exemplo n.º 7
0
Arquivo: cfg.c Projeto: 020gzh/linux
static int
ieee802154_get_llsec_params(struct wpan_phy *wpan_phy,
			    struct wpan_dev *wpan_dev,
			    struct ieee802154_llsec_params *params)
{
	struct net_device *dev = wpan_dev->netdev;
	struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev);
	int res;

	mutex_lock(&sdata->sec_mtx);
	res = mac802154_llsec_get_params(&sdata->sec, params);
	mutex_unlock(&sdata->sec_mtx);

	return res;
}
Exemplo n.º 8
0
Arquivo: tx.c Projeto: DenisLug/mptcp
netdev_tx_t
ieee802154_subif_start_xmit(struct sk_buff *skb, struct net_device *dev)
{
	struct ieee802154_sub_if_data *sdata = IEEE802154_DEV_TO_SUB_IF(dev);
	int rc;

	rc = mac802154_llsec_encrypt(&sdata->sec, skb);
	if (rc) {
		netdev_warn(dev, "encryption failed: %i\n", rc);
		kfree_skb(skb);
		return NETDEV_TX_OK;
	}

	skb->skb_iif = dev->ifindex;

	return ieee802154_tx(sdata->local, skb);
}