diff options
author | Thomas Graf <tgraf@suug.ch> | 2006-08-05 02:04:54 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-09-22 17:53:47 -0400 |
commit | 1823730fbc89fadde72a7bb3b7bdf03cc7b8835c (patch) | |
tree | c11f23e7cc15f47d61994fc370ece9841203dec2 /include/linux | |
parent | 47f68512d2685431f1781830dfcbab31bda87644 (diff) |
[IPv4]: Move interface address bits to linux/if_addr.h
Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/if_addr.h | 53 | ||||
-rw-r--r-- | include/linux/rtnetlink.h | 56 |
2 files changed, 53 insertions, 56 deletions
diff --git a/include/linux/if_addr.h b/include/linux/if_addr.h new file mode 100644 index 000000000000..e1590454db59 --- /dev/null +++ b/include/linux/if_addr.h | |||
@@ -0,0 +1,53 @@ | |||
1 | #ifndef __LINUX_IF_ADDR_H | ||
2 | #define __LINUX_IF_ADDR_H | ||
3 | |||
4 | #include <linux/netlink.h> | ||
5 | |||
6 | struct ifaddrmsg | ||
7 | { | ||
8 | __u8 ifa_family; | ||
9 | __u8 ifa_prefixlen; /* The prefix length */ | ||
10 | __u8 ifa_flags; /* Flags */ | ||
11 | __u8 ifa_scope; /* Address scope */ | ||
12 | __u32 ifa_index; /* Link index */ | ||
13 | }; | ||
14 | |||
15 | /* | ||
16 | * Important comment: | ||
17 | * IFA_ADDRESS is prefix address, rather than local interface address. | ||
18 | * It makes no difference for normally configured broadcast interfaces, | ||
19 | * but for point-to-point IFA_ADDRESS is DESTINATION address, | ||
20 | * local address is supplied in IFA_LOCAL attribute. | ||
21 | */ | ||
22 | enum | ||
23 | { | ||
24 | IFA_UNSPEC, | ||
25 | IFA_ADDRESS, | ||
26 | IFA_LOCAL, | ||
27 | IFA_LABEL, | ||
28 | IFA_BROADCAST, | ||
29 | IFA_ANYCAST, | ||
30 | IFA_CACHEINFO, | ||
31 | IFA_MULTICAST, | ||
32 | __IFA_MAX, | ||
33 | }; | ||
34 | |||
35 | #define IFA_MAX (__IFA_MAX - 1) | ||
36 | |||
37 | /* ifa_flags */ | ||
38 | #define IFA_F_SECONDARY 0x01 | ||
39 | #define IFA_F_TEMPORARY IFA_F_SECONDARY | ||
40 | |||
41 | #define IFA_F_DEPRECATED 0x20 | ||
42 | #define IFA_F_TENTATIVE 0x40 | ||
43 | #define IFA_F_PERMANENT 0x80 | ||
44 | |||
45 | struct ifa_cacheinfo | ||
46 | { | ||
47 | __u32 ifa_prefered; | ||
48 | __u32 ifa_valid; | ||
49 | __u32 cstamp; /* created timestamp, hundredths of seconds */ | ||
50 | __u32 tstamp; /* updated timestamp, hundredths of seconds */ | ||
51 | }; | ||
52 | |||
53 | #endif | ||
diff --git a/include/linux/rtnetlink.h b/include/linux/rtnetlink.h index bf353538ae93..890c4d4038b6 100644 --- a/include/linux/rtnetlink.h +++ b/include/linux/rtnetlink.h | |||
@@ -384,62 +384,6 @@ struct rta_session | |||
384 | }; | 384 | }; |
385 | 385 | ||
386 | 386 | ||
387 | /********************************************************* | ||
388 | * Interface address. | ||
389 | ****/ | ||
390 | |||
391 | struct ifaddrmsg | ||
392 | { | ||
393 | unsigned char ifa_family; | ||
394 | unsigned char ifa_prefixlen; /* The prefix length */ | ||
395 | unsigned char ifa_flags; /* Flags */ | ||
396 | unsigned char ifa_scope; /* See above */ | ||
397 | int ifa_index; /* Link index */ | ||
398 | }; | ||
399 | |||
400 | enum | ||
401 | { | ||
402 | IFA_UNSPEC, | ||
403 | IFA_ADDRESS, | ||
404 | IFA_LOCAL, | ||
405 | IFA_LABEL, | ||
406 | IFA_BROADCAST, | ||
407 | IFA_ANYCAST, | ||
408 | IFA_CACHEINFO, | ||
409 | IFA_MULTICAST, | ||
410 | __IFA_MAX | ||
411 | }; | ||
412 | |||
413 | #define IFA_MAX (__IFA_MAX - 1) | ||
414 | |||
415 | /* ifa_flags */ | ||
416 | |||
417 | #define IFA_F_SECONDARY 0x01 | ||
418 | #define IFA_F_TEMPORARY IFA_F_SECONDARY | ||
419 | |||
420 | #define IFA_F_DEPRECATED 0x20 | ||
421 | #define IFA_F_TENTATIVE 0x40 | ||
422 | #define IFA_F_PERMANENT 0x80 | ||
423 | |||
424 | struct ifa_cacheinfo | ||
425 | { | ||
426 | __u32 ifa_prefered; | ||
427 | __u32 ifa_valid; | ||
428 | __u32 cstamp; /* created timestamp, hundredths of seconds */ | ||
429 | __u32 tstamp; /* updated timestamp, hundredths of seconds */ | ||
430 | }; | ||
431 | |||
432 | |||
433 | #define IFA_RTA(r) ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct ifaddrmsg)))) | ||
434 | #define IFA_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct ifaddrmsg)) | ||
435 | |||
436 | /* | ||
437 | Important comment: | ||
438 | IFA_ADDRESS is prefix address, rather than local interface address. | ||
439 | It makes no difference for normally configured broadcast interfaces, | ||
440 | but for point-to-point IFA_ADDRESS is DESTINATION address, | ||
441 | local address is supplied in IFA_LOCAL attribute. | ||
442 | */ | ||
443 | 387 | ||
444 | /************************************************************** | 388 | /************************************************************** |
445 | * Neighbour discovery. | 389 | * Neighbour discovery. |