version 1.1, 1997/07/23 16:07:56 |
version 1.2, 1998/06/23 22:40:39 |
|
|
const struct sockaddr *mask; |
const struct sockaddr *mask; |
int what; |
int what; |
{ |
{ |
int n; |
size_t n, l; |
static char buf[100]; |
static char buf[100]; |
struct sockaddr_at *sat1, *sat2; |
struct sockaddr_at *sat1, *sat2; |
struct sockaddr_at thesockaddr; |
struct sockaddr_at thesockaddr; |
|
|
thesockaddr.sat_addr.s_net = sat1->sat_addr.s_net & |
thesockaddr.sat_addr.s_net = sat1->sat_addr.s_net & |
sat2->sat_addr.s_net; |
sat2->sat_addr.s_net; |
n = snprintf(buf, sizeof(buf), "%s", atalk_print(sa2, 1 | (what & 8))); |
n = snprintf(buf, sizeof(buf), "%s", atalk_print(sa2, 1 | (what & 8))); |
|
if (n >= sizeof(buf)) |
|
n = sizeof(buf) - 1; |
if (sat2->sat_addr.s_net != 0xFFFF) { |
if (sat2->sat_addr.s_net != 0xFFFF) { |
thesockaddr.sat_addr.s_net = sat1->sat_addr.s_net | |
thesockaddr.sat_addr.s_net = sat1->sat_addr.s_net | |
~sat2->sat_addr.s_net; |
~sat2->sat_addr.s_net; |
n += snprintf(buf + n, sizeof(buf) - n, |
l = snprintf(buf + n, sizeof(buf) - n, |
"-%s", atalk_print(sa2, 1 | (what & 8))); |
"-%s", atalk_print(sa2, 1 | (what & 8))); |
|
if (l >= sizeof(buf) - n) |
|
l = sizeof(buf) - n - 1; |
|
n += l; |
} |
} |
if (what & 2) |
if (what & 2) { |
n += snprintf(buf + n, sizeof(buf) - n, ".%s", |
l = snprintf(buf + n, sizeof(buf) - n, ".%s", |
atalk_print(sa, what & (~1))); |
atalk_print(sa, what & (~1))); |
|
if (l >= sizeof(buf) - n) |
|
l = sizeof(buf) - n - 1; |
|
n += l; |
|
} |
return (buf); |
return (buf); |
} |
} |
|
|