Free (GPLv2) TCP/IP stack developed by TASS Belgium

Fork of PicoTCP by Daniele Lacamera

libraries/picotcp/modules/pico_dhcp_client.h

Committer:
daniele
Date:
2013-04-25
Revision:
0:d7f2341ab245

File content as of revision 0:d7f2341ab245:

/*********************************************************************
PicoTCP. Copyright (c) 2012 TASS Belgium NV. Some rights reserved.
See LICENSE and COPYING for usage.

.

*********************************************************************/
#ifndef _INCLUDE_PICO_DHCP_CLIENT
#define _INCLUDE_PICO_DHCP_CLIENT


#include "pico_dhcp_common.h"
#include "pico_addressing.h"
#include "pico_protocol.h"


uint32_t pico_dhcp_initiate_negotiation(struct pico_device *device, void (*callback)(void* cli, int code));
void pico_dhcp_process_incoming_message(uint8_t *data, int len);
struct pico_ip4 pico_dhcp_get_address(void *cli);
struct pico_ip4 pico_dhcp_get_gateway(void *cli);

/* possible codes for the callback */
#define PICO_DHCP_SUCCESS 0
#define PICO_DHCP_ERROR   1
#define PICO_DHCP_RESET   2

/* DHCP EVENT TYPE 
 * these come after the message types, used for the state machine*/
#define PICO_DHCP_EVENT_T1                   9
#define PICO_DHCP_EVENT_T2                   10
#define PICO_DHCP_EVENT_LEASE                11
#define PICO_DHCP_EVENT_RETRANSMIT           12

#endif