home *** CD-ROM | disk | FTP | other *** search
/ Network Support Encyclopedia 96-1 / novell-nsepro-1996-1-cd2.iso / download / netware / os232.exe / INCLUDE / NWCONFIG.H < prev    next >
C/C++ Source or Header  |  1995-05-08  |  3KB  |  107 lines

  1. /******************************************************************************
  2.  
  3.   $Workfile:   nwconfig.h  $
  4.   $Revision:   1.6  $
  5.   $Modtime::   08 May 1995 16:49:28                        $
  6.   $Copyright:
  7.  
  8.   Copyright (c) 1989-1995 Novell, Inc.  All Rights Reserved.                      
  9.  
  10.   THIS WORK IS AN UNPUBLISHED WORK AND CONTAINS CONFIDENTIAL PROPRIETARY
  11.   AND TRADE SECRET INFORMATION OF NOVELL, INC. ACCESS  TO  THIS  WORK IS
  12.   RESTRICTED TO (I) NOVELL, INC.  EMPLOYEES WHO HAVE A NEED TO  KNOW HOW
  13.   TO  PERFORM  TASKS WITHIN  THE SCOPE  OF  THEIR   ASSIGNMENTS AND (II)
  14.   ENTITIES OTHER  THAN  NOVELL, INC.  WHO  HAVE ENTERED INTO APPROPRIATE 
  15.   LICENSE   AGREEMENTS.  NO  PART  OF  THIS WORK MAY BE USED, PRACTICED,
  16.   PERFORMED COPIED, DISTRIBUTED, REVISED, MODIFIED, TRANSLATED, ABRIDGED,
  17.   CONDENSED, EXPANDED, COLLECTED, COMPILED, LINKED,  RECAST, TRANSFORMED
  18.   OR ADAPTED  WITHOUT THE PRIOR WRITTEN CONSENT OF NOVELL, INC.  ANY USE
  19.   OR EXPLOITATION  OF  THIS WORK WITHOUT AUTHORIZATION COULD SUBJECT THE
  20.   PERPETRATOR  TO CRIMINAL AND CIVIL LIABILITY.$
  21.  
  22.  *****************************************************************************/
  23.  
  24. #if ! defined ( NWCONFIG_H )
  25. #define NWCONFIG_H
  26.  
  27. #include "npackon.h"
  28.  
  29. #define T_OPTIONAL    0x80
  30.  
  31. #define T_NUMBER      0x01
  32. #define T_INDEX       0x02
  33. #define T_STRING      0x03
  34. #define T_HEX_STRING  0x04
  35. #define T_HEX_NUMBER  0x05
  36. #define T_LONG_NUMBER 0x06
  37. #define T_LONG_HEX    0x07
  38.  
  39. #define T_SET_1       0x10
  40. #define T_SET_2       0x11
  41. #define T_SET_3       0x12
  42. #define T_SET_4       0x13
  43. #define T_SET_5       0x14
  44. #define T_SET_6       0x15
  45. #define T_SET_7       0x16
  46. #define T_SET_8       0x17
  47. #define T_SET_9       0x18
  48. #define T_SET_10      0x19
  49. #define T_SET_11      0x1A
  50. #define T_SET_12      0x1B
  51. #define T_SET_13      0x1C
  52. #define T_SET_14      0x1D
  53. #define T_SET_15      0x1E
  54. #define T_SET_16      0x1F
  55.  
  56. #define MAX_PARAMETERS        8
  57. #define MAX_SECTION_NAME_SIZE 32
  58. #define MAX_VALUE_SIZE        80
  59. #define MAX_SET_ELEMENTS      20
  60.  
  61. typedef struct
  62. {
  63.   int numberOfElements;
  64.   int *elementCode;
  65.   char N_FAR * N_FAR *elementName;
  66.   int N_FAR *elementValue;
  67. } SetTableStruct;
  68.  
  69. typedef struct
  70. {
  71.   int paramType;
  72.   long defaultValue;
  73. } TypeDefaultStruct;
  74.  
  75. typedef union
  76. {
  77.   char N_FAR *string;
  78.   unsigned int number;
  79.   unsigned long longNumber;
  80. } PARAMETER_TABLE_TYPE;
  81.  
  82. typedef struct
  83. {
  84.   int keywordCode;
  85.   char N_FAR *keyword;
  86.   void (N_FAR *function)(PARAMETER_TABLE_TYPE N_FAR *);
  87.   TypeDefaultStruct typeDefault[MAX_PARAMETERS];
  88. } GrammarTableStruct;
  89.  
  90. #ifdef __cplusplus
  91. extern "C" {
  92. #endif
  93. N_EXTERN_LIBRARY( int )
  94. NWParseConfig(
  95.   PCHAR configFile,
  96.   PCHAR sectionName,
  97.   UINT  sectionInstance,
  98.   UINT  grammarTableSize,
  99.   GrammarTableStruct N_FAR *grammarTable,
  100.   SetTableStruct N_FAR *setTable);
  101. #ifdef __cplusplus
  102. }
  103. #endif
  104.  
  105. #include "npackoff.h"
  106. #endif
  107.