Lines Matching defs:varbind

434         /* in SNMP v2c a varbind related exception is stored in varbind and not in frame header */
440 /* we stored the exception in varbind -> go on */
617 /* already set correct error-index (here it cannot be taken from inbound varbind enumerator) */
626 LWIP_DEBUGF(SNMP_DEBUG, ("Very strange, we cannot parse the varbind output that we created just before!"));
1254 /* decode varbind-list type (next container level) */
1463 /** Calculate the length of a varbind list */
1465 snmp_varbind_length(struct snmp_varbind *varbind, struct snmp_varbind_len *len)
1468 snmp_asn1_enc_oid_cnt(varbind->oid.id, varbind->oid.len, &len->oid_value_len);
1471 if (varbind->value_len == 0) {
1473 } else if (varbind->value_len & SNMP_GET_VALUE_RAW_DATA) {
1474 len->value_value_len = varbind->value_len & (~SNMP_GET_VALUE_RAW_DATA);
1476 switch (varbind->type) {
1478 if (varbind->value_len != sizeof (s32_t)) {
1481 snmp_asn1_enc_s32t_cnt(*((s32_t *) varbind->value), &len->value_value_len);
1486 if (varbind->value_len != sizeof (u32_t)) {
1489 snmp_asn1_enc_u32t_cnt(*((u32_t *) varbind->value), &len->value_value_len);
1494 len->value_value_len = varbind->value_len;
1497 if (varbind->value_len != 0) {
1503 if ((varbind->value_len & 0x03) != 0) {
1506 snmp_asn1_enc_oid_cnt((u32_t *) varbind->value, varbind->value_len >> 2, &len->value_value_len);
1510 if (varbind->value_len != sizeof(u64_t)) {
1513 snmp_asn1_enc_u64t_cnt(*(u64_t *)varbind->value, &len->value_value_len);
1532 snmp_append_outbound_varbind(struct snmp_pbuf_stream *pbuf_stream, struct snmp_varbind *varbind)
1538 err = snmp_varbind_length(varbind, &len);
1558 OVB_BUILD_EXEC(snmp_asn1_enc_oid(pbuf_stream, varbind->oid.id, varbind->oid.len));
1561 SNMP_ASN1_SET_TLV_PARAMS(tlv, varbind->type, len.value_len_len, len.value_value_len);
1565 if (varbind->value_len & SNMP_GET_VALUE_RAW_DATA) {
1566 OVB_BUILD_EXEC(snmp_asn1_enc_raw(pbuf_stream, (u8_t *) varbind->value, len.value_value_len));
1568 switch (varbind->type) {
1570 OVB_BUILD_EXEC(snmp_asn1_enc_s32t(pbuf_stream, len.value_value_len, *((s32_t *) varbind->value)));
1575 OVB_BUILD_EXEC(snmp_asn1_enc_u32t(pbuf_stream, len.value_value_len, *((u32_t *) varbind->value)));
1580 OVB_BUILD_EXEC(snmp_asn1_enc_raw(pbuf_stream, (u8_t *) varbind->value, len.value_value_len));
1581 len.value_value_len = varbind->value_len;
1584 OVB_BUILD_EXEC(snmp_asn1_enc_oid(pbuf_stream, (u32_t *) varbind->value, varbind->value_len / sizeof (u32_t)));
1588 OVB_BUILD_EXEC(snmp_asn1_enc_u64t(pbuf_stream, len.value_value_len, *(u64_t *) varbind->value));
1659 LWIP_DEBUGF(SNMP_DEBUG, ("snmp_complete_outbound_frame() > Found v2 request with varbind exception code stored as error status!\n"));
1754 /* set index to varbind where error occured (if not already set before, e.g. during GetBulk processing) */
1777 /* complete missing length in 'VarBindList' sequence ; 'VarBindList' tlv is located directly before varbind offset */
1864 snmp_vb_enumerator_get_next(struct snmp_varbind_enumerator *enumerator, struct snmp_varbind *varbind)
1875 /* decode varbind itself (parent container of a varbind) */
1880 /* decode varbind name (object id) */
1884 VB_PARSE_EXEC(snmp_asn1_dec_oid(&(enumerator->pbuf_stream), tlv.value_len, varbind->oid.id, &(varbind->oid.len), SNMP_MAX_OBJ_ID_LEN));
1887 /* decode varbind value (object id) */
1890 varbind->type = tlv.type;
1893 if (varbind->value != NULL) {
1894 switch (varbind->type) {
1896 VB_PARSE_EXEC(snmp_asn1_dec_s32t(&(enumerator->pbuf_stream), tlv.value_len, (s32_t *)varbind->value));
1897 varbind->value_len = sizeof(s32_t);
1902 VB_PARSE_EXEC(snmp_asn1_dec_u32t(&(enumerator->pbuf_stream), tlv.value_len, (u32_t *)varbind->value));
1903 varbind->value_len = sizeof(u32_t);
1907 err = snmp_asn1_dec_raw(&(enumerator->pbuf_stream), tlv.value_len, (u8_t *)varbind->value, &varbind->value_len, SNMP_MAX_VALUE_SIZE);
1914 varbind->value_len = 0;
1918 err = snmp_asn1_dec_oid(&(enumerator->pbuf_stream), tlv.value_len, (u32_t *)varbind->value, &tlv.length_len, SNMP_MAX_OBJ_ID_LEN);
1923 varbind->value_len = tlv.length_len * sizeof(u32_t);
1928 VB_PARSE_EXEC(snmp_asn1_dec_raw(&(enumerator->pbuf_stream), tlv.value_len, (u8_t *)varbind->value, &varbind->value_len, SNMP_MAX_VALUE_SIZE));
1935 VB_PARSE_EXEC(snmp_asn1_dec_u64t(&(enumerator->pbuf_stream), tlv.value_len, (u64_t *)varbind->value));
1936 varbind->value_len = sizeof(u64_t);
1945 varbind->value_len = tlv.value_len;