Changeset View
Changeset View
Standalone View
Standalone View
usr.bin/netstat/unix.c
Show First 20 Lines • Show All 147 Lines • ▼ Show 20 Lines | #define KREAD(off, buf, len) do { \ | ||||
xug.xug_gen = unp_gencnt; | xug.xug_gen = unp_gencnt; | ||||
xug.xug_sogen = 0; | xug.xug_sogen = 0; | ||||
COPYOUT(&xug, sizeof xug); | COPYOUT(&xug, sizeof xug); | ||||
/* Walk the PCB list. */ | /* Walk the PCB list. */ | ||||
xu.xu_len = sizeof xu; | xu.xu_len = sizeof xu; | ||||
KREAD(head_off, &head, sizeof(head)); | KREAD(head_off, &head, sizeof(head)); | ||||
LIST_FOREACH(unp, &head, unp_link) { | LIST_FOREACH(unp, &head, unp_link) { | ||||
xu.xu_unpp = unp; | xu.xu_unpp = (int64_t)unp; | ||||
KREAD(unp, &unp0, sizeof (*unp)); | KREAD(unp, &unp0, sizeof (*unp)); | ||||
unp = &unp0; | unp = &unp0; | ||||
if (unp->unp_gencnt > unp_gencnt) | if (unp->unp_gencnt > unp_gencnt) | ||||
continue; | continue; | ||||
if (unp->unp_addr != NULL) { | if (unp->unp_addr != NULL) { | ||||
KREAD(unp->unp_addr, &sun_len, sizeof(sun_len)); | KREAD(unp->unp_addr, &sun_len, sizeof(sun_len)); | ||||
KREAD(unp->unp_addr, &xu.xu_addr, sun_len); | KREAD(unp->unp_addr, &xu.xu_addr, sun_len); | ||||
▲ Show 20 Lines • Show All 165 Lines • Show Last 20 Lines |