📄 dhostm.c
字号:
return SNMP_NOSUCHNAME; } data = (DNPAP_HOST_CONTROL *) local->Data; obj->Syntax.LngInt = data->Status; return SNMP_NOERROR; case SNMP_PDU_SET: if (local == NULL) { switch (obj->Syntax.LngInt) { case SNMP_CREATEREQUEST: if ((local = MibInsert(obj, &HostControlInstance, IdLen, CONTROLINDEXSIZE)) == NULL) return SNMP_GENERROR; if ((local->Data = DnpapMalloc(sizeof(DNPAP_HOST_CONTROL))) == NULL) return SNMP_GENERROR; data = (DNPAP_HOST_CONTROL *) local->Data; if (DnpapHostCInit(data) == TRUE) { data->Index = local->Index; data->Status = SNMP_UNDERCREATION; DnpapMessage(DMC_MESSAGE, DHOST_CREATE, "dhost: collector %ld created", local->Index); return SNMP_NOERROR; } DnpapFree(local->Data); MibRemove(obj, &HostControlInstance, IdLen, CONTROLINDEXSIZE); return SNMP_GENERROR; default: return SNMP_NOSUCHNAME; } } data = (DNPAP_HOST_CONTROL *) local->Data; switch (data->Status) { case SNMP_UNDERCREATION: switch (obj->Syntax.LngInt) { case SNMP_VALID: if (DnpapHostCStart(data) == TRUE) { data->Status = SNMP_VALID; DnpapMessage(DMC_MESSAGE, DHOST_START, "dhost: collector %ld active", local->Index); return SNMP_NOERROR; } return SNMP_BADVALUE; case SNMP_INVALID: if (DnpapHostCStop(data) == TRUE) { DnpapFree(local->Data); DnpapMessage(DMC_MESSAGE, DHOST_DESTROY, "dhost: collector %ld destroyed", local->Index); if (MibRemove(obj, &HostControlInstance, IdLen, CONTROLINDEXSIZE) == TRUE) return SNMP_NOERROR; } return SNMP_GENERROR; default: return SNMP_BADVALUE; } case SNMP_VALID: switch (obj->Syntax.LngInt) { case SNMP_VALID: return SNMP_NOERROR; case SNMP_INVALID: if (DnpapHostCStop(data) == TRUE) { DnpapFree(local->Data); DnpapMessage(DMC_MESSAGE, DHOST_DESTROY, "dhost: collector %ld destroyed", local->Index); if (MibRemove(obj, &HostControlInstance, IdLen, CONTROLINDEXSIZE) == TRUE) return SNMP_NOERROR; } return SNMP_GENERROR; default: return SNMP_BADVALUE; } } } return SNMP_GENERROR;}WORD DnpapHostAddress(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; memcpy(obj->Syntax.BufChr, data->Address, obj->SyntaxLen = ((DNPAP_HOST_CONTROL *) local->Data)->AddressLen); return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostCreationOrder(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngInt = DnpapHostSearchCreationOrder(local->Data, data); return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostIndex(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngInt = local->Index; return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostInPkts(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->InPkts; return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostOutPkts(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->OutPkts; return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostInOctets(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->InOctets; return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostOutOctets(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->OutOctets; return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostOutErrors(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->OutErrors; return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostOutBroadcastPkts(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->OutBroadcastPkts; return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostOutMulticastPkts(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->OutMulticastPkts; return SNMP_NOERROR; } return SNMP_GENERROR;}#ifdef NOT_HOST_GENERICWORD DnpapHostInTCPPkts(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->InTCPPkts; return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostOutTCPPkts(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->OutTCPPkts; return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostInOtherPkts(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->InOtherPkts; return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostOutOtherPkts(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->OutOtherPkts; return SNMP_NOERROR; } return SNMP_GENERROR;}#endifWORD DnpapHostInPkts64(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->InBucket1Pkts; return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostInPkts65to127(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->InBucket2Pkts; return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostInPkts128to255(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->InBucket3Pkts; return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostInPkts256to511(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->InBucket4Pkts; return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostInPkts512to1023(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->InBucket5Pkts; return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostInPkts1024to1518(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->InBucket6Pkts; return SNMP_NOERROR; } return SNMP_GENERROR;}WORD DnpapHostOutPkts64(SNMP_OBJECT * obj, WORD IdLen){ MIB_LOCAL *local = NULL; DNPAP_HOST *data = NULL; if ((local = DnpapHostMibRmon(obj, HostControlInstance, IdLen, 0)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, IdLen, HOSTINDEXSIZE, &data) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DnpapHostSearchHash(local->Data, obj, IdLen)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->OutBucket1Pkts;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -