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

  1. /******************************************************************************
  2.  
  3.   $Workfile:   nwserver.h  $
  4.   $Revision:   1.10  $
  5.   $Modtime::   25 May 1995 11:59:48                        $
  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 ( NWSERVER_H )
  25. #define NWSERVER_H
  26.  
  27. #if ! defined ( NWCALDEF_H )
  28. # include "nwcaldef.h"
  29. #endif
  30.  
  31. #include "npackon.h"
  32.  
  33. #ifdef __cplusplus
  34. extern "C" {
  35. #endif
  36.  
  37. #define LNS_CHECK 0
  38.  
  39. #ifndef NW_SHORT_NAME_SERVER
  40. # define NW_SHORT_NAME_SERVER 0
  41. #endif
  42.  
  43. #ifndef NW_LONG_NAME_SERVER
  44. #define NW_LONG_NAME_SERVER 1
  45. #endif
  46.  
  47. #ifndef NW_ENCP_SERVER
  48. #define NW_ENCP_SERVER 1
  49. #endif
  50.  
  51. #ifndef NW_EXTENDED_NCP_SERVER
  52. #define NW_EXTENDED_NCP_SERVER 1
  53. #endif
  54.  
  55. #define VERSION_CHECK 1
  56. # define NW_2X  0
  57. # define NW_30  1
  58. # define NW_311 2
  59. # define NW_32  3
  60. # define NW_40  4
  61.  
  62. typedef struct
  63. {
  64.    nuint8 networdAddress[4];
  65.    nuint8 hostAddress[6];
  66.    nuint8 boardInstalled;
  67.    nuint8 optionNumber;
  68.    nuint8 configurationText1[80];
  69.    nuint8 configurationText2[80];
  70. } NWLAN_CONFIG;
  71.  
  72. typedef struct
  73. {
  74.    nuint32  systemElapsedTime;
  75.    nuint16  maxRoutingBuffersAvail;
  76.    nuint16  maxRoutingBuffersUsed;
  77.    nuint16  routingBuffersInUse;
  78.    nuint32  totalFileServicePackets;
  79.    nuint16  fileServicePacketsBuffered;
  80.    nuint16  invalidConnPacketCount;
  81.    nuint16  badLogicalConnCount;
  82.    nuint16  packetsRcvdDuringProcCount;
  83.    nuint16  reprocessedRequestCount;
  84.    nuint16  badSequenceNumberPacketCount;
  85.    nuint16  duplicateReplyCount;
  86.    nuint16  acknowledgementsSent;
  87.    nuint16  badRequestTypeCount;
  88.    nuint16  attachDuringProcCount;
  89.    nuint16  attachWhileAttachingCount;
  90.    nuint16  forgedDetachRequestCount;
  91.    nuint16  badConnNumberOnDetachCount;
  92.    nuint16  detachDuringProcCount;
  93.    nuint16  repliesCanceledCount;
  94.    nuint16  hopCountDiscardCount;
  95.    nuint16  unknownNetDiscardCount;
  96.    nuint16  noDGroupBufferDiscardCount;
  97.    nuint16  outPacketNoBufferDiscardCount;
  98.    nuint16  IPXNotMyNetworkCount;
  99.    nuint32  NetBIOSPropagationCount;
  100.    nuint32  totalOtherPackets;
  101.    nuint32  totalRoutedPackets;
  102. }  SERVER_LAN_IO_STATS;
  103.  
  104. typedef struct
  105. {
  106.    nuint32 systemElapsedTime;
  107.    nuint8  diskChannel;
  108.    nuint8  diskRemovable;
  109.    nuint8  driveType;
  110.    nuint8  controllerDriveNumber;
  111.    nuint8  controllerNumber;
  112.    nuint8  controllerType;
  113.    nuint32 driveSize;            /* in 4096 byte blocks */
  114.    nuint16 driveCylinders;
  115.    nuint8  driveHeads;
  116.    nuint8  sectorsPerTrack;
  117.    nuint8  driveDefinition[64];
  118.    nuint16 IOErrorCount;
  119.    nuint32 hotFixStart;          /* only meaningful with SFT I or greater */
  120.    nuint16 hotFixSize;           /* only meaningful with SFT I or greater */
  121.    nuint16 hotFixBlockAvailable; /* only meaningful with SFT I or greater */
  122.    nuint8  hotFixDisabled;       /* only meaningful with SFT I or greater */
  123. } PHYS_DSK_STATS;
  124.  
  125. typedef struct
  126. {
  127.    nuint32 systemElapsedTime;
  128.    nuint16 channelState;
  129.    nuint16 channelSyncState;
  130.    nuint8  driverType;
  131.    nuint8  driverMajorVersion;
  132.    nuint8  driverMinorVersion;
  133.    nuint8  driverDescription[65];
  134.    nuint16 IOAddr1;
  135.    nuint16 IOAddr1Size;
  136.    nuint16 IOAddr2;
  137.    nuint16 IOAddr2Size;
  138.    nuint8  sharedMem1Seg[3];
  139.    nuint16 sharedMem1Ofs;
  140.    nuint8  sharedMem2Seg[3];
  141.    nuint16 sharedMem2Ofs;
  142.    nuint8  interrupt1Used;
  143.    nuint8  interrupt1;
  144.    nuint8  interrupt2Used;
  145.    nuint8  interrupt2;
  146.    nuint8  DMAChannel1Used;
  147.    nuint8  DMAChannel1;
  148.    nuint8  DMAChannel2Used;
  149.    nuint8  DMAChannel2;
  150.    nuint16 reserved2;
  151.    nuint8  configDescription[80];
  152. }  DSK_CHANNEL_STATS;
  153.  
  154. typedef struct
  155. {
  156.    nuint32 systemElapsedTime;
  157.    nuint16 cacheBufferCount;
  158.    nuint16 cacheBufferSize;
  159.    nuint16 dirtyCacheBuffers;
  160.    nuint32 cacheReadRequests;
  161.    nuint32 cacheWriteRequests;
  162.    nuint32 cacheHits;
  163.    nuint32 cacheMisses;
  164.    nuint32 physicalReadRequests;
  165.    nuint32 physicalWriteRequests;
  166.    nuint16 physicalReadErrors;
  167.    nuint16 physicalWriteErrors;
  168.    nuint32 cacheGetRequests;
  169.    nuint32 cacheFullWriteRequests;
  170.    nuint32 cachePartialWriteRequests;
  171.    nuint32 backgroundDirtyWrites;
  172.    nuint32 backgroundAgedWrites;
  173.    nuint32 totalCacheWrites;
  174.    nuint32 cacheAllocations;
  175.    nuint16 thrashingCount;
  176.    nuint16 LRUBlockWasDirtyCount;
  177.    nuint16 readBeyondWriteCount;
  178.    nuint16 fragmentedWriteCount;
  179.    nuint16 cacheHitOnUnavailCount;
  180.    nuint16 cacheBlockScrappedCount;
  181. } DSK_CACHE_STATS;
  182.  
  183. typedef struct
  184. {
  185.    nuint32 systemElapsedTime;
  186.    nuint16 maxOpenFiles;
  187.    nuint16 maxFilesOpened;
  188.    nuint16 currOpenFiles;
  189.    nuint32 totalFilesOpened;
  190.    nuint32 totalReadRequests;
  191.    nuint32 totalWriteRequests;
  192.    nuint16 currChangedFATSectors;
  193.    nuint32 totalChangedFATSectors;
  194.    nuint16 FATWriteErrors;
  195.    nuint16 fatalFATWriteErrors;
  196.    nuint16 FATScanErrors;
  197.    nuint16 maxIndexFilesOpened;
  198.    nuint16 currOpenIndexedFiles;
  199.    nuint16 attachedIndexFiles;
  200.    nuint16 availableIndexFiles;
  201. } FILESYS_STATS;
  202.  
  203.  
  204. typedef struct
  205. {
  206.    nuint32 systemElapsedTime;
  207.    nuint8  SFTSupportLevel;
  208.    nuint8  logicalDriveCount;
  209.    nuint8  physicalDriveCount;
  210.    nuint8  diskChannelTable[5];
  211.    nuint16 pendingIOCommands;
  212.    nuint8  driveMappingTable[32];
  213.    nuint8  driveMirrorTable[32];
  214.    nuint8  deadMirrorTable[32];
  215.    nuint8  reMirrorDriveNumber;
  216.    nuint8  reserved;
  217.    nuint32 reMirrorCurrentOffset;
  218.    nuint16 SFTErrorTable[60];
  219. }  DRV_MAP_TABLE;
  220.  
  221.  
  222. typedef struct
  223. {
  224.    nuint8  serverName[48];
  225.    nuint8  fileServiceVersion;
  226.    nuint8  fileServiceSubVersion;
  227.    nuint16 maximumServiceConnections;
  228.    nuint16 connectionsInUse;
  229.    nuint16 maxNumberVolumes;
  230.    nuint8  revision;
  231.    nuint8  SFTLevel;
  232.    nuint8  TTSLevel;
  233.    nuint16 maxConnectionsEverUsed;
  234.    nuint8  accountVersion;
  235.    nuint8  VAPVersion;
  236.    nuint8  queueVersion;
  237.    nuint8  printVersion;
  238.    nuint8  virtualConsoleVersion;
  239.    nuint8  restrictionLevel;
  240.    nuint8  internetBridge;
  241.    nuint8  reserved[60];
  242. }  VERSION_INFO;
  243.  
  244. /* Defines that are used for the NWCheckNetWareVersion call for values
  245.    that can be returned in the compatibilityFlag nuint8.  */
  246. #define COMPATIBLE               0x00
  247. #define VERSION_NUMBER_TOO_LOW   0x01
  248. #define SFT_LEVEL_TOO_LOW        0x02
  249. #define TTS_LEVEL_TOO_LOW        0x04
  250.  
  251. /* structures for NWGetFileServerMiscInfo (2.2 only) */
  252. typedef struct tNW_MEM_AREAS
  253. {
  254.    nuint32 total;    /* total amount of memory in dynamic memory area */
  255.    nuint32 max;      /* amount of memory in dynamic memory area that has been in use since server was brought up */
  256.    nuint32 cur;      /* amount of memory in dynamic memory area currently in use */
  257. } NW_DYNAMIC_MEM;
  258.  
  259. typedef struct tNW_FS_MISC
  260. {
  261.    nuint32 upTime;        /* how long file server's been up in 1/18 ticks (wraps at 0xffffffff) */
  262.    nuint8  processor;      /* 1 = 8086/8088, 2 = 80286       */
  263.    nuint8  reserved;
  264.    nuint8  numProcs;       /* number processes that handle incoming service requests */
  265.    nuint8  utilization;    /* server utilization percentage (0-100), updated once/sec */
  266.    nuint16 configuredObjs; /* max number of bindery objects file server will track - 0=unlimited & next 2 fields have no meaning */
  267.    nuint16 maxObjs;        /* max number of bindery objects that have been used concurrently since file server came up */
  268.    nuint16 curObjs;        /* actual number of bindery objects currently in use on server */
  269.    nuint16 totalMem;       /* total amount of memory (in K) installed on server */
  270.    nuint16 unusedMem;      /* amount of memory server has determined it is not using */
  271.    nuint16 numMemAreas;    /* number of dynamic memory areas (1-3) */
  272.    NW_DYNAMIC_MEM dynamicMem[3];
  273. } NW_FS_INFO;
  274.  
  275. NWCCODE N_API NWGetPhysicalDiskStats
  276. (
  277.    NWCONN_HANDLE  conn,
  278.    nuint8         physicalDiskNum,
  279.    PHYS_DSK_STATS N_FAR * statBuffer
  280. );
  281.  
  282. NWCCODE N_API NWGetFileSystemStats
  283. (
  284.    NWCONN_HANDLE  conn,
  285.    FILESYS_STATS N_FAR * statBuffer
  286. );
  287.  
  288. NWCCODE N_API NWGetDiskChannelStats
  289. (
  290.    NWCONN_HANDLE  conn,
  291.    nuint8         channelNum,
  292.    DSK_CHANNEL_STATS N_FAR * statBuffer
  293. );
  294.  
  295. NWCCODE N_API NWGetDiskCacheStats
  296. (
  297.    NWCONN_HANDLE  conn,
  298.    DSK_CACHE_STATS N_FAR * statBuffer
  299. );
  300.  
  301. NWCCODE N_API NWGetFSDriveMapTable
  302. (
  303.    NWCONN_HANDLE  conn,
  304.    DRV_MAP_TABLE N_FAR * tableBuffer
  305. );
  306.  
  307. NWCCODE N_API NWGetFSLANDriverConfigInfo
  308. (
  309.    NWCONN_HANDLE  conn,
  310.    nuint8         lanBoardNum,
  311.    NWLAN_CONFIG N_FAR * lanConfig
  312. );
  313.  
  314. NWCCODE N_API NWGetFileServerLANIOStats
  315. (
  316.    NWCONN_HANDLE  conn,
  317.    SERVER_LAN_IO_STATS N_FAR * statBuffer
  318. );
  319.  
  320. NWCCODE N_API NWCheckConsolePrivileges
  321. (
  322.    NWCONN_HANDLE  conn
  323. );
  324.  
  325. NWCCODE N_API NWDownFileServer
  326. (
  327.    NWCONN_HANDLE  conn,
  328.    nuint8         forceFlag
  329. );
  330.  
  331. NWCCODE N_API NWGetFileServerDateAndTime
  332. (
  333.    NWCONN_HANDLE  conn,
  334.    pnuint8        dateTimeBuffer
  335. );
  336.  
  337. NWCCODE N_API NWSetFileServerDateAndTime
  338. (
  339.    NWCONN_HANDLE  conn,
  340.    nuint8         year,
  341.    nuint8         month,
  342.    nuint8         day,
  343.    nuint8         hour,
  344.    nuint8         minute,
  345.    nuint8         second
  346. );
  347.  
  348. NWCCODE N_API NWCheckNetWareVersion
  349. (
  350.    NWCONN_HANDLE  conn,
  351.    nuint16        minVer,
  352.    nuint16        minSubVer,
  353.    nuint16        minRev,
  354.    nuint16        minSFT,
  355.    nuint16        minTTS,
  356.    pnuint8        compatibilityFlag
  357. );
  358.  
  359. NWCCODE N_API NWGetFileServerVersionInfo
  360. (
  361.    NWCONN_HANDLE  conn,
  362.    VERSION_INFO N_FAR * versBuffer
  363. );
  364.  
  365. NWCCODE N_API NWGetFileServerInformation
  366. (
  367.    NWCONN_HANDLE  conn,
  368.    pnstr8         serverName,
  369.    pnuint8        majorVer,
  370.    pnuint8        minVer,
  371.    pnuint8        rev,
  372.    pnuint16       maxConns,
  373.    pnuint16       maxConnsUsed,
  374.    pnuint16       connsInUse,
  375.    pnuint16       numVolumes,
  376.    pnuint8        SFTLevel,
  377.    pnuint8        TTSLevel
  378. );
  379.  
  380. NWCCODE N_API NWGetFileServerExtendedInfo
  381. (
  382.    NWCONN_HANDLE  conn,
  383.    pnuint8        accountingVer,
  384.    pnuint8        VAPVer,
  385.    pnuint8        queueingVer,
  386.    pnuint8        printServerVer,
  387.    pnuint8        virtualConsoleVer,
  388.    pnuint8        securityVer,
  389.    pnuint8        internetBridgeVer
  390. );
  391.  
  392. NWCCODE N_API _NWGetFileServerType
  393. (
  394.    NWCONN_HANDLE  conn,
  395.    nuint16        typeFlag,
  396.    pnuint16       serverType
  397. );
  398.  
  399. NWCCODE N_API NWAttachToFileServer
  400. (
  401.    pnstr8         serverName,
  402.    nuint16        scopeFlag,
  403.    NWCONN_HANDLE N_FAR * newConnID
  404. );
  405.  
  406. NWCCODE N_API NWGetFileServerLoginStatus
  407. (
  408.    NWCONN_HANDLE  conn,
  409.    pnuint8        loginEnabledFlag
  410. );
  411.  
  412. NWCCODE N_API NWDetachFromFileServer
  413. (
  414.    NWCONN_HANDLE  conn
  415. );
  416.  
  417. NWCCODE N_API NWGetFileServerName
  418. (
  419.    NWCONN_HANDLE  conn,
  420.    pnstr8         serverName
  421. );
  422.  
  423. NWCCODE N_API NWLogoutFromFileServer
  424. (
  425.    NWCONN_HANDLE  conn
  426. );
  427.  
  428. NWCCODE N_API NWLoginToFileServer
  429. (
  430.    NWCONN_HANDLE  conn,
  431.    pnstr8         objName,
  432.    nuint16        objType,
  433.    pnstr8         password
  434. );
  435.  
  436. NWCCODE N_API NWEnableFileServerLogin
  437. (
  438.    NWCONN_HANDLE  conn
  439. );
  440.  
  441. NWCCODE N_API NWDisableFileServerLogin
  442. (
  443.    NWCONN_HANDLE  conn
  444. );
  445.  
  446. NWCCODE N_API NWGetFileServerDescription
  447. (
  448.    NWCONN_HANDLE  conn,
  449.    pnstr8         companyName,
  450.    pnstr8         revision,
  451.    pnstr8         revisionDate,
  452.    pnstr8         copyrightNotice
  453. );
  454.  
  455. NWCCODE N_API NWGetFileServerVersion
  456. (
  457.    NWCONN_HANDLE conn,
  458.    pnuint16 serverVersion
  459. );
  460.  
  461. NWCCODE N_API NWAttachToFileServerByConn
  462. (
  463.    NWCONN_HANDLE  conn,
  464.    pnstr8         serverName,
  465.    nuint16        scopeFlag,
  466.    NWCONN_HANDLE N_FAR * newConnID
  467. );
  468.  
  469. NWCCODE N_API NWGetNetworkSerialNumber
  470. (
  471.    NWCONN_HANDLE  conn,
  472.    pnuint32       serialNum,
  473.    pnuint16       appNum
  474. );
  475.  
  476. NWCCODE N_API NWIsManager
  477. (
  478.    NWCONN_HANDLE  conn
  479. );
  480.  
  481. /* this function is 2.2 specific */
  482. NWCCODE N_API NWGetFileServerMiscInfo
  483. (
  484.    NWCONN_HANDLE  conn,
  485.    NW_FS_INFO N_FAR * fsInfo
  486. );
  487.  
  488. #ifdef NWOS2
  489. NWCCODE N_API NWLogoutWithLoginID
  490. (
  491.    nuint32        citrixLoginID
  492. );
  493. #endif
  494.  
  495. #ifdef __cplusplus
  496. }
  497. #endif
  498.  
  499. #include "npackoff.h"
  500. #endif
  501.