Versions in this module Expand all Collapse all v0 v0.1.3 Jan 26, 2022 Changes in this version + var ErrNoPermission = errors.New("ErrNoPermission") + var ErrNoSNMPInstance = errors.New("ErrNoSNMPInstance") + var ErrUnsupportedOperation = errors.New("ErrUnsupportedOperation") + var ErrUnsupportedPacketData = errors.New("ErrUnsupportedPacketData") + var ErrUnsupportedProtoVersion = errors.New("ErrUnsupportedProtoVersion") + func Asn1Counter32Unwrap(i interface{}) uint + func Asn1Counter32Wrap(i uint) interface + func Asn1Counter64Unwrap(i interface{}) uint64 + func Asn1Counter64Wrap(i uint64) interface + func Asn1Gauge32Unwrap(i interface{}) uint + func Asn1Gauge32Wrap(i uint) interface + func Asn1IPAddressUnwrap(i interface{}) net.IP + func Asn1IPAddressWrap(i net.IP) interface + func Asn1IntegerUnwrap(i interface{}) int + func Asn1IntegerWrap(i int) interface + func Asn1ObjectIdentifierUnwrap(i interface{}) string + func Asn1ObjectIdentifierWrap(i string) interface + func Asn1OctetStringUnwrap(i interface{}) string + func Asn1OctetStringWrap(i string) interface + func Asn1OpaqueDoubleUnwrap(i interface{}) float64 + func Asn1OpaqueDoubleWrap(i float64) interface + func Asn1OpaqueFloatUnwrap(i interface{}) float32 + func Asn1OpaqueFloatWrap(i float32) interface + func Asn1TimeTicksUnwrap(i interface{}) uint32 + func Asn1TimeTicksWrap(i uint32) interface + func Asn1Uinteger32Unwrap(i interface{}) uint32 + func Asn1Uinteger32Wrap(i uint32) interface + func DefaultGetAuthoritativeEngineTime() uint32 + func IsValidObjectIdentifier(oid string) (result bool) + type DefaultLogger struct + type DiscardLogger struct + func (*DiscardLogger) Debug(args ...interface{}) + func (*DiscardLogger) Debugf(format string, args ...interface{}) + func (*DiscardLogger) Debugln(args ...interface{}) + func (*DiscardLogger) Error(args ...interface{}) + func (*DiscardLogger) Errorf(format string, args ...interface{}) + func (*DiscardLogger) Errorln(args ...interface{}) + func (*DiscardLogger) Fatal(args ...interface{}) + func (*DiscardLogger) Fatalf(format string, args ...interface{}) + func (*DiscardLogger) Fatalln(args ...interface{}) + func (*DiscardLogger) Info(args ...interface{}) + func (*DiscardLogger) Infof(format string, args ...interface{}) + func (*DiscardLogger) Infoln(args ...interface{}) + func (*DiscardLogger) Print(args ...interface{}) + func (*DiscardLogger) Printf(format string, args ...interface{}) + func (*DiscardLogger) Trace(args ...interface{}) + func (*DiscardLogger) Tracef(format string, args ...interface{}) + func (*DiscardLogger) Traceln(args ...interface{}) + func (*DiscardLogger) Warn(args ...interface{}) + func (*DiscardLogger) Warnf(format string, args ...interface{}) + func (*DiscardLogger) Warning(args ...interface{}) + func (*DiscardLogger) Warningf(format string, args ...interface{}) + func (*DiscardLogger) Warningln(args ...interface{}) + func (*DiscardLogger) Warnln(args ...interface{}) + type FuncGetAuthoritativeEngineTime func() uint32 + type FuncPDUControlCheckPermission func(pktVersion gosnmp.SnmpVersion, pduType gosnmp.PDUType, contextName string) PermissionAllowance + type FuncPDUControlGet func() (value interface{}, err error) + type FuncPDUControlSet func(value interface{}) error + type FuncPDUControlTrap func(isInform bool, trapdata gosnmp.SnmpPDU) (dataret interface{}, err error) + type ILogger interface + Debug func(args ...interface{}) + Debugf func(format string, args ...interface{}) + Debugln func(args ...interface{}) + Error func(args ...interface{}) + Errorf func(format string, args ...interface{}) + Errorln func(args ...interface{}) + Fatal func(args ...interface{}) + Fatalf func(format string, args ...interface{}) + Fatalln func(args ...interface{}) + Info func(args ...interface{}) + Infof func(format string, args ...interface{}) + Infoln func(args ...interface{}) + Print func(args ...interface{}) + Printf func(format string, args ...interface{}) + Trace func(args ...interface{}) + Tracef func(format string, args ...interface{}) + Traceln func(args ...interface{}) + Warn func(args ...interface{}) + Warnf func(format string, args ...interface{}) + Warning func(args ...interface{}) + Warningf func(format string, args ...interface{}) + Warningln func(args ...interface{}) + Warnln func(args ...interface{}) + func NewDefaultLogger() ILogger + func NewDiscardLogger() ILogger + func WrapLogrus(p *logrus.Logger) ILogger + type IReplyer interface + ReplyPDU func([]byte) error + Shutdown func() + type ISnmpServerListener interface + Address func() net.Addr + NextSnmp func() (snmpbytes []byte, replyer IReplyer, err error) + SetupLogger func(ILogger) + Shutdown func() + func NewUDPListener(l3proto, address string) (ISnmpServerListener, error) + type MasterAgent struct + Logger ILogger + SecurityConfig SecurityConfig + SubAgents []*SubAgent + func (t *MasterAgent) ReadyForWork() error + func (t *MasterAgent) ResponseForBuffer(i []byte) ([]byte, error) + func (t *MasterAgent) ResponseForPkt(i *gosnmp.SnmpPacket) (*gosnmp.SnmpPacket, error) + func (t *MasterAgent) SyncConfig() error + type PDUValueControlItem struct + Document string + NonWalkable bool + OID string + OnCheckPermission FuncPDUControlCheckPermission + OnGet FuncPDUControlGet + OnSet FuncPDUControlSet + OnTrap FuncPDUControlTrap + Type gosnmp.Asn1BER + type PermissionAllowance int + const PermissionAllowanceAllowed + const PermissionAllowanceDenied + type SNMPEngineID struct + EngineIDData string + func DefaultAuthoritativeEngineID() SNMPEngineID + func (t *SNMPEngineID) Marshal() []byte + type SNMPServer struct + func NewSNMPServer(master MasterAgent) *SNMPServer + func (server *SNMPServer) Address() net.Addr + func (server *SNMPServer) ListenUDP(l3proto, address string) error + func (server *SNMPServer) ServeForever() error + func (server *SNMPServer) ServeNextRequest() (err error) + func (server *SNMPServer) Shutdown() + type SecurityConfig struct + AuthoritativeEngineBoots uint32 + AuthoritativeEngineID SNMPEngineID + NoSecurity bool + OnGetAuthoritativeEngineTime FuncGetAuthoritativeEngineTime + Users []gosnmp.UsmSecurityParameters + func (v *SecurityConfig) FindForUser(name string) *gosnmp.UsmSecurityParameters + type SnmpLoggerAdapter struct + func (i *SnmpLoggerAdapter) Print(args ...interface{}) + func (i *SnmpLoggerAdapter) Printf(format string, args ...interface{}) + type SubAgent struct + CommunityIDs []string + Logger ILogger + OIDs []*PDUValueControlItem + UserErrorMarkPacket bool + func (t *SubAgent) Serve(i *gosnmp.SnmpPacket) (*gosnmp.SnmpPacket, error) + func (t *SubAgent) SyncConfig() error + type UDPListener struct + func (udp *UDPListener) Address() net.Addr + func (udp *UDPListener) NextSnmp() ([]byte, IReplyer, error) + func (udp *UDPListener) SetupLogger(i ILogger) + func (udp *UDPListener) Shutdown() + type UDPReplyer struct + func (r *UDPReplyer) ReplyPDU(i []byte) error + func (r *UDPReplyer) Shutdown()