LIBSSDP
 All Classes Files Functions Variables Typedefs Macros
net_utils.h
Go to the documentation of this file.
1 
7 #ifndef __NET_UTILS_H__
8 #define __NET_UTILS_H__
9 
10 #include <sys/socket.h>
11 #include <netinet/in.h>
12 
13 #include "common_definitions.h"
14 
23 int parse_address(const char *raw_address, struct sockaddr_storage *address);
24 
38 BOOL parse_url(const char *url, char *ip, int ip_size, int *port, char *rest,
39  int rest_size);
40 
50 int find_interface(struct sockaddr_storage *saddr, const char *interface,
51  const char *address);
52 
67 char *get_mac_address_from_socket(const SOCKET sock,
68  const struct sockaddr_storage *sa_ip, const char *ip, char *mac_buffer);
69 
79 BOOL is_address_multicast(const char *address);
80 
91 char *get_ip_from_sock_address(const struct sockaddr_storage *saddr,
92  char *ip_buffer);
93 
101 inline BOOL is_address_ipv6(const char *ip);
102 
112 BOOL is_address_ipv6_ex(const char *ip, struct sockaddr_in6 *saddr6);
113 
121 inline BOOL is_address_ipv4(const char *ip);
122 
132 BOOL is_address_ipv4_ex(const char *ip, struct sockaddr_in *saddr);
133 
144 BOOL set_ip_and_port_in_sock_address(const char *ip, int port,
145  struct sockaddr_storage *saddr);
146 
154 int get_port_from_sock_address(const struct sockaddr_storage *saddr);
155 
156 #endif /* __NET_UTILS_H__ */
BOOL parse_url(const char *url, char *ip, int ip_size, int *port, char *rest, int rest_size)
Definition: net_utils.c:107
int parse_address(const char *raw_address, struct sockaddr_storage *address)
Definition: net_utils.c:33
int SOCKET
int find_interface(struct sockaddr_storage *saddr, const char *interface, const char *address)
Definition: net_utils.c:192
char * get_mac_address_from_socket(const SOCKET sock, const struct sockaddr_storage *sa_ip, const char *ip, char *mac_buffer)
Definition: net_utils.c:455
BOOL is_address_multicast(const char *address)
Definition: net_utils.c:583
BOOL set_ip_and_port_in_sock_address(const char *ip, int port, struct sockaddr_storage *saddr)
Definition: net_utils.c:689
BOOL is_address_ipv4(const char *ip)
Definition: net_utils.c:674
BOOL is_address_ipv6_ex(const char *ip, struct sockaddr_in6 *saddr6)
Definition: net_utils.c:665
BOOL is_address_ipv4_ex(const char *ip, struct sockaddr_in *saddr)
Definition: net_utils.c:680
BOOL is_address_ipv6(const char *ip)
Definition: net_utils.c:659
int BOOL
int get_port_from_sock_address(const struct sockaddr_storage *saddr)
Definition: net_utils.c:729
char * get_ip_from_sock_address(const struct sockaddr_storage *saddr, char *ip_buffer)
Definition: net_utils.c:621