// Copyright (c) 2012 DMTF.  All rights reserved.
   [Version ( "2.32.0" ), 
    UMLPackagePath ( "CIM::Network::DHCP" ), 
    Description ( 
       "This class represents the desired configuration settings for "
       "the DHCPProtocolEndpoint (i.e. DHCP client configuration." )]
class CIM_DHCPSettingData : CIM_IPAssignmentSettingData {

      [Override ( "AddressOrigin" ), 
       Description ( 
          "AddressOrigin identifies the method by which the IP "
          "Address, Subnet Mask, and Gateway were assigned to the "
          "IPProtocolEndpoint. \n"
          "A value of 4 indicates that the values will be assigned "
          "via DHCP. See RFC 2131 and related. \n"
          "A value of 7 \"DHCPv6\" shall indicate the values will "
          "be assigned using DHCPv6. See RFC 3315." ), 
       ValueMap { "4", "7", "..", "32768.." }, 
       Values { "DHCP", "DHCPv6", "DMTF Reserved", "Vendor Reserved" }, 
       ModelCorrespondence { "CIM_IPProtocolEndpoint.AddressOrigin" }]
   uint16 AddressOrigin = 4;

      [Description ( 
          "A previously allocated IPv4 address for which the client "
          "is requesting re-allocation. This property is used in a "
          "client request (DHCPREQUEST) as the value of the ciaddr "
          "field. For AddressOrigin other than 4, this property "
          "shall be NULL." ), 
       MappingStrings { "RFC1541.IETF|Section 3.2" }, 
       ModelCorrespondence { "CIM_IPProtocolEndpoint.IPv4Address" }]
   string RequestedIPv4Address;

      [Description ( 
          "This property is used in a client request (DHCPREQUEST) "
          "to allow the client to request a lease time for the IP "
          "address. The value shall be specified as an interval at "
          "a granularity of seconds. This value corresponds to the "
          "value for code 51 as defined in RFC2132." ), 
       Units ( "Seconds" ), 
       MappingStrings { "RFC2132.IETF|Section 9.2" }, 
       ModelCorrespondence { "CIM_DHCPProtocolEndpoint.LeaseTime" }, 
       PUnit ( "second" )]
   uint32 RequestedLeaseTime;

      [Write, Description ( 
          "This property is used by DHCP clients to specify their "
          "unique identifier. DHCP servers use this value to index "
          "their database of address bindings. This value is "
          "expected to be unique for all clients in an "
          "administrative domain. This corresponds to DHCP Option "
          "Code 61 as defined in RFC2132. \n"
          "While this value is an option and therefore could be "
          "expressed using the RequestedOption property, it differs "
          "from other properties in that it includes a value when "
          "specified from the client." ), 
       MappingStrings { "RFC2132.IETF|Section 9.14" }]
   string ClientIdentifier;

      [Write, Description ( 
          "This property is used by DHCP clients to optionally "
          "identify the vendor type and configuration of a DHCP "
          "client. This corresponds to DHCP Option Code 60 as "
          "defined in RFC2132. While this is value is an option and "
          "therefore could be expressed using the RequestedOption "
          "property, it differs from other properties in that it "
          "includes a value when specified from the client." ), 
       MappingStrings { "RFC2132.IETF|Section 9.13" }]
   string VendorClassIdentifier;

