#include "dce-netdb.h"
#include "utils.h"
#include "dce-stdlib.h"
#include "dce-string.h"
#include "ns3/assert.h"
#include "ns3/log.h"
#include "ns3/ipv4-address.h"
#include <string.h>
#include "process.h"
#include "errno.h"
#include <net/if.h>
#include <netinet/in.h>
#include <sys/types.h>
#include <ifaddrs.h>
#include <linux/netlink.h>
#include <linux/rtnetlink.h>
#include "sys/dce-socket.h"
#include "dce-unistd.h"
#include "dce-signal.h"
Go to the source code of this file.
Classes | |
struct | ifaddrs_storage |
struct | netlink_handle |
struct | netlink_res |
struct | sockaddr_ll_max |
Macros | |
#define | PAGE_SIZE 4096 |
Functions | |
static void | __netlink_free_handle (struct netlink_handle *h) |
void | dce_freeaddrinfo (struct addrinfo *res) |
const char * | dce_gai_strerror (int errcode) |
int | dce_getaddrinfo (const char *node, const char *service, const struct addrinfo *hints, struct addrinfo **res) |
struct hostent * | dce_gethostbyname (const char *name) |
struct hostent * | dce_gethostbyname2 (const char *name, int af) |
int | dce_getifaddrs (struct ifaddrs **ifap) |
int | dce_getnameinfo (const struct sockaddr *sa, socklen_t salen, char *host, socklen_t hostlen, char *serv, socklen_t servlen, unsigned int flags) |
void | dce_herror (const char *string) |
static int | map_newlink (int index, struct ifaddrs_storage *ifas, int *map, int max) |
static int | netlink_request (struct netlink_handle *h, int type) |
NS_LOG_COMPONENT_DEFINE ("DceNetdb") |
#define PAGE_SIZE 4096 |
Definition at line 242 of file dce-netdb.cc.
Referenced by netlink_request().
|
static |
Definition at line 413 of file dce-netdb.cc.
References ns3::Current(), ns3::Thread::err, errno, netlink_res::next, and netlink_handle::nlm_list.
Referenced by dce_getifaddrs().
void dce_freeaddrinfo | ( | struct addrinfo * | res | ) |
Definition at line 106 of file dce-netdb.cc.
References ns3::Current(), dce_free(), and ns3::UtilsGetNodeId().
const char* dce_gai_strerror | ( | int | errcode | ) |
Definition at line 122 of file dce-netdb.cc.
References ns3::Current(), and ns3::UtilsGetNodeId().
int dce_getaddrinfo | ( | const char * | node, |
const char * | service, | ||
const struct addrinfo * | hints, | ||
struct addrinfo ** | res | ||
) |
Definition at line 55 of file dce-netdb.cc.
References ns3::Current(), dce_malloc(), dce_strdup(), and ns3::UtilsGetNodeId().
|
read |
Definition at line 25 of file dce-netdb.cc.
References ns3::Current(), and ns3::UtilsGetNodeId().
Referenced by dce_gethostbyname2().
|
read |
Definition at line 50 of file dce-netdb.cc.
References dce_gethostbyname().
int dce_getifaddrs | ( | struct ifaddrs ** | ifap | ) |
Definition at line 436 of file dce-netdb.cc.
References __netlink_free_handle(), ifaddrs_storage::addr, ifaddrs_storage::broadaddr, ns3::Current(), dce_bind(), dce_close(), dce_getsockname(), dce_socket(), ns3::Thread::err, netlink_handle::fd, ifaddrs_storage::ifa, map_newlink(), ifaddrs_storage::name, netlink_request(), ifaddrs_storage::netmask, netlink_res::next, netlink_res::nlh, netlink_handle::nlm_list, netlink_handle::pid, ifaddrs_storage::s4, ifaddrs_storage::s6, ifaddrs_storage::sa, netlink_res::seq, netlink_handle::seq, netlink_res::size, ifaddrs_storage::sl, sockaddr_ll_max::sll_addr, sockaddr_ll_max::sll_family, sockaddr_ll_max::sll_halen, sockaddr_ll_max::sll_hatype, and sockaddr_ll_max::sll_ifindex.
int dce_getnameinfo | ( | const struct sockaddr * | sa, |
socklen_t | salen, | ||
char * | host, | ||
socklen_t | hostlen, | ||
char * | serv, | ||
socklen_t | servlen, | ||
unsigned int | flags | ||
) |
Definition at line 128 of file dce-netdb.cc.
References ns3::Current(), ns3::Thread::err, errno, and snprintf().
void dce_herror | ( | const char * | string | ) |
Definition at line 193 of file dce-netdb.cc.
References ns3::Current(), and ns3::UtilsGetNodeId().
|
static |
Definition at line 387 of file dce-netdb.cc.
References dce_abort(), and ifaddrs_storage::ifa.
Referenced by dce_getifaddrs().
|
static |
Definition at line 244 of file dce-netdb.cc.
References dce_free(), dce_malloc(), dce_recvmsg(), dce_sendto(), netlink_handle::end_ptr, errno, netlink_handle::fd, netlink_res::next, netlink_res::nlh, netlink_handle::nlm_list, PAGE_SIZE, netlink_handle::pid, netlink_res::seq, netlink_handle::seq, and netlink_res::size.
Referenced by dce_getifaddrs().
NS_LOG_COMPONENT_DEFINE | ( | "DceNetdb" | ) |