CCNxControl * ccnxControl_CreateAddRouteToSelfRequest(const CCNxName *name) { CPIRouteEntry *route = cpiRouteEntry_CreateRouteToSelf(name); CCNxControl *result = ccnxControl_CreateAddRouteRequest(route); cpiRouteEntry_Destroy(&route); return result; }
// Case 1033 testUnimplemented("Platform not supported"); return; #endif char truth[1024]; CCNxName *prefix = ccnxName_CreateFromURI("lci:/howdie/stranger"); unsigned ifidx = 55; CPIAddress *nexthop = cpiAddress_CreateFromInet(&(struct sockaddr_in) { .sin_addr.s_addr = 0x01020304 }); struct timeval lifetime = { 3600, 0 }; unsigned cost = 200; CPIRouteEntry *route = cpiRouteEntry_Create(prefix, ifidx, nexthop, cpiNameRouteProtocolType_STATIC, cpiNameRouteType_LONGEST_MATCH, &lifetime, cost); CCNxControl *control = ccnxControl_CreateAddRouteRequest(route); // get its sequence number uint64_t seqnum = cpi_GetSequenceNumber(control); sprintf(truth, truth_format, seqnum); PARCJSON *test_json = ccnxControl_GetJson(control); char *test = parcJSON_ToCompactString(test_json); assertTrue(strcasecmp(truth, test) == 0, "Expected '%s', actual '%s'", truth, test); parcMemory_Deallocate((void **) &test); ccnxControl_Release(&control); cpiRouteEntry_Destroy(&route); cpiAddress_Destroy(&nexthop); }