HIRSCHMANN-WAN-CFG-MIB DEFINITIONS ::= BEGIN

IMPORTS
    OBJECT-TYPE, MODULE-IDENTITY, IpAddress, Integer32
        FROM SNMPv2-SMI -- RFC 2578
    TEXTUAL-CONVENTION, DisplayString, MacAddress
        FROM SNMPv2-TC  -- RFC 2579
    hmWanMgmt
    	FROM HIRSCHMANN-WAN-MIB;

hmWanCfgMib MODULE-IDENTITY
	LAST-UPDATED "201502130000Z" -- Februar 13, 2015
    ORGANIZATION "Hirschmann Automation and Control GmbH"
    CONTACT-INFO
        "Postal:     Stuttgarter Str. 45-51
                     72654 Neckartenzlingen
                     Germany
         Phone:      +49 7127 140
         E-mail:     hac.support@belden.com"
    DESCRIPTION
        "Copyright (C) 2015. All Rights Reserved."
    REVISION     "201502130000Z" -- Februar 13, 2015
    DESCRIPTION
         "Initial version."
    ::= { hmWanMgmt 8 } 

-- ==========================================================================
--  Textual Conventions
-- ==========================================================================

HmWanIfIndexTc  		::= TEXTUAL-CONVENTION
                        DISPLAY-HINT "d"
                        STATUS  current
                        DESCRIPTION "Interface index"
                        SYNTAX  Integer32 (1..128)

HmWanLeaseDhcpIndexTc ::= TEXTUAL-CONVENTION
                        DISPLAY-HINT "d"
                        STATUS  current
                        DESCRIPTION "Lease DHCP index"
                        SYNTAX  Integer32 (1..128)

HmWanStaticDhcpIndexTc ::= TEXTUAL-CONVENTION
                        DISPLAY-HINT "d"
                        STATUS  current
                        DESCRIPTION "Static DHCP index"
                        SYNTAX  Integer32 (1..4096)


hmWanEth              OBJECT IDENTIFIER ::= { hmWanCfgMib 1 }

---
--- hmWanIfTable
---

hmWanIfNumber        OBJECT-TYPE
        		SYNTAX	Integer32
				MAX-ACCESS	read-only
				STATUS	current
				::= { hmWanEth 1 }

hmWanIfTable         OBJECT-TYPE
                SYNTAX  SEQUENCE OF HmWanIfEntry
                MAX-ACCESS	not-accessible
                STATUS  current
                ::= { hmWanEth 2 }

HmWanIfEntry                 ::= SEQUENCE {
                                hmWanIfIndex                 HmWanIfIndexTc,
                                hmWanIfDhcpClient            INTEGER,
                                hmWanIfIpAddress             IpAddress,
                                hmWanIfSubnetMask            IpAddress,
                                hmWanIfBridged               INTEGER,
                                hmWanIfMediaType             INTEGER,
                                hmWanIfDefaultGateway        IpAddress,
                                hmWanIfDnsServer             IpAddress
                        }

hmWanIfEntry                 OBJECT-TYPE
                        SYNTAX  HmWanIfEntry
                        MAX-ACCESS  not-accessible
                        STATUS  current
                        INDEX   { hmWanIfIndex }
                        ::= { hmWanIfTable 1 }

hmWanIfIndex                 OBJECT-TYPE
                        SYNTAX  HmWanIfIndexTc
                        MAX-ACCESS  read-only
                        STATUS  current
                        ::= { hmWanIfEntry 1 }

hmWanIfDhcpClient            OBJECT-TYPE
                        SYNTAX  INTEGER {
                                disabled(1),
                                enabled(2)
                        }
                        MAX-ACCESS  read-write
                        STATUS  current
                        ::= { hmWanIfEntry 2 }

hmWanIfIpAddress             OBJECT-TYPE
                        SYNTAX  IpAddress
                        MAX-ACCESS  read-write
                        STATUS  current
                        ::= { hmWanIfEntry 3 }

hmWanIfSubnetMask            OBJECT-TYPE
                        SYNTAX  IpAddress
                        MAX-ACCESS  read-write
                        STATUS  current
                        ::= { hmWanIfEntry 4 }

hmWanIfBridged               OBJECT-TYPE
                        SYNTAX  INTEGER {
                                no(1),
                                yes(2)
                        }
                        MAX-ACCESS  read-write
                        STATUS  current
                        ::= { hmWanIfEntry 5 }

hmWanIfMediaType             OBJECT-TYPE
                        SYNTAX  INTEGER {
                                auto-negotiation(1),
                                full-duplex-100-Mbps(2),
                                half-duplex-100-Mbps(3),
                                full-duplex-10-Mbps(4),
                                half-duplex-10-Mbps(5)
                        }
                        MAX-ACCESS  read-write
                        STATUS  current
                        ::= { hmWanIfEntry 6 }

