struct aggregator *aggregator;
char as[10];
char address[20];
+ int ret;
aggregator = XCALLOC (MTYPE_ROUTE_MAP_COMPILED, sizeof (struct aggregator));
sscanf (arg, "%s %s", as, address);
aggregator->as = strtoul (as, NULL, 10);
- inet_aton (address, &aggregator->address);
-
+ ret = inet_aton (address, &aggregator->address);
+ if (ret == 0)
+ {
+ XFREE (MTYPE_ROUTE_MAP_COMPILED, aggregator);
+ return NULL;
+ }
return aggregator;
}
eigrp->topology_table = eigrp_topology_new();
eigrp->neighbor_self = eigrp_nbr_new(NULL);
- inet_aton("0.0.0.0", &eigrp->neighbor_self->src);
+ eigrp->neighbor_self->src.s_addr = INADDR_ANY;
eigrp->variance = EIGRP_VARIANCE_DEFAULT;
eigrp->max_paths = EIGRP_MAX_PATHS_DEFAULT;
oclient = THREAD_ARG (t);
- inet_aton (args[6], &area_id);
+ rc = inet_aton (args[6], &area_id);
+ if (rc <= 0)
+ {
+ printf("Address Specified: %s is invalid\n", args[6]);
+ return rc;
+ }
printf ("Deleting LSA... ");
rc = ospf_apiclient_lsa_delete (oclient,
cl = THREAD_ARG (t);
- inet_aton (args[5], &ifaddr);
- inet_aton (args[6], &area_id);
+ rc = inet_aton (args[5], &ifaddr);
+ if (rc <= 0)
+ {
+ printf ("Ifaddr specified %s is invalid\n", args[5]);
+ return rc;
+ }
+
+ rc = inet_aton (args[6], &area_id);
+ if (rc <= 0)
+ {
+ printf( "Area ID specified %s is invalid\n", args[6]);
+ return rc;
+ }
lsa_type = atoi (args[2]);
opaque_type = atoi (args[3]);
opaque_id = atoi (args[4]);
/* Check and get Area value if present */
if (area)
{
- inet_aton (area, &OspfRI.area_id);
+ if (!inet_aton (area, &OspfRI.area_id))
+ {
+ vty_out (vty, "Please specifya valid Area ID%s", VTY_NEWLINE);
+ return CMD_WARNING;
+ }
scope = OSPF_OPAQUE_AREA_LSA;
}
else
struct in_addr *gpnt;
str2prefix_ipv4 (prefix, &p);
- inet_aton (gateway, &gate);
+ if (!inet_aton (gateway, &gate))
+ {
+ printf("Gateway specified: %s is illegal\n", gateway);
+ return;
+ }
+
gpnt = &gate;
api.vrf_id = VRF_DEFAULT;