#endif /* ! HAVE_INET_NTOP */
const char *
-inet_sutop (union sockunion *su, char *str)
+inet_sutop (const union sockunion *su, char *str)
{
switch (su->sa.sa_family)
{
}
const char *
-sockunion2str (union sockunion *su, char *buf, size_t len)
+sockunion2str (const union sockunion *su, char *buf, size_t len)
{
switch (sockunion_family(su))
{
/* return sockunion structure : this function should be revised. */
static const char *
-sockunion_log (union sockunion *su, char *buf, size_t len)
+sockunion_log (const union sockunion *su, char *buf, size_t len)
{
switch (su->sa.sa_family)
{
/* Return socket of sockunion. */
int
-sockunion_socket (union sockunion *su)
+sockunion_socket (const union sockunion *su)
{
int sock;
/* Return sizeof union sockunion. */
static int
-sockunion_sizeof (union sockunion *su)
+sockunion_sizeof (const union sockunion *su)
{
int ret;
0 : connect success
1 : connect is in progress */
enum connect_result
-sockunion_connect (int fd, union sockunion *peersu, unsigned short port,
+sockunion_connect (int fd, const union sockunion *peersu, unsigned short port,
unsigned int ifindex)
{
int ret;
/* Print sockunion structure */
static void __attribute__ ((unused))
-sockunion_print (union sockunion *su)
+sockunion_print (const union sockunion *su)
{
if (su == NULL)
return;
#ifdef HAVE_IPV6
static int
-in6addr_cmp (struct in6_addr *addr1, struct in6_addr *addr2)
+in6addr_cmp (const struct in6_addr *addr1, const struct in6_addr *addr2)
{
unsigned int i;
const u_char *p1, *p2;
#endif /* HAVE_IPV6 */
int
-sockunion_cmp (union sockunion *su1, union sockunion *su2)
+sockunion_cmp (const union sockunion *su1, const union sockunion *su2)
{
if (su1->sa.sa_family > su2->sa.sa_family)
return 1;
/* Duplicate sockunion. */
union sockunion *
-sockunion_dup (union sockunion *su)
+sockunion_dup (const union sockunion *su)
{
union sockunion *dup = XCALLOC (MTYPE_SOCKUNION, sizeof (union sockunion));
memcpy (dup, su, sizeof (union sockunion));
/* Prototypes. */
extern int str2sockunion (const char *, union sockunion *);
-extern const char *sockunion2str (union sockunion *, char *, size_t);
-extern int sockunion_cmp (union sockunion *, union sockunion *);
+extern const char *sockunion2str (const union sockunion *, char *, size_t);
+extern int sockunion_cmp (const union sockunion *, const union sockunion *);
extern int sockunion_same (const union sockunion *, const union sockunion *);
extern unsigned int sockunion_hash (const union sockunion *);
extern int sockopt_minttl (int family, int sock, int minttl);
extern int sockopt_cork (int sock, int onoff);
extern int sockopt_mark_default(int sock, int mark, struct zebra_privs_t *);
-extern int sockunion_socket (union sockunion *su);
-extern const char *inet_sutop (union sockunion *su, char *str);
-extern enum connect_result sockunion_connect (int fd, union sockunion *su,
+extern int sockunion_socket (const union sockunion *su);
+extern const char *inet_sutop (const union sockunion *su, char *str);
+extern enum connect_result sockunion_connect (int fd, const union sockunion *su,
unsigned short port,
unsigned int);
extern union sockunion *sockunion_getsockname (int);
extern union sockunion *sockunion_getpeername (int);
-extern union sockunion *sockunion_dup (union sockunion *);
+extern union sockunion *sockunion_dup (const union sockunion *);
extern void sockunion_free (union sockunion *);
extern void sockunion_init (union sockunion *);