      [Write, Description ( 
          "The list of requested DHCP options which the client is "
          "capable of interpreting but not necessarily required for "
          "the client to operate properly. This list of DHCP "
          "options is for IPv4." ), 
       ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", 
          "10", "11", "12", "13", "14", "15", "16", "17", "18", 
          "19", "20", "21", "22", "23", "24", "25", "26", "27", 
          "28", "29", "30", "31", "32", "33", "34", "35", "36", 
          "37", "38", "39", "40", "41", "42", "43", "44", "45", 
          "46", "47", "48", "49", "50", "51", "52", "53", "54", 
          "55", "56", "57", "58", "59", "60", "61", "62", "63", 
          "64", "65", "66", "67", "68", "69", "70", "71", "72", 
          "73", "74", "75", "76", "77", "78", "79", "80", "81", 
          "82..83", "84", "85..118", "119", "120", "121..122", 
          "123", "124..256", "257", "258..32767", "32768..65535" }, 
       Values { "Unknown", "Other", "Pad", "Subnet Mask", 
          "Time Offset", "Router Option", "Time Server", 
          "Name Server", "Domain Name Server", "Log Server", 
          "Cookie Server", "LPR Server", "Impress Server", 
          "Resource Location Server", "Host Name", "Boot File Size", 
          "Merit Dump File", "Domain Name", "Swap Server", 
          "Root Path", "Extensions Path", 
          "IP Forwarding Enable/Disable", 
          "Non-Local Source Routing Enable/Disable", 
          "Policy Filter", "Maximum Datagram Reassembly Size", 
          "Default IP Time-to-live", "Path MTU Aging Timeout", 
          "Path MTU Plateau Table", "Interface MTU", 
          "All Subnets are Local", "Broadcast Address", 
          "Perform Subnet Mask Discovery", "Mask Supplier", 
          "Perform Router Discovery", "Router Solicitation Address", 
          "Static Route", "Trailer Encapsulation", 
          "ARP Cache Timeout", "Ethernet Encapsulation", 
          "TCP Default TTL", "TCP Keepalive Interval", 
          "TCP Keepalive Garbage", 
          "Network Information Service Domain", 
          "Network Information Servers", 
          "Network Time Protocol Servers", 
          "Vendor Specific Information", 
          "NetBIOS over TCP/IP Name Server", 
          "NetBIOS over TCP/IP Datagram Distribution Server", 
          "NetBIOS over TCP/IP Node Type", 
          "NetBIOS over TCP/IP Scope", 
          "X Window System Font Server", 
          "X Window System Display Manager", "Requested IP Address", 
          "Lease Time", "Option Overload", "Message Type", 
          "Server Identifier", "Parameter Request List", 
          "Error Message", "Maximum Message Size", 
          "Renewal (T1) Time", "Rebinding (T2) Time", 
          "Vendor Class Identifier", "Client Identifier", 
          "DMTF Reserved", "DMTF Reserved", 
          "Network Information Service+ Domain", 
          "Network Information Service+ Servers", 
          "TFTP Server Name", "Bootfile Name", 
          "Mobile IP Home Agent", 
          "Simple Mail Transport Protocol (SMTP) Server", 
          "Post Office Protocol (POP3) Server", 
          "Network News Transport Protocol (NNTP) Server", 
          "Default World Wide Web (WWW) Server", 
          "Default Finger Server", 
          "Default Internet Relay Chat (IRC) Server", 
          "StreetTalk Server", 
          "StreetTalk Directory Assistance (STDA) Server", 
          "User Class", "SLP Directory Agent", "SLP Service Scope", 
          "DMTF Reserved", "Relay Agent Information", 
          "DMTF Reserved", "Name Service Search", 
          "Subnet Selection", "DMTF Reserved", "Classless Route", 
          "DMTF Reserved", "End", "DMTF Reserved", "Vendor Reserved" }, 
       MappingStrings { "RFC2132.IETF", "RFC2937.IETF", 
          "RFC3011.IETF", "RFC3046.IETF", "RFC3004.IETF", 
          "RFC2610.IETF", "RFC3442.IETF" }, 
       ModelCorrespondence { 
          "CIM_DHCPProtocolEndpoint.OptionsReceived" }]
   uint16 RequestedOptions[];

      [Write, Description ( 
          "The list of DHCP options required for the client to "
          "operate properly. This list of DHCP options is for IPv4." ), 
       ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", 
          "10", "11", "12", "13", "14", "15", "16", "17", "18", 
          "19", "20", "21", "22", "23", "24", "25", "26", "27", 
          "28", "29", "30", "31", "32", "33", "34", "35", "36", 
          "37", "38", "39", "40", "41", "42", "43", "44", "45", 
          "46", "47", "48", "49", "50", "51", "52", "53", "54", 
          "55", "56", "57", "58", "59", "60", "61", "62", "63", 
          "64", "65", "66", "67", "68", "69", "70", "71", "72", 
          "73", "74", "75", "76", "77", "78", "79", "80", "81", 
          "82..83", "84", "85..118", "119", "120", "121..122", 
          "123", "124..256", "257", "258..32767", "32768..65535" }, 
       Values { "Unknown", "Other", "Pad", "Subnet Mask", 
          "Time Offset", "Router Option", "Time Server", 
          "Name Server", "Domain Name Server", "Log Server", 
          "Cookie Server", "LPR Server", "Impress Server", 
          "Resource Location Server", "Host Name", "Boot File Size", 
          "Merit Dump File", "Domain Name", "Swap Server", 
          "Root Path", "Extensions Path", 
          "IP Forwarding Enable/Disable", 
          "Non-Local Source Routing Enable/Disable", 
          "Policy Filter", "Maximum Datagram Reassembly Size", 
          "Default IP Time-to-live", "Path MTU Aging Timeout", 
          "Path MTU Plateau Table", "Interface MTU", 
          "All Subnets are Local", "Broadcast Address", 
          "Perform Subnet Mask Discovery", "Mask Supplier", 
          "Perform Router Discovery", "Router Solicitation Address", 
          "Static Route", "Trailer Encapsulation", 
          "ARP Cache Timeout", "Ethernet Encapsulation", 
          "TCP Default TTL", "TCP Keepalive Interval", 
          "TCP Keepalive Garbage", 
          "Network Information Service Domain", 
          "Network Information Servers", 
          "Network Time Protocol Servers", 
          "Vendor Specific Information", 
          "NetBIOS over TCP/IP Name Server", 
          "NetBIOS over TCP/IP Datagram Distribution Server", 
          "NetBIOS over TCP/IP Node Type", 
          "NetBIOS over TCP/IP Scope", 
          "X Window System Font Server", 
          "X Window System Display Manager", "Requested IP Address", 
          "Lease Time", "Option Overload", "Message Type", 
          "Server Identifier", "Parameter Request List", 
          "Error Message", "Maximum Message Size", 
          "Renewal (T1) Time", "Rebinding (T2) Time", 
          "Vendor Class Identifier", "Client Identifier", 
          "DMTF Reserved", "DMTF Reserved", 
          "Network Information Service+ Domain", 
          "Network Information Service+ Servers", 
          "TFTP Server Name", "Bootfile Name", 
          "Mobile IP Home Agent", 
          "Simple Mail Transport Protocol (SMTP) Server", 
          "Post Office Protocol (POP3) Server", 
          "Network News Transport Protocol (NNTP) Server", 
          "Default World Wide Web (WWW) Server", 
          "Default Finger Server", 
          "Default Internet Relay Chat (IRC) Server", 
          "StreetTalk Server", 
          "StreetTalk Directory Assistance (STDA) Server", 
          "User Class", "SLP Directory Agent", "SLP Service Scope", 
          "DMTF Reserved", "Relay Agent Information", 
          "DMTF Reserved", "Name Service Search", 
          "Subnet Selection", "DMTF Reserved", "Classless Route", 
          "DMTF Reserved", "End", "DMTF Reserved", "Vendor Reserved" }, 
       MappingStrings { "RFC2132.IETF", "RFC2937.IETF", 
          "RFC3011.IETF", "RFC3046.IETF", "RFC3004.IETF", 
          "RFC2610.IETF", "RFC3442.IETF" }, 
       ModelCorrespondence { 
          "CIM_DHCPProtocolEndpoint.OptionsReceived" }]
   uint16 RequiredOptions[];


};
