net/dhcp_v306.h File Reference


Data Structures

union  _DHCP_STATE

Defines

#define DHCP_CLIENT_PORT   (68)
#define DHCP_SERVER_PORT   (67)
#define DHCP_TIMEOUT   ((TICK16)2 * (TICK16)TICKS_PER_SECOND)
#define DHCPDisable()   (smDHCPState = SM_DHCP_DISABLED)
#define DHCPIsBound()   (DHCPState.bits.bIsBound)
#define STACK_IS_DHCP_ENABLED   (1)

Typedefs

typedef union _DHCP_STATE DHCP_STATE
typedef enum _SM_DHCP SM_DHCP

Enumerations

enum  _SM_DHCP {
  SM_DHCP_DISABLED = 0, SM_DHCP_GET_SOCKET, SM_DHCP_SEND_DISCOVERY, SM_DHCP_GET_OFFER,
  SM_DHCP_SEND_REQUEST, SM_DHCP_GET_REQUEST_ACK, SM_DHCP_BOUND, SM_DHCP_SEND_RENEW,
  SM_DHCP_GET_RENEW_ACK, SM_DHCP_SEND_RENEW2, SM_DHCP_GET_RENEW_ACK2, SM_DHCP_SEND_RENEW3,
  SM_DHCP_GET_RENEW_ACK3, SM_DHCP_DISABLED = 0, SM_DHCP_GET_SOCKET, SM_DHCP_SEND_DISCOVERY,
  SM_DHCP_GET_OFFER, SM_DHCP_SEND_REQUEST, SM_DHCP_GET_REQUEST_ACK, SM_DHCP_BOUND,
  SM_DHCP_SEND_RENEW, SM_DHCP_GET_RENEW_ACK, SM_DHCP_SEND_RENEW2, SM_DHCP_GET_RENEW_ACK2,
  SM_DHCP_SEND_RENEW3, SM_DHCP_GET_RENEW_ACK3, SM_DHCP_GET_SOCKET, SM_DHCP_SEND_DISCOVERY,
  SM_DHCP_GET_OFFER, SM_DHCP_SEND_REQUEST, SM_DHCP_GET_REQUEST_ACK, SM_DHCP_BOUND,
  SM_DHCP_SEND_RENEW, SM_DHCP_GET_RENEW_ACK, SM_DHCP_SEND_RENEW2, SM_DHCP_GET_RENEW_ACK2,
  SM_DHCP_SEND_RENEW3, SM_DHCP_GET_RENEW_ACK3, SM_DHCP_DISABLED, SM_DHCP_DISABLED = 0,
  SM_DHCP_GET_SOCKET, SM_DHCP_SEND_DISCOVERY, SM_DHCP_GET_OFFER, SM_DHCP_SEND_REQUEST,
  SM_DHCP_GET_REQUEST_ACK, SM_DHCP_BOUND, SM_DHCP_SEND_RENEW, SM_DHCP_GET_RENEW_ACK,
  SM_DHCP_SEND_RENEW2, SM_DHCP_GET_RENEW_ACK2, SM_DHCP_SEND_RENEW3, SM_DHCP_GET_RENEW_ACK3,
  SM_DHCP_INIT_FIRST_TIME, SM_DHCP_INIT, SM_DHCP_RESET_WAIT, SM_DHCP_BROADCAST,
  SM_DHCP_DISCOVER, SM_DHCP_REQUEST, SM_DHCP_BIND, SM_DHCP_BOUND,
  SM_DHCP_DISABLED
}

Functions

void DHCPReset (void)
void DHCPTask (void)

Variables

DHCP_STATE DHCPState
SM_DHCP smDHCPState

Define Documentation

#define DHCP_CLIENT_PORT   (68)

#define DHCP_SERVER_PORT   (67)

#define DHCP_TIMEOUT   ((TICK16)2 * (TICK16)TICKS_PER_SECOND)

#define DHCPDisable ( void   )     (smDHCPState = SM_DHCP_DISABLED)

Puts DHCPTask into unhandled state "SM_DHCP_DISABLED" and hence DHCP is effictively disabled. Note: This macro should be called before DHCPTask is called or else a UDP port will be kept open and there will be no task to process it.

 
#define DHCPIsBound (  )     (DHCPState.bits.bIsBound)

