MCPcopy Create free account
hub / github.com/F-Stack/f-stack / in_lltable_new

Function in_lltable_new

freebsd/netinet/in.c:1292–1314  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1290}
1291
1292static struct llentry *
1293in_lltable_new(struct in_addr addr4, u_int flags)
1294{
1295 struct in_llentry *lle;
1296
1297 lle = malloc(sizeof(struct in_llentry), M_LLTABLE, M_NOWAIT | M_ZERO);
1298 if (lle == NULL) /* NB: caller generates msg */
1299 return NULL;
1300
1301 /*
1302 * For IPv4 this will trigger "arpresolve" to generate
1303 * an ARP request.
1304 */
1305 lle->base.la_expire = time_uptime; /* mark expired */
1306 lle->base.r_l3addr.addr4 = addr4;
1307 lle->base.lle_refcnt = 1;
1308 lle->base.lle_free = in_lltable_destroy_lle;
1309 LLE_LOCK_INIT(&lle->base);
1310 LLE_REQ_INIT(&lle->base);
1311 callout_init(&lle->base.lle_timer, 1);
1312
1313 return (&lle->base);
1314}
1315
1316#define IN_ARE_MASKED_ADDR_EQUAL(d, a, m) ( \
1317 ((((d).s_addr ^ (a).s_addr) & (m).s_addr)) == 0 )

Callers 1

in_lltable_allocFunction · 0.85

Calls 2

mallocFunction · 0.85
callout_initFunction · 0.50

Tested by

no test coverage detected