/* "Delete" a neighbour. The neighbour is only removed if the number of nodes that may use it is zero.  */
static int nr_del_neigh(ax25_address *callsign, struct net_device *dev, unsigned int quality)
/* "Delete" a neighbour. The neighbour is only removed if the number of nodes that may use it is zero.  */
static int nr_del_neigh(ax25_address *callsign, struct net_device *dev, unsigned int quality)
{
	struct nr_neigh *nr_neigh;
	nr_neigh = nr_neigh_get_dev(callsign, dev);
	if (nr_neigh == NULL) return -EINVAL;
	nr_neigh->quality = quality;
	nr_neigh->locked  = 0;
	if (nr_neigh->count == 0)
		nr_remove_neigh(nr_neigh);
	nr_neigh_put(nr_neigh);
	return 0;
}