]>
git.ipfire.org Git - thirdparty/systemd.git/blob - src/test/test-local-addresses.c
1 /* SPDX-License-Identifier: LGPL-2.1+ */
6 #include "alloc-util.h"
7 #include "in-addr-util.h"
8 #include "local-addresses.h"
11 static void print_local_addresses(struct local_address
*a
, unsigned n
) {
14 for (i
= 0; i
< n
; i
++) {
15 _cleanup_free_
char *b
= NULL
;
17 assert_se(in_addr_to_string(a
[i
].family
, &a
[i
].address
, &b
) >= 0);
18 printf("%s if%i scope=%i metric=%u address=%s\n", af_to_name(a
[i
].family
), a
[i
].ifindex
, a
[i
].scope
, a
[i
].metric
, b
);
22 int main(int argc
, char *argv
[]) {
23 struct local_address
*a
;
26 test_setup_logging(LOG_DEBUG
);
29 n
= local_addresses(NULL
, 0, AF_UNSPEC
, &a
);
32 printf("Local Addresses:\n");
33 print_local_addresses(a
, (unsigned) n
);
36 n
= local_gateways(NULL
, 0, AF_UNSPEC
, &a
);
39 printf("Local Gateways:\n");
40 print_local_addresses(a
, (unsigned) n
);