diff --git a/cmd/lwip/ping.c b/cmd/lwip/ping.c index 6d090fc530d..fc4cf7bde5f 100644 --- a/cmd/lwip/ping.c +++ b/cmd/lwip/ping.c @@ -35,7 +35,7 @@ static u8_t ping_recv(void *arg, struct raw_pcb *pcb, struct pbuf *p, struct ping_ctx *ctx = arg; struct icmp_echo_hdr *iecho = ctx->iecho; - if (addr->addr != ctx->target.addr) + if (!ip_addr_eq(addr, &ctx->target)) return 0; if ((p->tot_len >= (IP_HLEN + sizeof(struct icmp_echo_hdr))) && diff --git a/net/lwip/dhcp.c b/net/lwip/dhcp.c index 731b57de3ba..4cd4184c42b 100644 --- a/net/lwip/dhcp.c +++ b/net/lwip/dhcp.c @@ -93,13 +93,13 @@ static int dhcp_loop(struct udevice *udev) sprintf(maskstr, "netmask%d", idx); sprintf(gwstr, "gatewayip%d", idx); } else { - net_ip.s_addr = dhcp->offered_ip_addr.addr; + net_ip.s_addr = ip_addr_get_ip4_u32(&dhcp->offered_ip_addr); } env_set(ipstr, ip4addr_ntoa(&dhcp->offered_ip_addr)); env_set(maskstr, ip4addr_ntoa(&dhcp->offered_sn_mask)); env_set("serverip", ip4addr_ntoa(&dhcp->server_ip_addr)); - if (dhcp->offered_gw_addr.addr != 0) + if (!ip4_addr_isany(&dhcp->offered_gw_addr)) env_set(gwstr, ip4addr_ntoa(&dhcp->offered_gw_addr)); #ifdef CONFIG_PROT_DNS_LWIP diff --git a/net/lwip/dns.c b/net/lwip/dns.c index 2222e2b0b04..8b7b3b7f970 100644 --- a/net/lwip/dns.c +++ b/net/lwip/dns.c @@ -28,13 +28,10 @@ static void dns_cb(const char *name, const ip_addr_t *ipaddr, void *arg) dns_cb_arg->done = true; - if (!ipaddr) { + if (!ipaddr) printf("DNS: host not found\n"); - dns_cb_arg->host_ipaddr.addr = 0; - return; - } - dns_cb_arg->host_ipaddr.addr = ipaddr->addr; + ip_addr_set(&dns_cb_arg->host_ipaddr, ipaddr); } static int dns_loop(struct udevice *udev, const char *name, const char *var) @@ -78,7 +75,7 @@ static int dns_loop(struct udevice *udev, const char *name, const char *var) net_lwip_remove_netif(netif); - if (dns_cb_arg.done && dns_cb_arg.host_ipaddr.addr != 0) { + if (dns_cb_arg.done && !ip_addr_isany(&dns_cb_arg.host_ipaddr)) { ipstr = ipaddr_ntoa(&dns_cb_arg.host_ipaddr); if (var) env_set(var, ipstr); diff --git a/net/lwip/nfs.c b/net/lwip/nfs.c index 5fc2d3bd873..1812bbda68e 100644 --- a/net/lwip/nfs.c +++ b/net/lwip/nfs.c @@ -59,7 +59,7 @@ static void nfs_recv(void *arg, struct udp_pcb *pcb, struct pbuf *p, int plen; struct rpc_t rpc_pkt; - if (addr->addr != ctx->nfs_server.addr) + if (!ip_addr_eq(addr, &ctx->nfs_server)) goto exitfree; if (p->tot_len > sizeof(struct rpc_t)) @@ -120,7 +120,7 @@ static int nfs_loop(struct udevice *udev, ulong addr, char *fname, printf("Using %s device\n", udev->name); printf("File transfer via NFS from server %s; our IP address is %s\n", - ip4addr_ntoa(&srvip), env_get("ipaddr")); + ipaddr_ntoa(&srvip), env_get("ipaddr")); printf("\nFilename '%s/%s'.", nfs_path, nfs_filename); @@ -144,7 +144,7 @@ static int nfs_loop(struct udevice *udev, ulong addr, char *fname, net_set_state(NETLOOP_CONTINUE); - sess_ctx.nfs_server.addr = srvip.addr; + ip_addr_set(&sess_ctx.nfs_server, &srvip); nfs_send(); diff --git a/net/lwip/tftp.c b/net/lwip/tftp.c index 6c7ffba661e..86516e66273 100644 --- a/net/lwip/tftp.c +++ b/net/lwip/tftp.c @@ -180,7 +180,7 @@ static int tftp_loop(struct udevice *udev, ulong addr, char *fname, printf("Using %s device\n", udev->name); printf("TFTP from server %s; our IP address is %s\n", - ip4addr_ntoa(&srvip), env_get("ipaddr")); + ipaddr_ntoa(&srvip), env_get("ipaddr")); printf("Filename '%s'.\n", fname); printf("Load address: 0x%lx\n", ctx.daddr); printf("Loading: ");