/* ---------------------------------------------------------------------- */ 
/* OptionOffsets.h                                                        */ 
/* ---------------------------------------------------------------------- */ 
/*                                                                        */ 
/* (c) Copyright 2003 - 2008  EdgeTech,                                   */ 
/*                                                                        */ 
/* This file contains proprietary information, and trade secrets of       */ 
/* EdgeTech, and may not be disclosed or reproduced without the prior     */ 
/* written consent of EdgeTech.                                           */ 
/*                                                                        */ 
/* EdgeTech is not responsible for the consequences of the use or misuse  */ 
/* of this software, even if they result from defects in it.              */ 
/*                                                                        */ 
/* Security options management                                            */ 
/* ---------------------------------------------------------------------- */ 

#ifndef __OPTION_OFFSETS_H__

#define __OPTION_OFFSETS_H__

#pragma once


/* ---------------------------------------------------------------------- */ 
/* typedefs                                                               */ 
/* ---------------------------------------------------------------------- */ 

/* ---------------------------------------------------------------------- */ 
/* Options encoded for use in the sonar                                   */ 
/* ---------------------------------------------------------------------- */ 

typedef enum
{
  SONAR_OPTION_BIT_TOPSIDE3100            = 0x1,
  SONAR_OPTION_BIT_TOPSIDESS              = 0x2,
  SONAR_OPTION_BIT_TOPSIDESB              = 0x4,
  SONAR_OPTION_BIT_TOPSIDEJSTAR           = 0x8,
  SONAR_OPTION_BIT_ANALOGPRESSURE         = 0x100,
  SONAR_OPTION_BIT_RS232RAWDATA           = 0x200,
  SONAR_OPTION_BIT_RS232MORETHAN4PORTS    = 0x400,
  SONAR_OPTION_BIT_PUBLICNET              = 0x800, /* Note Not yet implemented */ 
  SONAR_OPTION_BIT_EXPIRATIONDATE         = 0x1000,/* Expiration date valid    */ 

} SonarSecurityOptionsEnumType;


/* ---------------------------------------------------------------------- */ 
/* Currently defined sonar options                                        */ 
/* ---------------------------------------------------------------------- */ 

typedef enum
{
  SONAR_OPTION_ITEM_VALID_OPTIONS      = 0,

  /* First of two encoded machine IDS.  Either one valid validates the    */ 
  /* options file.                                                        */ 
  SONAR_OPTION_MACHINEID,
  SONAR_OPTION_MACHINEID2,

  /* Option bits as listed in SonarSecurityOptionsEnumType above          */ 
  SONAR_OPTION_OPTIONS,

  SONAR_OPTION_ITEM_EXPIRYDATE, /* Was PUBLICNET, */ 
  SONAR_OPTION_ITEM_CURDATE,    /* Presently 0    */ 
  SONAR_OPTION_ITEM_RESERVED3,  /* Presently 0    */ 
  SONAR_OPTION_ITEM_RESERVED4,  /* Presently 0    */ 
  SONAR_OPTION_NUM_OPTIONS,

} SonarOptionItemListType;


/* ---------------------------------------------------------------------- */ 
/* Currently defined ETSI options                                         */ 
/* ---------------------------------------------------------------------- */ 

typedef enum
{
  ETSI_OPTION_VALID_OPTIONS       = 0,
  ETSI_OPTION_MACHINEID3,
  ETSI_OPTION_FIRSTDAY,
  ETSI_OPTION_MACHINEID,
  ETSI_OPTION_LASTDAY,
  ETSI_OPTION_MACHINEID2,
  ETSI_OPTION_SERIAL,
  ETSI_OPTION_MACHINEID4,
  ETSI_OPTION_OPTIONS,
  ETSI_OPTION_LASTDATE,
  ETSI_OPTION_NUM_OPTIONS,

} ETSIOptionItemListType;


/* ---------------------------------------------------------------------- */ 
/* Currently defined Discover options                                     */ 
/* ---------------------------------------------------------------------- */ 

typedef enum
{
  DISCOVER_OPTION_ITEM_VALID_OPTIONS   = 0,
  DISCOVER_OPTION_FIRSTDAY,
  DISCOVER_OPTION_LASTDAY,
  DISCOVER_OPTION_LASTDATE,
  DISCOVER_OPTION_SYSTEM_TYPE,
  DISCOVER_OPTION_PUBLICNET,
  DISCOVER_OPTION_SAS,
  DISCOVER_OPTION_MACHINEID,
  DISCOVER_OPTION_OPTIONS,
  DISCOVER_OPTION_MACHINEID2,
  DISCOVER_OPTION_MACHINEID3,
  DISCOVER_OPTION_MACHINEID4,
  DISCOVER_OPTION_UTILITY_1,
  DISCOVER_OPTION_NUM_OPTIONS,

} DiscoverOptionItemListType;


/* ---------------------------------------------------------------------- */ 
/* Currently defined Discover password                                    */ 
/* ---------------------------------------------------------------------- */ 

typedef enum
{
  DISCOVER_PASSWORD_MACHINE_ID_LOW   = 0,
  DISCOVER_PASSWORD_LASTDAY,
  DISCOVER_PASSWORD_OPTIONS,
  DISCOVER_PASSWORD_FIRSTDAY,
  DISCOVER_PASSWORD_MACHINE_ID_HIGH,
  DISCOVER_PASSWORD_CHECKSUM,
  DISCOVER_PASSWORD_NUM_OPTIONS,

} DiscoverPasswordItemListType;
 

/* ---------------------------------------------------------------------- */ 
/* Currently defined Sonar password                                       */ 
/* ---------------------------------------------------------------------- */ 

typedef enum
{
  SONAR_PASSWORD_MACHINE_ID_LOW      = 0,
  SONAR_PASSWORD_EXPIRATIONDATE, /* Was options2 */ 
  SONAR_PASSWORD_MACHINE_ID_HIGH,
  SONAR_PASSWORD_OPTIONS,
  SONAR_PASSWORD_CHECKSUM,
  SONAR_PASSWORD_NUM_OPTIONS,

} SonarPasswordItemListType;
 

/* ---------------------------------------------------------------------- */ 

#endif  /* Not __OPTION_OFFSETS_H__ */ 


/* ---------------------------------------------------------------------- */ 
/*                       end OptionOffsets.h                              */ 
/* ---------------------------------------------------------------------- */ 


