Lines Matching refs:Netlink
40 class Netlink: class
275 self.type = self._type & ~Netlink.NLA_TYPE_MASK
276 self.is_nest = self._type & Netlink.NLA_F_NESTED
348 if self.nl_type == Netlink.NLMSG_ERROR:
352 elif self.nl_type == Netlink.NLMSG_DONE:
358 if self.nl_flags & Netlink.NLM_F_ACK_TLVS and extack_off:
362 if extack.type == Netlink.NLMSGERR_ATTR_MSG:
364 elif extack.type == Netlink.NLMSGERR_ATTR_MISS_TYPE:
366 elif extack.type == Netlink.NLMSGERR_ATTR_MISS_NEST:
368 elif extack.type == Netlink.NLMSGERR_ATTR_OFFS:
370 elif extack.type == Netlink.NLMSGERR_ATTR_POLICY:
436 if attr.type == Netlink.NL_POLICY_TYPE_ATTR_TYPE:
438 policy['type'] = Netlink.AttrType(type_).name
439 elif attr.type == Netlink.NL_POLICY_TYPE_ATTR_MIN_VALUE_S:
441 elif attr.type == Netlink.NL_POLICY_TYPE_ATTR_MAX_VALUE_S:
443 elif attr.type == Netlink.NL_POLICY_TYPE_ATTR_MIN_VALUE_U:
445 elif attr.type == Netlink.NL_POLICY_TYPE_ATTR_MAX_VALUE_U:
447 elif attr.type == Netlink.NL_POLICY_TYPE_ATTR_MIN_LENGTH:
449 elif attr.type == Netlink.NL_POLICY_TYPE_ATTR_MAX_LENGTH:
451 elif attr.type == Netlink.NL_POLICY_TYPE_ATTR_POLICY_IDX:
453 elif attr.type == Netlink.NL_POLICY_TYPE_ATTR_BITFIELD32_MASK:
455 elif attr.type == Netlink.NL_POLICY_TYPE_ATTR_MASK:
464 with socket.socket(socket.AF_NETLINK, socket.SOCK_RAW, Netlink.NETLINK_GENERIC) as sock:
465 sock.setsockopt(Netlink.SOL_NETLINK, Netlink.NETLINK_CAP_ACK, 1)
467 msg = _genl_msg(Netlink.GENL_ID_CTRL,
468 Netlink.NLM_F_REQUEST | Netlink.NLM_F_ACK | Netlink.NLM_F_DUMP,
469 Netlink.CTRL_CMD_GETFAMILY, 1)
486 if attr.type == Netlink.CTRL_ATTR_FAMILY_ID:
488 elif attr.type == Netlink.CTRL_ATTR_FAMILY_NAME:
490 elif attr.type == Netlink.CTRL_ATTR_MAXATTR:
492 elif attr.type == Netlink.CTRL_ATTR_MCAST_GROUPS:
498 if entry_attr.type == Netlink.CTRL_ATTR_MCAST_GRP_NAME:
500 elif entry_attr.type == Netlink.CTRL_ATTR_MCAST_GRP_ID:
513 with socket.socket(socket.AF_NETLINK, socket.SOCK_RAW, Netlink.NETLINK_GENERIC) as sock:
514 sock.setsockopt(Netlink.SOL_NETLINK, Netlink.NETLINK_CAP_ACK, 1)
516 msg = _genl_msg(Netlink.GENL_ID_CTRL,
517 Netlink.NLM_F_REQUEST | Netlink.NLM_F_ACK | Netlink.NLM_F_DUMP,
518 Netlink.CTRL_CMD_GETPOLICY, 1)
519 msg += struct.pack('HHHxx', 6, Netlink.CTRL_ATTR_FAMILY_ID, family_id)
520 msg += struct.pack('HHI', 8, Netlink.CTRL_ATTR_OP, op)
536 if attr.type == Netlink.CTRL_ATTR_OP_POLICY:
539 if method_attr.type == Netlink.CTRL_ATTR_POLICY_DO:
541 elif method_attr.type == Netlink.CTRL_ATTR_POLICY_DUMP:
543 elif attr.type == Netlink.CTRL_ATTR_POLICY:
610 super().__init__(family_name, Netlink.NETLINK_GENERIC)
721 self.sock.setsockopt(Netlink.SOL_NETLINK, Netlink.NETLINK_CAP_ACK, 1)
722 self.sock.setsockopt(Netlink.SOL_NETLINK, Netlink.NETLINK_EXT_ACK, 1)
723 self.sock.setsockopt(Netlink.SOL_NETLINK, Netlink.NETLINK_GET_STRICT_CHK, 1)
750 self.sock.setsockopt(Netlink.SOL_NETLINK, Netlink.NETLINK_ADD_MEMBERSHIP,
756 self.sock.setsockopt(Netlink.SOL_NETLINK,
757 Netlink.NETLINK_LISTEN_ALL_NSID, 1)
762 if (cmsg_level == Netlink.SOL_NETLINK and
763 cmsg_type == Netlink.NETLINK_LISTEN_ALL_NSID):
817 nl_type |= Netlink.NLA_F_NESTED
821 nl_type |= Netlink.NLA_F_NESTED
868 nl_type |= Netlink.NLA_F_NESTED
895 idx = i | Netlink.NLA_F_NESTED
1333 nl_flags = Netlink.NLM_F_REQUEST | Netlink.NLM_F_ACK
1385 if Netlink.NLM_F_DUMP in req_flags:
1419 req_flags.append(Netlink.NLM_F_DUMP)