本文整理汇总了C++中IPAddress::get_ip_addr_t方法的典型用法代码示例。如果您正苦于以下问题:C++ IPAddress::get_ip_addr_t方法的具体用法?C++ IPAddress::get_ip_addr_t怎么用?C++ IPAddress::get_ip_addr_t使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IPAddress
的用法示例。
在下文中一共展示了IPAddress::get_ip_addr_t方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ping
int32_t MTD_FLASHMEM ICMP::ping(IPAddress const& dest)
{
static uint32_t const TIMEOUT = 4000;
static int32_t const TIMEOUT_RESULT = -1;
uint32_t result = TIMEOUT_RESULT;
// generate seq
m_waitingSeq++;
// prepare packet to send
pbuf* hdrbuf = pbuf_alloc(PBUF_IP, sizeof(icmp_echo_hdr), PBUF_RAM);
icmp_echo_hdr* hdr = (icmp_echo_hdr*)hdrbuf->payload;
hdr->type = ICMP_ECHO;
hdr->code = 0;
hdr->chksum = 0;
hdr->id = htons(m_waitingID);
hdr->seqno = htons(m_waitingSeq);
hdr->chksum = inet_chksum((uint16_t*)hdr, sizeof(icmp_echo_hdr));
// send Echo request
raw_pcb* pcb = raw_new(IP_PROTO_ICMP);
raw_recv(pcb, ICMP::raw_recv_fn, this);
raw_bind(pcb, IP_ADDR_ANY);
ip_addr_t addr = dest.get_ip_addr_t();
raw_sendto(pcb, hdrbuf, &addr);
pbuf_free(hdrbuf);
uint32_t t1 = micros();
if (m_queue.receive(TIMEOUT))
result = (micros() - t1);
raw_remove(pcb);
return result;
}
示例2: setDNSServer
void MTD_FLASHMEM NSLookup::setDNSServer(uint32_t num, IPAddress server)
{
ip_addr_t a = server.get_ip_addr_t();
dns_setserver(num, &a);
}