hmWanIfDefaultGateway        OBJECT-TYPE
                        SYNTAX  IpAddress
                        MAX-ACCESS  read-write
                        STATUS  current
                        ::= { hmWanIfEntry 7 }

hmWanIfDnsServer             OBJECT-TYPE
                        SYNTAX  IpAddress
                        MAX-ACCESS  read-write
                        STATUS  current
                        ::= { hmWanIfEntry 8 }

---
--- hmWanLeaseDhcpTable
---

hmWanLeaseDhcpNumber         OBJECT-TYPE
        				SYNTAX	INTEGER
						MAX-ACCESS	read-only
						STATUS	current
						::= { hmWanEth 3 }

hmWanLeaseDhcpTable          OBJECT-TYPE
                        SYNTAX  SEQUENCE OF HmWanLeaseDhcpEntry
                        MAX-ACCESS  not-accessible
                        STATUS  current
                        ::= { hmWanEth 4 }

hmWanLeaseDhcpEntry          OBJECT-TYPE
                        SYNTAX  HmWanLeaseDhcpEntry
                        MAX-ACCESS  not-accessible
                        STATUS  current
                        INDEX   { hmWanLeaseDhcpIndex }
                        ::= { hmWanLeaseDhcpTable 1 }

HmWanLeaseDhcpEntry          ::= SEQUENCE {
                                hmWanLeaseDhcpIndex          HmWanLeaseDhcpIndexTc,
                                hmWanLeaseDhcpServer         INTEGER,
                                hmWanLeaseDhcpIpPoolStart    IpAddress,
                                hmWanLeaseDhcpIpPoolEnd      IpAddress,
                                hmWanLeaseDhcpTime           INTEGER
                        }

hmWanLeaseDhcpIndex          OBJECT-TYPE
                        SYNTAX  HmWanLeaseDhcpIndexTc
                        MAX-ACCESS  read-only
                        STATUS  current
                        ::= { hmWanLeaseDhcpEntry 1 }

hmWanLeaseDhcpServer         OBJECT-TYPE
                        SYNTAX  INTEGER {
                                disabled(1),
                                enabled(2)
                        }
                        MAX-ACCESS  read-write
                        STATUS  current
                        ::= { hmWanLeaseDhcpEntry 2 }

hmWanLeaseDhcpIpPoolStart    OBJECT-TYPE
                        SYNTAX  IpAddress
                        MAX-ACCESS  read-write
                        STATUS  current
                        ::= { hmWanLeaseDhcpEntry 3 }

hmWanLeaseDhcpIpPoolEnd      OBJECT-TYPE
                        SYNTAX  IpAddress
                        MAX-ACCESS  read-write
                        STATUS  current
                        ::= { hmWanLeaseDhcpEntry 4 }

hmWanLeaseDhcpTime           OBJECT-TYPE
                        SYNTAX  INTEGER (60..86400)
                        UNITS "sec"
                        MAX-ACCESS  read-write
                        STATUS  current
                        ::= { hmWanLeaseDhcpEntry 5 }
---
--- hmWanStaticDhcpTable
---

hmWanStaticDhcp              OBJECT-TYPE
                        SYNTAX  INTEGER {
                                disabled(1),
                                enabled(2)
                        }
                        MAX-ACCESS  read-write
                        STATUS  current
                        ::= { hmWanEth 5 }

hmWanStaticDhcpNumber        OBJECT-TYPE
        				SYNTAX	INTEGER
						MAX-ACCESS	read-only
						STATUS	current
						::= { hmWanEth 6 }

hmWanStaticDhcpTable         OBJECT-TYPE
                        SYNTAX  SEQUENCE OF HmWanStaticDhcpEntry
                        MAX-ACCESS  not-accessible
                        STATUS  current
                        ::= { hmWanEth 7 }

hmWanStaticDhcpEntry         OBJECT-TYPE
                        SYNTAX  HmWanStaticDhcpEntry
                        MAX-ACCESS  not-accessible
                        STATUS  current
                        INDEX   { hmWanStaticDhcpIndex }
                        ::= { hmWanStaticDhcpTable 1 }


HmWanStaticDhcpEntry         ::= SEQUENCE {
                                hmWanStaticDhcpIndex         HmWanStaticDhcpIndexTc,
                                hmWanStaticDhcpMacAddress    MacAddress,
                                hmWanStaticDhcpIpAddress     IpAddress
                        }

hmWanStaticDhcpIndex         OBJECT-TYPE
                        SYNTAX  HmWanStaticDhcpIndexTc
                        MAX-ACCESS  read-only
                        STATUS  current
                        ::= { hmWanStaticDhcpEntry 1 }

hmWanStaticDhcpMacAddress    OBJECT-TYPE
                        SYNTAX  MacAddress
                        MAX-ACCESS  read-write
                        STATUS  current
                        ::= { hmWanStaticDhcpEntry 2 }

