uIP 1.0 based webserver for LPC1114 + ENC28J60

Dependencies:   mbed TMP102

Committer:
ban4jp
Date:
Mon Jun 30 16:00:08 2014 +0000
Revision:
3:a2715e9c7737
Parent:
0:685224d2f66d
backported from Contiki 2.7

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ban4jp 0:685224d2f66d 1 /*
ban4jp 0:685224d2f66d 2 * Copyright (c) 2004, Adam Dunkels and the Swedish Institute of
ban4jp 0:685224d2f66d 3 * Computer Science.
ban4jp 0:685224d2f66d 4 * All rights reserved.
ban4jp 0:685224d2f66d 5 *
ban4jp 0:685224d2f66d 6 * Redistribution and use in source and binary forms, with or without
ban4jp 0:685224d2f66d 7 * modification, are permitted provided that the following conditions
ban4jp 0:685224d2f66d 8 * are met:
ban4jp 0:685224d2f66d 9 * 1. Redistributions of source code must retain the above copyright
ban4jp 0:685224d2f66d 10 * notice, this list of conditions and the following disclaimer.
ban4jp 0:685224d2f66d 11 * 2. Redistributions in binary form must reproduce the above copyright
ban4jp 0:685224d2f66d 12 * notice, this list of conditions and the following disclaimer in the
ban4jp 0:685224d2f66d 13 * documentation and/or other materials provided with the distribution.
ban4jp 0:685224d2f66d 14 * 3. The name of the author may not be used to endorse or promote
ban4jp 0:685224d2f66d 15 * products derived from this software without specific prior
ban4jp 0:685224d2f66d 16 * written permission.
ban4jp 0:685224d2f66d 17 *
ban4jp 0:685224d2f66d 18 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
ban4jp 0:685224d2f66d 19 * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
ban4jp 0:685224d2f66d 20 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ban4jp 0:685224d2f66d 21 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
ban4jp 0:685224d2f66d 22 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
ban4jp 0:685224d2f66d 23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
ban4jp 0:685224d2f66d 24 * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
ban4jp 0:685224d2f66d 25 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
ban4jp 0:685224d2f66d 26 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
ban4jp 0:685224d2f66d 27 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
ban4jp 0:685224d2f66d 28 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
ban4jp 0:685224d2f66d 29 *
ban4jp 0:685224d2f66d 30 * This file is part of the uIP TCP/IP stack
ban4jp 0:685224d2f66d 31 *
ban4jp 0:685224d2f66d 32 * $Id: uiplib.c,v 1.2 2006/06/12 08:00:31 adam Exp $
ban4jp 0:685224d2f66d 33 *
ban4jp 0:685224d2f66d 34 */
ban4jp 0:685224d2f66d 35
ban4jp 0:685224d2f66d 36
ban4jp 0:685224d2f66d 37 #include "uip.h"
ban4jp 0:685224d2f66d 38 #include "uiplib.h"
ban4jp 0:685224d2f66d 39
ban4jp 0:685224d2f66d 40
ban4jp 0:685224d2f66d 41 /*-----------------------------------------------------------------------------------*/
ban4jp 0:685224d2f66d 42 unsigned char
ban4jp 0:685224d2f66d 43 uiplib_ipaddrconv(char *addrstr, unsigned char *ipaddr)
ban4jp 0:685224d2f66d 44 {
ban4jp 0:685224d2f66d 45 unsigned char tmp;
ban4jp 0:685224d2f66d 46 char c;
ban4jp 0:685224d2f66d 47 unsigned char i, j;
ban4jp 0:685224d2f66d 48
ban4jp 0:685224d2f66d 49 tmp = 0;
ban4jp 0:685224d2f66d 50
ban4jp 0:685224d2f66d 51 for(i = 0; i < 4; ++i) {
ban4jp 0:685224d2f66d 52 j = 0;
ban4jp 0:685224d2f66d 53 do {
ban4jp 0:685224d2f66d 54 c = *addrstr;
ban4jp 0:685224d2f66d 55 ++j;
ban4jp 0:685224d2f66d 56 if(j > 4) {
ban4jp 0:685224d2f66d 57 return 0;
ban4jp 0:685224d2f66d 58 }
ban4jp 0:685224d2f66d 59 if(c == '.' || c == 0) {
ban4jp 0:685224d2f66d 60 *ipaddr = tmp;
ban4jp 0:685224d2f66d 61 ++ipaddr;
ban4jp 0:685224d2f66d 62 tmp = 0;
ban4jp 0:685224d2f66d 63 } else if(c >= '0' && c <= '9') {
ban4jp 0:685224d2f66d 64 tmp = (tmp * 10) + (c - '0');
ban4jp 0:685224d2f66d 65 } else {
ban4jp 0:685224d2f66d 66 return 0;
ban4jp 0:685224d2f66d 67 }
ban4jp 0:685224d2f66d 68 ++addrstr;
ban4jp 0:685224d2f66d 69 } while(c != '.' && c != 0);
ban4jp 0:685224d2f66d 70 }
ban4jp 0:685224d2f66d 71 return 1;
ban4jp 0:685224d2f66d 72 }
ban4jp 0:685224d2f66d 73
ban4jp 0:685224d2f66d 74 /*-----------------------------------------------------------------------------------*/