Checks is DHCP is bound

Returns:
TRUE if DHCP is bound to given configuration FALSE if DHCP has yet to be bound.

#define STACK_IS_DHCP_ENABLED   (1)


Typedef Documentation

typedef union _DHCP_STATE DHCP_STATE

typedef enum _SM_DHCP SM_DHCP


Enumeration Type Documentation

enum _SM_DHCP

Enumerator:
SM_DHCP_DISABLED 
SM_DHCP_GET_SOCKET 
SM_DHCP_SEND_DISCOVERY 
SM_DHCP_GET_OFFER 
SM_DHCP_SEND_REQUEST 
SM_DHCP_GET_REQUEST_ACK 
SM_DHCP_BOUND 
SM_DHCP_SEND_RENEW 
SM_DHCP_GET_RENEW_ACK 
SM_DHCP_SEND_RENEW2 
SM_DHCP_GET_RENEW_ACK2 
SM_DHCP_SEND_RENEW3 
SM_DHCP_GET_RENEW_ACK3 
SM_DHCP_DISABLED 
SM_DHCP_GET_SOCKET 
SM_DHCP_SEND_DISCOVERY 
SM_DHCP_GET_OFFER 
SM_DHCP_SEND_REQUEST 
SM_DHCP_GET_REQUEST_ACK 
SM_DHCP_BOUND 
SM_DHCP_SEND_RENEW 
SM_DHCP_GET_RENEW_ACK 
SM_DHCP_SEND_RENEW2 
SM_DHCP_GET_RENEW_ACK2 
SM_DHCP_SEND_RENEW3 
SM_DHCP_GET_RENEW_ACK3 
SM_DHCP_GET_SOCKET 
SM_DHCP_SEND_DISCOVERY 
SM_DHCP_GET_OFFER 
SM_DHCP_SEND_REQUEST 
SM_DHCP_GET_REQUEST_ACK 
SM_DHCP_BOUND 
SM_DHCP_SEND_RENEW 
SM_DHCP_GET_RENEW_ACK 
SM_DHCP_SEND_RENEW2 
SM_DHCP_GET_RENEW_ACK2 
SM_DHCP_SEND_RENEW3 
SM_DHCP_GET_RENEW_ACK3 
SM_DHCP_DISABLED 
SM_DHCP_DISABLED 
SM_DHCP_GET_SOCKET 
SM_DHCP_SEND_DISCOVERY 
SM_DHCP_GET_OFFER 
SM_DHCP_SEND_REQUEST 
SM_DHCP_GET_REQUEST_ACK 
SM_DHCP_BOUND 
SM_DHCP_SEND_RENEW 
SM_DHCP_GET_RENEW_ACK 
SM_DHCP_SEND_RENEW2 
SM_DHCP_GET_RENEW_ACK2 
SM_DHCP_SEND_RENEW3 
SM_DHCP_GET_RENEW_ACK3 
SM_DHCP_INIT_FIRST_TIME 
SM_DHCP_INIT 
SM_DHCP_RESET_WAIT 
SM_DHCP_BROADCAST 
SM_DHCP_DISCOVER 
SM_DHCP_REQUEST 
SM_DHCP_BIND 
SM_DHCP_BOUND 
SM_DHCP_DISABLED 


Function Documentation

void DHCPReset ( void   ) 

Closes any previously opened DHCP socket and resets DHCP state machine so that on next call to DHCPTask will result in new DHCP request.

void DHCPTask ( void   ) 

Fetches pending UDP packet from MAC receive buffer and dispatches it appropriate UDP socket. If not UDP socket is matched, UDP packet is silently discarded. Note: Caller must make sure that MAC receive buffer access pointer is set to begining of UDP packet. Required steps before calling this function is:

If ( MACIsRxReady() ) { MACGetHeader() If MACFrameType == IP IPGetHeader() if ( IPFrameType == IP_PROT_UDP ) Call DHCPTask() ... }

Pre-Condition:
: DHCPInit() is already called AND IPGetHeader() is called with IPFrameType == IP_PROT_UDP


Variable Documentation


Generated on Wed Feb 3 12:45:34 2010 for SBC65EC Web Server by  doxygen 1.5.8