version 1.28, 1999/06/26 21:21:46 |
version 1.29, 1999/09/22 05:10:04 |
|
|
|
|
#define kget(p, d) (kread((u_long)(p), (char *)&(d), sizeof (d))) |
#define kget(p, d) (kread((u_long)(p), (char *)&(d), sizeof (d))) |
|
|
|
/* alignment constraint for routing socket */ |
|
#define ROUNDUP(a) \ |
|
((a) > 0 ? (1 + (((a) - 1) | (sizeof(long) - 1))) : sizeof(long)) |
|
#define ADVANCE(x, n) (x += ROUNDUP((n)->sa_len)) |
|
|
/* |
/* |
* Definitions for showing gateway flags. |
* Definitions for showing gateway flags. |
*/ |
*/ |
|
|
static union { |
static union { |
struct sockaddr u_sa; |
struct sockaddr u_sa; |
u_int32_t u_data[64]; |
u_int32_t u_data[64]; |
|
int u_dummy; /* force word-alignment */ |
} pt_u; |
} pt_u; |
|
|
int do_rtent = 0; |
int do_rtent = 0; |
|
|
p_sockaddr(sa, 0, 0, 36); |
p_sockaddr(sa, 0, 0, 36); |
else { |
else { |
p_sockaddr(sa, 0, rtm->rtm_flags, 16); |
p_sockaddr(sa, 0, rtm->rtm_flags, 16); |
if (sa->sa_len == 0) |
sa = (struct sockaddr *)(ROUNDUP(sa->sa_len) + (char *)sa); |
sa->sa_len = sizeof(in_addr_t); |
|
sa = (struct sockaddr *)(sa->sa_len + (char *)sa); |
|
p_sockaddr(sa, 0, 0, 18); |
p_sockaddr(sa, 0, 0, 18); |
} |
} |
p_flags(rtm->rtm_flags & interesting, "%-6.6s "); |
p_flags(rtm->rtm_flags & interesting, "%-6.6s "); |