Lines Matching refs:proto_family
68 protocol_family_t proto_family;
361 protocol_family_t proto_family,
367 if ((mod->proto_family == (proto_family & 0xffff))
382 struct proto_family_str *proto_family;
388 TAILQ_FOREACH(proto_family, &proto_family_head, proto_fam_next) {
389 if (proto_family->proto_family == protocol_family &&
390 proto_family->if_family == interface_family) {
396 proto_family = (struct proto_family_str *) _MALLOC(sizeof(struct proto_family_str), M_IFADDR, M_WAITOK);
397 if (!proto_family) {
402 bzero(proto_family, sizeof(struct proto_family_str));
403 proto_family->proto_family = protocol_family;
404 proto_family->if_family = interface_family & 0xffff;
405 proto_family->attach_proto = attach;
406 proto_family->detach_proto = detach;
408 TAILQ_INSERT_TAIL(&proto_family_head, proto_family, proto_fam_next);
418 struct proto_family_str *proto_family;
422 proto_family = proto_plumber_find(protocol_family, interface_family);
423 if (proto_family == 0) {
428 TAILQ_REMOVE(&proto_family_head, proto_family, proto_fam_next);
429 FREE(proto_family, M_IFADDR);
440 struct proto_family_str *proto_family;
444 proto_family = proto_plumber_find(protocol_family, ifp->if_family);
445 if (proto_family == 0) {
450 ret = proto_family->attach_proto(ifp, protocol_family);
462 struct proto_family_str *proto_family;
467 proto_family = proto_plumber_find(protocol_family, ifp->if_family);
468 if (proto_family && proto_family->detach_proto)
469 proto_family->detach_proto(ifp, protocol_family);