📄 discconm.c
字号:
DnpapMessage(DMC_MESSAGE, DISC_DESTROY, "discconn: collector %ld destroyed", local->Index); if (MibRemove (obj, &DiscConnControlInstance, 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 (DiscConnCStop(data) == TRUE) { DnpapFree(local->Data); DnpapMessage(DMC_MESSAGE, DISC_DESTROY, "discconn: collector %ld destroyed", local->Index); if (MibRemove (obj, &DiscConnControlInstance, idlen, CONTROLINDEXSIZE) == TRUE) return SNMP_NOERROR; } return SNMP_GENERROR; default: return SNMP_BADVALUE; } } } return SNMP_GENERROR;}WORD DiscConnSDEthSourceAddress(SNMP_OBJECT *obj, WORD idlen){MIB_LOCAL *local = NULL;DISCCONN *data = NULL;INT type;WORD i, len, offset, sublen; if ((type = DiscTableType(obj, idlen)) == 0) return SNMP_NOSUCHNAME; if ((len = DiscTableLen(type, DISC_TYPE_ETH, &offset, &sublen, TRUE)) == 0) return SNMP_NOSUCHNAME; if ((local = MibRmon(obj, DiscConnControlInstance, idlen, len)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, idlen, type, len, &data, TRUE) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DiscConnSearchHash(local->Data, type, obj, idlen, TRUE)) == NULL) return SNMP_NOSUCHNAME; for (i = 0; i < sublen; i++) obj->Syntax.BufChr[i] = (BYTE)data->SrcDst[offset+i]; obj->SyntaxLen = sublen; return SNMP_NOERROR; case SNMP_PDU_SET: return SNMP_READONLY; } return SNMP_GENERROR;}WORD DiscConnSDEthDestAddress(SNMP_OBJECT *obj, WORD idlen){MIB_LOCAL *local = NULL;DISCCONN *data = NULL;INT type;WORD i, len, offset, sublen; if ((type = DiscTableType(obj, idlen)) == 0) return SNMP_NOSUCHNAME; if ((len = DiscTableLen(type, DISC_TYPE_ETH, &offset, &sublen, FALSE)) == 0) return SNMP_NOSUCHNAME; if ((local = MibRmon(obj, DiscConnControlInstance, idlen, len)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, idlen, type, len, &data, TRUE) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DiscConnSearchHash(local->Data, type, obj, idlen, TRUE)) == NULL) return SNMP_NOSUCHNAME; for (i = 0; i < sublen; i++) obj->Syntax.BufChr[i] = (BYTE)data->SrcDst[offset+i]; obj->SyntaxLen = sublen; return SNMP_NOERROR; case SNMP_PDU_SET: return SNMP_READONLY; } return SNMP_GENERROR;}WORD DiscConnSDIPSourceAddress(SNMP_OBJECT *obj, WORD idlen){MIB_LOCAL *local = NULL;DISCCONN *data = NULL;INT type;WORD i, len, offset, sublen; if ((type = DiscTableType(obj, idlen)) == 0) return SNMP_NOSUCHNAME; if ((len = DiscTableLen(type, DISC_TYPE_IP, &offset, &sublen, TRUE)) == 0) return SNMP_NOSUCHNAME; if ((local = MibRmon(obj, DiscConnControlInstance, idlen, len)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, idlen, type, len, &data, TRUE) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DiscConnSearchHash(local->Data, type, obj, idlen, TRUE)) == NULL) return SNMP_NOSUCHNAME; for (i = 0; i < sublen; i++) obj->Syntax.BufChr[i] = (BYTE)data->SrcDst[offset+i]; obj->SyntaxLen = sublen; return SNMP_NOERROR; case SNMP_PDU_SET: return SNMP_READONLY; } return SNMP_GENERROR;}WORD DiscConnSDIPDestAddress(SNMP_OBJECT *obj, WORD idlen){MIB_LOCAL *local = NULL;DISCCONN *data = NULL;INT type;WORD i, len, offset, sublen; if ((type = DiscTableType(obj, idlen)) == 0) return SNMP_NOSUCHNAME; if ((len = DiscTableLen(type, DISC_TYPE_IP, &offset, &sublen, FALSE)) == 0) return SNMP_NOSUCHNAME; if ((local = MibRmon(obj, DiscConnControlInstance, idlen, len)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, idlen, type, len, &data, TRUE) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DiscConnSearchHash(local->Data, type, obj, idlen, TRUE)) == NULL) return SNMP_NOSUCHNAME; for (i = 0; i < sublen; i++) obj->Syntax.BufChr[i] = (BYTE)data->SrcDst[offset+i]; obj->SyntaxLen = sublen; return SNMP_NOERROR; case SNMP_PDU_SET: return SNMP_READONLY; } return SNMP_GENERROR;}WORD DiscConnSDUDPSourceAddress(SNMP_OBJECT *obj, WORD idlen){MIB_LOCAL *local = NULL;DISCCONN *data = NULL;INT type;WORD len, offset, sublen; if ((type = DiscTableType(obj, idlen)) == 0) return SNMP_NOSUCHNAME; if ((len = DiscTableLen(type, DISC_TYPE_UDP, &offset, &sublen, TRUE)) == 0) return SNMP_NOSUCHNAME; if ((local = MibRmon(obj, DiscConnControlInstance, idlen, len)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, idlen, type, len, &data, TRUE) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DiscConnSearchHash(local->Data, type, obj, idlen, TRUE)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngInt = 256*(LONG)data->SrcDst[offset] + data->SrcDst[offset+1]; return SNMP_NOERROR; case SNMP_PDU_SET: return SNMP_READONLY; } return SNMP_GENERROR;}WORD DiscConnSDUDPDestAddress(SNMP_OBJECT *obj, WORD idlen){MIB_LOCAL *local = NULL;DISCCONN *data = NULL;INT type;WORD len, offset, sublen; if ((type = DiscTableType(obj, idlen)) == 0) return SNMP_NOSUCHNAME; if ((len = DiscTableLen(type, DISC_TYPE_UDP, &offset, &sublen, FALSE)) == 0) return SNMP_NOSUCHNAME; if ((local = MibRmon(obj, DiscConnControlInstance, idlen, len)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, idlen, type, len, &data, TRUE) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DiscConnSearchHash(local->Data, type, obj, idlen, TRUE)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngInt = 256*(LONG)data->SrcDst[offset] + data->SrcDst[offset+1]; return SNMP_NOERROR; case SNMP_PDU_SET: return SNMP_READONLY; } return SNMP_GENERROR;}WORD DiscConnSDTCPSourceAddress(SNMP_OBJECT *obj, WORD idlen){MIB_LOCAL *local = NULL;DISCCONN *data = NULL;INT type;WORD len, offset, sublen; if ((type = DiscTableType(obj, idlen)) == 0) return SNMP_NOSUCHNAME; if ((len = DiscTableLen(type, DISC_TYPE_TCP, &offset, &sublen, TRUE)) == 0) return SNMP_NOSUCHNAME; if ((local = MibRmon(obj, DiscConnControlInstance, idlen, len)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, idlen, type, len, &data, TRUE) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DiscConnSearchHash(local->Data, type, obj, idlen, TRUE)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngInt = 256*(LONG)data->SrcDst[offset] + data->SrcDst[offset+1]; return SNMP_NOERROR; case SNMP_PDU_SET: return SNMP_READONLY; } return SNMP_GENERROR;}WORD DiscConnSDTCPDestAddress(SNMP_OBJECT *obj, WORD idlen){MIB_LOCAL *local = NULL;DISCCONN *data = NULL;INT type;WORD len, offset, sublen; if ((type = DiscTableType(obj, idlen)) == 0) return SNMP_NOSUCHNAME; if ((len = DiscTableLen(type, DISC_TYPE_TCP, &offset, &sublen, FALSE)) == 0) return SNMP_NOSUCHNAME; if ((local = MibRmon(obj, DiscConnControlInstance, idlen, len)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, idlen, type, len, &data, TRUE) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DiscConnSearchHash(local->Data, type, obj, idlen, TRUE)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngInt = 256*(LONG)data->SrcDst[offset] + data->SrcDst[offset+1]; return SNMP_NOERROR; case SNMP_PDU_SET: return SNMP_READONLY; } return SNMP_GENERROR;}WORD DiscConnSDIndex(SNMP_OBJECT *obj, WORD idlen){MIB_LOCAL *local = NULL;DISCCONN *data = NULL;INT type;WORD len; if ((type = DiscTableType(obj, idlen)) == 0) return SNMP_NOSUCHNAME; if ((len = DiscTableLen(type, type, NULL, NULL, TRUE)) == 0) return SNMP_NOSUCHNAME; if ((local = MibRmon(obj, DiscConnControlInstance, idlen, len)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, idlen, type, len, &data, TRUE) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DiscConnSearchHash(local->Data, type, obj, idlen, TRUE)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngInt = local->Index; return SNMP_NOERROR; case SNMP_PDU_SET: return SNMP_READONLY; } return SNMP_GENERROR;}WORD DiscConnSDPkts(SNMP_OBJECT *obj, WORD idlen){MIB_LOCAL *local = NULL;DISCCONN *data = NULL;INT type;WORD len; if ((type = DiscTableType(obj, idlen)) == 0) return SNMP_NOSUCHNAME; if ((len = DiscTableLen(type, type, NULL, NULL, TRUE)) == 0) return SNMP_NOSUCHNAME; if ((local = MibRmon(obj, DiscConnControlInstance, idlen, len)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, idlen, type, len, &data, TRUE) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DiscConnSearchHash(local->Data, type, obj, idlen, TRUE)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->Pkts; return SNMP_NOERROR; case SNMP_PDU_SET: return SNMP_READONLY; } return SNMP_GENERROR;}WORD DiscConnSDOctets(SNMP_OBJECT *obj, WORD idlen){MIB_LOCAL *local = NULL;DISCCONN *data = NULL;INT type;WORD len; if ((type = DiscTableType(obj, idlen)) == 0) return SNMP_NOSUCHNAME; if ((len = DiscTableLen(type, type, NULL, NULL, TRUE)) == 0) return SNMP_NOSUCHNAME; if ((local = MibRmon(obj, DiscConnControlInstance, idlen, len)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, idlen, type, len, &data, TRUE) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DiscConnSearchHash(local->Data, type, obj, idlen, TRUE)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->Octets; return SNMP_NOERROR; case SNMP_PDU_SET: return SNMP_READONLY; } return SNMP_GENERROR;}WORD DiscConnSDLRUTime(SNMP_OBJECT *obj, WORD idlen){MIB_LOCAL *local = NULL;DISCCONN *data = NULL;INT type;WORD len; if ((type = DiscTableType(obj, idlen)) == 0) return SNMP_NOSUCHNAME; if ((len = DiscTableLen(type, type, NULL, NULL, TRUE)) == 0) return SNMP_NOSUCHNAME; if ((local = MibRmon(obj, DiscConnControlInstance, idlen, len)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, idlen, type, len, &data, TRUE) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DiscConnSearchHash(local->Data, type, obj, idlen, TRUE)) == NULL) return SNMP_NOSUCHNAME; obj->Syntax.LngUns = data->LRUTime; return SNMP_NOERROR; case SNMP_PDU_SET: return SNMP_READONLY; } return SNMP_GENERROR;}WORD DiscConnDSEthSourceAddress(SNMP_OBJECT *obj, WORD idlen){MIB_LOCAL *local = NULL;DISCCONN *data = NULL;INT type;WORD i, len, offset, sublen; if ((type = DiscTableType(obj, idlen)) == 0) return SNMP_NOSUCHNAME; if ((len = DiscTableLen(type, DISC_TYPE_ETH, &offset, &sublen, FALSE)) == 0) return SNMP_NOSUCHNAME; if ((local = MibRmon(obj, DiscConnControlInstance, idlen, len)) == NULL) return SNMP_NOSUCHNAME; switch (obj->Request) { case SNMP_PDU_NEXT: if (RmonNext(obj, &local, idlen, type, len, &data, FALSE) == FALSE) return SNMP_NOSUCHNAME; case SNMP_PDU_GET: if (data == NULL && (data = DiscConnSearchHash(local->Data, type, obj, idlen, FALSE)) == NULL) return SNMP_NOSUCHNAME; for (i = 0; i < sublen; i++) obj->Syntax.BufChr[i] = (BYTE)data->SrcDst[offset+i]; obj->SyntaxLen = sublen; return SNMP_NOERROR; case SNMP_PDU_SET: return SNMP_READONLY; } return SNMP_GENERROR;}WORD DiscConnDSEthDestAddress(SNMP_OBJECT *obj, WORD idlen){MIB_LOCAL *local = NULL;DISCCONN *data = NULL;INT type;WORD i, len, offset, sublen; if ((type = DiscTableType(obj, idlen)) == 0) return SNMP_NOSUCHNAME; if ((len = DiscTableLen(type, DISC_TYPE_ETH, &offset, &sublen, TRUE)) == 0) return SNMP_NOSUCHNAME;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -