| // Copyright 2018 The Chromium OS Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef SHILL_NET_CONTROL_NETLINK_ATTRIBUTE_H_ |
| #define SHILL_NET_CONTROL_NETLINK_ATTRIBUTE_H_ |
| |
| #include <base/macros.h> |
| |
| #include "shill/net/netlink_attribute.h" |
| |
| namespace shill { |
| |
| // Control. |
| |
| class ControlAttributeFamilyId : public NetlinkU16Attribute { |
| public: |
| static const int kName; |
| static const char kNameString[]; |
| ControlAttributeFamilyId() : NetlinkU16Attribute(kName, kNameString) {} |
| ControlAttributeFamilyId(const ControlAttributeFamilyId&) = delete; |
| ControlAttributeFamilyId& operator=(const ControlAttributeFamilyId&) = delete; |
| }; |
| |
| class ControlAttributeFamilyName : public NetlinkStringAttribute { |
| public: |
| static const int kName; |
| static const char kNameString[]; |
| ControlAttributeFamilyName() : NetlinkStringAttribute(kName, kNameString) {} |
| ControlAttributeFamilyName(const ControlAttributeFamilyName&) = delete; |
| ControlAttributeFamilyName& operator=(const ControlAttributeFamilyName&) = |
| delete; |
| }; |
| |
| class ControlAttributeVersion : public NetlinkU32Attribute { |
| public: |
| static const int kName; |
| static const char kNameString[]; |
| ControlAttributeVersion() : NetlinkU32Attribute(kName, kNameString) {} |
| ControlAttributeVersion(const ControlAttributeVersion&) = delete; |
| ControlAttributeVersion& operator=(const ControlAttributeVersion&) = delete; |
| }; |
| |
| class ControlAttributeHdrSize : public NetlinkU32Attribute { |
| public: |
| static const int kName; |
| static const char kNameString[]; |
| ControlAttributeHdrSize() : NetlinkU32Attribute(kName, kNameString) {} |
| ControlAttributeHdrSize(const ControlAttributeHdrSize&) = delete; |
| ControlAttributeHdrSize& operator=(const ControlAttributeHdrSize&) = delete; |
| }; |
| |
| class ControlAttributeMaxAttr : public NetlinkU32Attribute { |
| public: |
| static const int kName; |
| static const char kNameString[]; |
| ControlAttributeMaxAttr() : NetlinkU32Attribute(kName, kNameString) {} |
| ControlAttributeMaxAttr(const ControlAttributeMaxAttr&) = delete; |
| ControlAttributeMaxAttr& operator=(const ControlAttributeMaxAttr&) = delete; |
| }; |
| |
| class ControlAttributeAttrOps : public NetlinkNestedAttribute { |
| public: |
| static const int kName; |
| static const char kNameString[]; |
| ControlAttributeAttrOps(); |
| ControlAttributeAttrOps(const ControlAttributeAttrOps&) = delete; |
| ControlAttributeAttrOps& operator=(const ControlAttributeAttrOps&) = delete; |
| }; |
| |
| class ControlAttributeMcastGroups : public NetlinkNestedAttribute { |
| public: |
| static const int kName; |
| static const char kNameString[]; |
| ControlAttributeMcastGroups(); |
| ControlAttributeMcastGroups(const ControlAttributeMcastGroups&) = delete; |
| ControlAttributeMcastGroups& operator=(const ControlAttributeMcastGroups&) = |
| delete; |
| }; |
| |
| } // namespace shill |
| |
| #endif // SHILL_NET_CONTROL_NETLINK_ATTRIBUTE_H_ |