hmWanStaticDhcpIpAddress     OBJECT-TYPE
                        SYNTAX  IpAddress
                        MAX-ACCESS  read-write
                        STATUS  current
                        ::= { hmWanStaticDhcpEntry 3 }

-- ==========================================================================
--  SNMP Configuration
-- ==========================================================================

hmWanSnmpCfg                    OBJECT IDENTIFIER ::= { hmWanCfgMib 17 }

hmWanSnmpAdminStatus             OBJECT-TYPE
                        SYNTAX  INTEGER {
                                disable(1),
                                enable(2)
                        }
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 1 }

hmWanSnmpSysName                 OBJECT-TYPE
                        SYNTAX  DisplayString (SIZE (0..255))
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 2 }

hmWanSnmpSysLocation             OBJECT-TYPE
                        SYNTAX  DisplayString (SIZE (0..255))
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 3 }

hmWanSnmpSysContact              OBJECT-TYPE
                        SYNTAX  DisplayString (SIZE (0..255))
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 4 }

hmWanSnmpV1AccessAdminStatus         OBJECT-TYPE
                        SYNTAX  INTEGER {
                                disable(1),
                                enable(2)
                        }
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 5 }

hmWanSnmpV1ReadCommunity         OBJECT-TYPE
                        SYNTAX  DisplayString (SIZE (0..255))
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 6 }

hmWanSnmpV1WriteCommunity        OBJECT-TYPE
                        SYNTAX  DisplayString (SIZE (0..255))
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 7 }

hmWanSnmpV3AccessAdminStatus         OBJECT-TYPE
                        SYNTAX  INTEGER {
                                disable(1),
                                enable(2)
                        }
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 8 }

hmWanSnmpV33ReadUsername          OBJECT-TYPE
                        SYNTAX  DisplayString (SIZE (0..255))
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 9 }

hmWanSnmpV3ReadAuth    OBJECT-TYPE
                        SYNTAX  INTEGER {
                                none(1),
                                md5(2),
                                sha1(3)
                        }
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 10 }

hmWanSnmpV3ReadAuthPwd OBJECT-TYPE
                        SYNTAX  DisplayString (SIZE (8..255))
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 11 }

hmWanSnmpV3ReadPrivProt          OBJECT-TYPE
                        SYNTAX  INTEGER {
                                none(1),
                                des(2),
                                aes(3)
                        }
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 12 }

hmWanSnmpV3ReadPrivPwd  OBJECT-TYPE
                        SYNTAX  DisplayString (SIZE (8..255))
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 13 }

hmWanSnmpV3WriteUsername         OBJECT-TYPE
                        SYNTAX  DisplayString (SIZE (0..255))
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 14 }

hmWanSnmpV3WriteAuth   OBJECT-TYPE
                        SYNTAX  INTEGER {
                                none(1),
                                md5(2),
                                sha1(3)
                        }
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 15 }

hmWanSnmpV3WriteAuthPwd  OBJECT-TYPE
                        SYNTAX  DisplayString (SIZE (8..255))
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 16 }

hmWanSnmpV3WritePrivProt  OBJECT-TYPE
                        SYNTAX  INTEGER {
                                none(1),
                                des(2),
                                aes(3)
                        }
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 17 }

hmWanSnmpV3WritePrivPwd  OBJECT-TYPE
                        SYNTAX  DisplayString (SIZE (8..255))
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 18 }

hmWanIoExtensionAdminStatus      OBJECT-TYPE
                        SYNTAX  INTEGER {
                                disable(1),
                                enable(2)
                        }
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 19 }

hmWanXccntExtensionAdminStatus   OBJECT-TYPE
                        SYNTAX  INTEGER {
                                disable(1),
                                enable(2)
                        }
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 20 }

hmWanMbusExtensionAdminStatus    OBJECT-TYPE
                        SYNTAX  INTEGER {
                                disable(1),
                                enable(2)
                        }
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 21 }

hmWanMbusBaudrate            OBJECT-TYPE
                        SYNTAX  Integer32 (300|600|1200|2400|4800|9600)
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 22 }

hmWanMbusParity              OBJECT-TYPE
                        SYNTAX  INTEGER {
                                none(1),
                                even(2),
                                odd(3)
                        }
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 23 }

hmWanMbusStopbits            OBJECT-TYPE
                        SYNTAX  Integer32 (1|2)
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 24 }

hmWanReportAdminStatus           OBJECT-TYPE
                        SYNTAX  INTEGER {
                                disable(1),
                                enable(2)
                        }
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 25 }

hmWanReportIPAddress         OBJECT-TYPE
                        SYNTAX  DisplayString (SIZE (0..255))
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 26 }

hmWanReportPeriod            OBJECT-TYPE
                        SYNTAX  Integer32 (1..1440)
                        UNITS   "min"
						MAX-ACCESS	read-write
						STATUS	current
						::= { hmWanSnmpCfg 27 }

END
