blob: 8d66163159c60d706b80c9f37d2594878d456a52 [file] [log] [blame]
Dirk Behme6a45e382010-01-03 08:33:58 +01001/*
2 * Generic network code. Moved from net.c
3 *
4 * Copyright 1994 - 2000 Neil Russell.
5 * Copyright 2000 Roland Borde
6 * Copyright 2000 Paolo Scaffardi
7 * Copyright 2000-2002 Wolfgang Denk, wd@denx.de
8 * Copyright 2009 Dirk Behme, dirk.behme@googlemail.com
9 *
Wolfgang Denk1a459662013-07-08 09:37:19 +020010 * SPDX-License-Identifier: GPL-2.0+
Dirk Behme6a45e382010-01-03 08:33:58 +010011 */
12
13#include <common.h>
14
Mike Frysinger908c6b62010-10-20 07:16:58 -040015IPaddr_t string_to_ip(const char *s)
Dirk Behme6a45e382010-01-03 08:33:58 +010016{
17 IPaddr_t addr;
18 char *e;
19 int i;
20
21 if (s == NULL)
22 return(0);
23
24 for (addr=0, i=0; i<4; ++i) {
25 ulong val = s ? simple_strtoul(s, &e, 10) : 0;
26 addr <<= 8;
27 addr |= (val & 0xFF);
28 if (s) {
29 s = (*e) ? e+1 : e;
30 }
31 }
32
33 return (htonl(addr));
34}