SNMP Manager Programmer's Guide

Programming Examples
SNMP Manager Programmer’s Guide–134249
2-101
SNMPTRAP
name = ptr + 1;
} /* of while */
/* if IP address contains invalid no. of dots exit */
if ( dots < 3)
{
fprintf(stderr, "Invalid target host identifier %s\n", hostname);
exit(0);
}
if ((host_addr = inet_addr(hostname)) == INVALID_HOST_ADDR)
{
fprintf(stderr, "Invalid target host identifier %s\n", hostname);
exit(0);
}
} else
{
if ((host = gethostbyname(hostname)) == (struct hostent *)0)
{
fprintf(stderr, "Cannot locate host %s\n", hostname);
exit(0);
}
host_addr = *(u_long *)(host->h_addr);
}
dest.sin_addr.s_addr = host_addr;
if ((sd = socket(AF_INET, SOCK_DGRAM, 0)) == -1)
{
perror("Can't get socket");
exit(0);
}
if (entstr) <--7
{
if (oidstr_to_oid(entstr, &base_oid) < 0)
{
fprintf(stderr, "Bad enterprise object identifier: %s\n", entstr);
exit(0);
}
} else
{
base_oid.num_components = snmp_product_id_count;
for (i = 0; i < snmp_product_id_count; i++)
base_oid.component_list[i] = snmp_product_id[i];
}
Example 2-13. Contents of snmptrpc (page 5 of 10)