/*
*----------------------------------------------------------------------------------------
*
*  (C) Copyright 2014, 2015 Johnson Controls, Inc.
*      Use or Copying of all or any part of this program, except as
*      permitted by License Agreement, is prohibited.
*
*Purpose:  JCI additions to open source iPXE.
*
*History:
*---------  -------- -------------- ------ ------ ----------------------------------------
*Date       Author   Release         CR#    Task# Reason for change
*---------  -------- -------------- ------ ------ ----------------------------------------
* 2/Oct/14  ctzortj  iPXE_v1.0      64370  159107 N50-3: original
* 18/Feb/15 ctzortj  iPXE_v1.0      64240  162708 Number of dhcp commands are dependent on NUT server.
* 24/Jun/15 ctzortj  iPXE_v1.0      66526  169549  Add reboot command - CMD_REBOOT
*---------  -------- -------------- ------ ------ ----------------------------------------
*/

#ifndef _JCI_H
#define _JCI_H

extern int dhcpServer;
extern int  jci_dhcp_debug;
extern char* pHttpBootCmdString;
extern int serverHasPrivateAddress;

// DHCP Debug Switches
#define ENABLE_DEBUG   1
#define DISABLE_DEBUG  0

// The two types of DHCP commands.
#define NUT_SERVER  0
#define NETWORK_SERVER  1

// Array Lengths
#define MAX_WINPEBOOT_LEN  256
#define MAX_BOOT_CMD_STR_LEN  MAX_WINPEBOOT_LEN + 64

// Function Return Codes
#define JCI_OK  0

// iPXE Commands
#define CMD_DHCP  "dhcp"
#define CMD_REBOOT  "reboot"

// Enables JCI iPXE Function
#define JCI_N50_3

// Boolean TRUE/FALSE used in JCI modified modules 
#define JCI_FALSE    0
#define JCI_TRUE    1

// The two leading fields in a private IP address.
#define SERVER_PRIVATE_IP_ADDRESS    "192.168."

#endif

