diff options
Diffstat (limited to 'usr.sbin/rtadvd/if.h')
-rw-r--r-- | usr.sbin/rtadvd/if.h | 41 |
1 files changed, 22 insertions, 19 deletions
diff --git a/usr.sbin/rtadvd/if.h b/usr.sbin/rtadvd/if.h index 216eaa044ef6..6efdd562fb44 100644 --- a/usr.sbin/rtadvd/if.h +++ b/usr.sbin/rtadvd/if.h @@ -4,7 +4,7 @@ /* * Copyright (C) 1995, 1996, 1997, 1998, and 1999 WIDE Project. * All rights reserved. - * + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -16,7 +16,7 @@ * 3. Neither the name of the project nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. - * + * * THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE @@ -30,29 +30,32 @@ * SUCH DAMAGE. */ -#define RTADV_TYPE2BITMASK(type) (0x1 << type) +#define UPDATE_IFINFO_ALL 0 -extern struct if_msghdr **iflist; -extern size_t ifblock_size; -extern char *ifblock; +struct sockinfo { + int si_fd; + const char *si_name; +}; + +extern struct sockinfo sock; +extern struct sockinfo rtsock; +extern struct sockinfo ctrlsock; -struct nd_opt_hdr; -struct sockaddr_dl *if_nametosdl(char *); -int if_getmtu(char *); -int if_getflags(int, int); int lladdropt_length(struct sockaddr_dl *); void lladdropt_fill(struct sockaddr_dl *, struct nd_opt_hdr *); int rtbuf_len(void); char *get_next_msg(char *, char *, int, size_t *, int); struct in6_addr *get_addr(char *); int get_rtm_ifindex(char *); -int get_ifm_ifindex(char *); -int get_ifam_ifindex(char *); -int get_ifm_flags(char *); int get_prefixlen(char *); -int prefixlen(u_char *, u_char *); -int rtmsg_type(char *); -int ifmsg_type(char *); -int rtmsg_len(char *); -int ifmsg_len(char *); -void init_iflist(void); +int prefixlen(unsigned char *, unsigned char *); + +struct ifinfo *update_ifinfo(struct ifilist_head_t *, int); +int update_ifinfo_nd_flags(struct ifinfo *); +struct ifinfo *update_persist_ifinfo(struct ifilist_head_t *, + const char *); + +int sock_mc_join(struct sockinfo *, int); +int sock_mc_leave(struct sockinfo *, int); +int sock_mc_rr_update(struct sockinfo *, char *); +int getinet6sysctl(int); |