Lines Matching refs:resp

169 snmp_pdu_create_response(struct snmp_pdu *pdu, struct snmp_pdu *resp)
171 memset(resp, 0, sizeof(*resp));
172 strcpy(resp->community, pdu->community);
173 resp->version = pdu->version;
174 resp->type = SNMP_PDU_RESPONSE;
175 resp->request_id = pdu->request_id;
176 resp->version = pdu->version;
178 if (resp->version != SNMP_V3)
181 memcpy(&resp->engine, &pdu->engine, sizeof(pdu->engine));
182 memcpy(&resp->user, &pdu->user, sizeof(pdu->user));
183 snmp_pdu_init_secparams(resp);
184 resp->identifier = pdu->identifier;
185 resp->security_model = pdu->security_model;
186 resp->context_engine_len = pdu->context_engine_len;
187 memcpy(resp->context_engine, pdu->context_engine,
188 resp->context_engine_len);
189 strlcpy(resp->context_name, pdu->context_name,
190 sizeof(resp->context_name));
200 struct snmp_pdu *resp, void *data)
212 snmp_pdu_create_response(pdu, resp);
214 if (snmp_pdu_encode_header(resp_b, resp) != SNMP_CODE_OK)
219 resp->bindings[i].var = pdu->bindings[i].var;
226 snmp_pdu_free(resp);
231 resp->bindings[i].syntax = except;
235 resp->bindings[i].syntax = tp->syntax;
236 ret = (*tp->op)(&context.ctx, &resp->bindings[i],
245 snmp_pdu_free(resp);
250 resp->bindings[i].syntax = SNMP_SYNTAX_NOSUCHINSTANCE;
255 snmp_pdu_free(resp);
259 resp->nbindings++;
261 err = snmp_binding_encode(resp_b, &resp->bindings[i]);
266 snmp_pdu_free(resp);
274 snmp_pdu_free(resp);
279 return (snmp_fix_encoding(resp_b, resp));
397 struct snmp_pdu *resp, void *data)
407 snmp_pdu_create_response(pdu, resp);
409 if (snmp_pdu_encode_header(resp_b, resp))
414 &resp->bindings[i], pdu);
418 snmp_pdu_free(resp);
422 resp->nbindings++;
424 err = snmp_binding_encode(resp_b, &resp->bindings[i]);
429 snmp_pdu_free(resp);
437 snmp_pdu_free(resp);
441 return (snmp_fix_encoding(resp_b, resp));
446 struct snmp_pdu *resp, void *data)
459 snmp_pdu_create_response(pdu, resp);
461 if (snmp_pdu_encode_header(resp_b, resp) != SNMP_CODE_OK)
471 &resp->bindings[resp->nbindings], pdu);
475 snmp_pdu_free(resp);
480 &resp->bindings[resp->nbindings++]);
490 snmp_pdu_free(resp);
503 if (resp->nbindings == SNMP_MAX_BINDINGS)
509 &resp->bindings[resp->nbindings], pdu);
512 &resp->bindings[resp->nbindings -
514 &resp->bindings[resp->nbindings], pdu);
518 snmp_pdu_free(resp);
521 if (resp->bindings[resp->nbindings].syntax !=
526 &resp->bindings[resp->nbindings++]);
536 snmp_pdu_free(resp);
545 return (snmp_fix_encoding(resp_b, resp));
657 struct snmp_pdu *resp, void *data)
671 snmp_pdu_create_response(pdu, resp);
673 if (snmp_pdu_encode_header(resp_b, resp))
702 snmp_pdu_free(resp);
721 snmp_pdu_free(resp);
735 snmp_pdu_free(resp);
741 if (snmp_value_copy(&resp->bindings[i], b)) {
744 snmp_pdu_free(resp);
747 asnerr = snmp_binding_encode(resp_b, &resp->bindings[i]);
751 snmp_pdu_free(resp);
756 snmp_pdu_free(resp);
759 resp->nbindings++;
832 snmp_pdu_free(resp);
857 snmp_pdu_free(resp);
873 b = &resp->bindings[i];
888 if (snmp_fix_encoding(resp_b, resp) != SNMP_CODE_OK) {
890 snmp_pdu_free(resp);
961 struct snmp_pdu resp;
965 memset(&resp, 0, sizeof(resp));
966 if ((code = snmp_pdu_decode_header(pdu_b, &resp)) != SNMP_CODE_OK)
973 err = snmp_parse_pdus_hdr(pdu_b, &resp, &len);
981 resp.error_status = pdu->error_status;
982 resp.error_index = pdu->error_index;
983 resp.type = SNMP_PDU_RESPONSE;
985 code = snmp_pdu_encode_header(resp_b, &resp);
996 code = snmp_fix_encoding(resp_b, &resp);