SNMP Manager Programmer's Guide
Programming Examples
SNMP Manager Programmer’s Guide–134249
2-139
SNMPHOST Source Code
 /* Send packet and receive response */
 for (i = 0; i <= retrycnt; i++) <--43
 {
  if (i == 0)
  {
   firstid = requestid;
  } else
  {
   fprintf(stdout, "\n---RESENDING PACKET---\n");
/* resetting request ID */
   /*
   * PDU request ID is reset to 1 by setting
   *  requestid to 0 and then incrementing it
   */
   if (requestid == MAX_REQID_VALUE)
    requestid = 0;
   pkt1->pdu.std_pdu.request_id = ++requestid;
  }
  err1 = SNMP_WriteRead_ (host_int, pkt1, &recv_pkt1, &ebuffAux,
   debug_level);
  if (err1 != 0)
  {
   fprintf(stdout, "SNMP_WRITEREAD_ returned error %i (", err1);
   fprintf(stdout, SNMP_FS_ErrMsg_ (err1, host_int->err_num));
   fprintf(stdout, ")\n");
   SNMP_Free(recv_pkt1);
  } else break;
 } /* for (i = 0; i <= retrycnt; i++) */
 if (i > retrycnt) exit(0);
 SNMP_Free(pkt1); <--44
 EBufferReset(&ebuffAux);
 pkt1 = recv_pkt1;
 if (pkt1 == 0)
 {
  printf ("No data received when reading the aux table\n");
  return 0;
 }
Example 2-18. Contents of snmphosc (page 14 of 23)










