Lines Matching refs:domain

106 	struct net_domain_private* domain = (net_domain_private*)_domain;
107 RouteList::Iterator iterator = domain->routes.GetIterator();
125 && domain->address_module->equal_masked_addresses(
127 && domain->address_module->equal_addresses(route->mask,
129 && domain->address_module->equal_addresses(route->gateway,
143 net_domain_private* domain = (net_domain_private*)_domain;
147 RouteList::Iterator iterator = domain->routes.GetIterator();
151 AddressString(domain, address).Data());
160 domain->address_module->mask_address(address, route->mask,
162 if (!domain->address_module->equal_addresses(&maskedAddress,
165 } else if (!domain->address_module->equal_addresses(address,
174 domain, route->destination).Data(), route->flags);
181 AddressString(domain, route->destination).Data(), route->flags);
191 put_route_internal(struct net_domain_private* domain, net_route* _route)
193 ASSERT_LOCKED_RECURSIVE(&domain->lock);
208 get_route_internal(struct net_domain_private* domain,
211 ASSERT_LOCKED_RECURSIVE(&domain->lock);
216 RouteList::Iterator iterator = domain->routes.GetIterator();
233 route = find_route(domain, address);
245 update_route_infos(struct net_domain_private* domain)
247 ASSERT_LOCKED_RECURSIVE(&domain->lock);
248 RouteInfoList::Iterator iterator = domain->route_infos.GetIterator();
253 put_route_internal(domain, info->route);
254 info->route = get_route_internal(domain, &info->address);
294 route_table_size(net_domain_private* domain)
296 RecursiveLocker locker(domain->lock);
299 RouteList::Iterator iterator = domain->routes.GetIterator();
321 list_routes(net_domain_private* domain, void* buffer, size_t size)
323 RecursiveLocker _(domain->lock);
325 RouteList::Iterator iterator = domain->routes.GetIterator();
331 zeros.sa_family = domain->family;
394 control_routes(struct net_interface* _interface, net_domain* domain,
397 TRACE("control_routes(interface %p, domain %p, option %" B_PRId32 ")\n",
398 _interface, domain, option);
424 = interface->FirstForFamily(domain->family);
431 status = add_route(domain, &route);
433 status = remove_route(domain, &route);
447 struct net_domain_private* domain = (net_domain_private*)_domain;
449 TRACE("add route to domain %s: dest %s, mask %s, gw %s, flags %lx\n",
450 domain->name,
451 AddressString(domain, newRoute->destination
453 AddressString(domain, newRoute->mask ? newRoute->mask : NULL).Data(),
454 AddressString(domain, newRoute->gateway
458 if (domain == NULL || newRoute == NULL
464 || !domain->address_module->check_mask(newRoute->mask))
467 RecursiveLocker _(domain->lock);
469 net_route_private* route = find_route(domain, newRoute);
477 if (domain->address_module->copy_address(newRoute->destination,
480 || domain->address_module->copy_address(newRoute->mask, &route->mask,
482 || domain->address_module->copy_address(newRoute->gateway,
496 RouteList::Iterator iterator = domain->routes.GetIterator();
502 if (domain->address_module->first_mask_bit(before->mask)
503 > domain->address_module->first_mask_bit(route->mask))
516 domain->routes.InsertBefore(before, route);
517 update_route_infos(domain);
526 struct net_domain_private* domain = (net_domain_private*)_domain;
528 TRACE("remove route from domain %s: dest %s, mask %s, gw %s, flags %lx\n",
529 domain->name,
530 AddressString(domain, removeRoute->destination
532 AddressString(domain, removeRoute->mask
534 AddressString(domain, removeRoute->gateway
538 RecursiveLocker locker(domain->lock);
540 net_route_private* route = find_route(domain, removeRoute);
544 domain->routes.Remove(route);
546 put_route_internal(domain, route);
547 update_route_infos(domain);
556 struct net_domain_private* domain = (net_domain_private*)_domain;
570 RecursiveLocker locker(domain->lock);
572 net_route_private* route = find_route(domain, (sockaddr*)&destination);
587 net_domain_private* domain = (net_domain_private*)_domain;
588 RecursiveLocker locker(domain->lock);
590 TRACE("invalidate_routes(%i, %s)\n", domain->family, interface->name);
592 RouteList::Iterator iterator = domain->routes.GetIterator();
597 remove_route(domain, route);
605 net_domain_private* domain = (net_domain_private*)address->domain;
608 AddressString(domain, address->local).Data());
610 RecursiveLocker locker(domain->lock);
612 RouteList::Iterator iterator = domain->routes.GetIterator();
617 remove_route(domain, route);
625 struct net_domain_private* domain = (net_domain_private*)_domain;
626 RecursiveLocker locker(domain->lock);
628 return get_route_internal(domain, address);
633 get_device_route(struct net_domain* domain, uint32 index, net_route** _route)
635 Interface* interface = get_interface_for_device(domain, index);
640 = &interface->DomainDatalink(domain->family)->direct_route;
653 net_domain_private* domain = (net_domain_private*)_domain;
655 RecursiveLocker _(domain->lock);
657 net_route* route = get_route_internal(domain, buffer->destination);
669 status = domain->address_module->update_to(source,
674 put_route_internal(domain, route);
685 struct net_domain_private* domain = (net_domain_private*)_domain;
686 if (domain == NULL || route == NULL)
689 RecursiveLocker locker(domain->lock);
691 put_route_internal(domain, (net_route*)route);
698 struct net_domain_private* domain = (net_domain_private*)_domain;
699 RecursiveLocker locker(domain->lock);
701 domain->route_infos.Add(info);
702 info->route = get_route_internal(domain, &info->address);
711 struct net_domain_private* domain = (net_domain_private*)_domain;
712 RecursiveLocker locker(domain->lock);
714 domain->route_infos.Remove(info);
716 put_route_internal(domain, info->route);
725 struct net_domain_private* domain = (net_domain_private*)_domain;
726 RecursiveLocker locker(domain->lock);
728 put_route_internal(domain, info->route);
729 info->route = get_route_internal(domain, &info->address);