socat/xio-ip6.h

55 lines
2.3 KiB
C
Raw Normal View History

2008-01-28 21:37:16 +00:00
/* source: xio-ip6.h */
/* Copyright Gerhard Rieger and contributors (see file CHANGES) */
2008-01-27 12:00:08 +00:00
/* Published under the GNU General Public License V.2, see file COPYING */
#ifndef __xio_ip6_h_included
#define __xio_ip6_h_included 1
#if WITH_IP6
#ifndef INET6_ADDRSTRLEN
# define INET6_ADDRSTRLEN 46
#endif
2008-01-27 12:00:08 +00:00
extern const struct optdesc opt_ipv6_v6only;
extern const struct optdesc opt_ipv6_join_group;
2023-06-24 08:40:07 +00:00
extern const struct optdesc opt_ipv6_join_source_group;
2008-09-22 20:17:55 +00:00
extern const struct optdesc opt_ipv6_pktinfo;
extern const struct optdesc opt_ipv6_recvpktinfo;
extern const struct optdesc opt_ipv6_rthdr;
extern const struct optdesc opt_ipv6_recvrthdr;
extern const struct optdesc opt_ipv6_authhdr;
extern const struct optdesc opt_ipv6_dstopts;
extern const struct optdesc opt_ipv6_recvdstopts;
extern const struct optdesc opt_ipv6_hopopts;
extern const struct optdesc opt_ipv6_unicast_hops;
extern const struct optdesc opt_ipv6_recvhopopts;
extern const struct optdesc opt_ipv6_flowinfo;
extern const struct optdesc opt_ipv6_hoplimit;
extern const struct optdesc opt_ipv6_recvhoplimit;
extern const struct optdesc opt_ipv6_recverr;
extern const struct optdesc opt_ipv6_tclass;
extern const struct optdesc opt_ipv6_recvtclass;
extern const struct optdesc opt_ipv6_recvpathmtu;
2008-01-27 12:00:08 +00:00
extern int xioip6_pton(const char *src, struct in6_addr *dst, const int ai_flags[2], const unsigned long res_opts[2]);
extern int xioparsenetwork_ip6(const char *rangename, struct xiorange *range, const int ai_flags[2], const unsigned long res_opts[2]);
extern int xiorange_ip6andmask(struct xiorange *range);
2008-01-27 12:00:08 +00:00
extern
int xiocheckrange_ip6(struct sockaddr_in6 *pa, struct xiorange *range);
2008-09-22 20:17:55 +00:00
extern
int xiolog_ancillary_ip6(struct single *sfd, struct cmsghdr *cmsg, int *num, char *typbuff, int typlen, char *nambuff, int namlen, char *envbuff, int envlen, char *valbuff, int vallen);
2008-09-22 20:17:55 +00:00
extern int
xiosetsockaddrenv_ip6(int idx, char *namebuff, size_t namelen,
char *valuebuff, size_t valuelen,
struct sockaddr_in6 *sa, int ipproto);
extern int xioapply_ipv6_join_group(xiosingle_t *xfd, struct opt *opt);
2008-01-27 12:00:08 +00:00
2023-06-24 08:40:07 +00:00
extern int xiotype_ip6_join_source_group(char* token, const struct optname *ent, struct opt *opt);
extern int xioapply_ip6_join_source_group(struct single *xfd, struct opt *opt);
2008-01-27 12:00:08 +00:00
#endif /* WITH_IP6 */
#endif /* !defined(__xio_ip6_h_included) */