home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / lansystk.zip / INCLUDE / LANSERV / RIPL.H < prev    next >
C/C++ Source or Header  |  1998-05-08  |  10KB  |  218 lines

  1. /**************************************************************************/
  2. /*                                                                        */
  3. /*              IBM OS/2(tm) Local Area Network (LAN) Server              */
  4. /*                            Version 4.0                                 */
  5. /*                   (C) Copyright IBM Corp. 1988, 1994                   */
  6. /*                  Licensed Materials - Property of IBM                  */
  7. /*                            52G8468, 52G8475                            */
  8. /*                                                                        */
  9. /**************************************************************************/
  10.  
  11.  
  12. /********************************************************************
  13.  *                                                                  *
  14.  *  About this file ...  RIPL.H                                     *
  15.  *                                                                  *
  16.  *  This file contains information about the RIPL (Remote IPL)      *
  17.  *  APIs.  For each API class there is a section on:                *
  18.  *                                                                  *
  19.  *      Function prototypes.                                        *
  20.  *                                                                  *
  21.  *       Data structure templates.                                  *
  22.  *                                                                  *
  23.  *        Definition of special values.                             *
  24.  *                                                                  *
  25.  *                                                                  *
  26.  *  NOTE:  You must include NETCONS.H before this file, since this  *
  27.  *           file depends on values defined in NETCONS.H.           *
  28.  *                                                                  *
  29.  ********************************************************************/
  30.  
  31.  
  32. #ifdef  ANY_32_BIT
  33. #pragma pack(2)
  34. #endif
  35.  
  36. #if !defined NETRIPL_INCLUDED
  37. #define NETRIPL_INCLUDED
  38.  
  39.  
  40. /****************************************************************
  41.  *                                                              *
  42.  *              Function prototypes - NetxxxRIPLMachine         *
  43.  *                                    NetxxxRIPLMachineInfo     *
  44.  *                                                              *
  45.  ****************************************************************/
  46.  
  47. extern API_FUNCTION
  48.  NetCreateRIPLMachine (const unsigned char LSFAR *,   /* server               */
  49.                        unsigned short,                /* level (2, 12)        */
  50.                        unsigned char LSFAR *,         /* buffer (send)        */
  51.                        unsigned short);               /* buffer length        */
  52.  
  53. extern API_FUNCTION
  54.  NetDeleteRIPLMachine (const unsigned char LSFAR *,   /* server               */
  55.                        unsigned char LSFAR *);        /* machine name(client) */
  56.  
  57. extern API_FUNCTION
  58.  NetGetRIPLMachineInfo (const unsigned char LSFAR *,  /* server               */
  59.                         unsigned char LSFAR *,        /* machine name(client) */
  60.                         unsigned short,               /* level (0, 1, 2)      */
  61.                         unsigned char LSFAR *,        /* buffer (receive)     */
  62.                         unsigned short,               /* buffer length        */
  63.                         unsigned short LSFAR *);      /* bytes available      */
  64.  
  65. extern API_FUNCTION
  66.  NetSetRIPLMachineInfo (const unsigned char LSFAR *,  /* server               */
  67.                         unsigned char LSFAR *,        /* machine name(client) */
  68.                         unsigned short,               /* level (1, 2)         */
  69.                         unsigned char LSFAR *,        /* buffer (send)        */
  70.                         unsigned short,               /* buffer length        */
  71.                         unsigned short);              /* parameter number     */
  72.  
  73. extern API_FUNCTION
  74.  NetEnumRIPLMachine (const unsigned char LSFAR *,     /* server               */
  75.                      unsigned short,                  /* level (0, 1, 2)      */
  76.                      unsigned short,                  /* type                 */
  77.                      unsigned char LSFAR *,           /* buffer (receive)     */
  78.                      unsigned short,                  /* buffer length        */
  79.                      unsigned short LSFAR *,          /* entries returned     */
  80.                      unsigned short LSFAR *);         /* entries available    */
  81.  
  82. /****************************************************************
  83.  *                                                              *
  84.  *              Data structure templates - RIPL                 *
  85.  *                                                              *
  86.  ****************************************************************/
  87.  
  88. struct ripl_machine_info_0
  89.    {
  90.     unsigned char                     rmi0_name[CNLEN + 1];
  91.    };
  92.  
  93. struct ripl_machine_info_1
  94.    {
  95.     unsigned char                     rmi1_name[CNLEN + 1];
  96.     unsigned char LSFAR * LSPTR       rmi1_remark;
  97.    };
  98.  
  99. struct ripl_machine_info_2
  100.    {
  101.     unsigned char                     rmi2_name[CNLEN + 1];
  102.     unsigned char LSFAR * LSPTR       rmi2_remark;
  103.     unsigned char                     rmi2_adapter_address[NNLEN + 1];
  104.     unsigned char                     rmi2_pad_1;
  105.     unsigned char                     rmi2_OS2_boot_drive;
  106.     unsigned char                     rmi2_pad_2;
  107.     unsigned char                     rmi2_DOS_imageid[DOSIMGLEN + 1];
  108.     unsigned char                     rmi2_pad_3;
  109.     unsigned char LSFAR * LSPTR       rmi2_DOS_srv_rec_ID;
  110.     unsigned char LSFAR * LSPTR       rmi2_OS2_srv_rec_ID;
  111.     unsigned long                     rmi2_OS2_config_flags;
  112.    };
  113.  
  114. struct ripl_machine_info_12
  115.    {
  116.     unsigned char                     rmi12_name[CNLEN + 1];
  117.     unsigned char LSFAR * LSPTR       rmi12_remark;
  118.     unsigned char                     rmi12_adapter_address[NNLEN + 1];
  119.     unsigned char                     rmi12_pad_1;
  120.     unsigned char                     rmi12_model_name[CNLEN + 1];
  121.    };
  122.  
  123.  
  124.  
  125. #ifdef PURE_32
  126. /****************************************************************
  127.  *                                                              *
  128.  *   32-bit Function prototypes - NetxxxRIPLMachine             *
  129.  *                                NetxxxRIPLMachineInfo         *
  130.  *                                                              *
  131.  ****************************************************************/
  132.  
  133. extern API32_FUNCTION
  134.  Net32CreateRIPLMachine (const unsigned char *,       /* server               */
  135.                          unsigned long,               /* level (2, 12)        */
  136.                          unsigned char *,             /* buffer (send)        */
  137.                          unsigned long);              /* buffer length        */
  138.  
  139. extern API32_FUNCTION
  140.  Net32DeleteRIPLMachine (const unsigned char *,       /* server               */
  141.                          unsigned char LSFAR *);      /* machine name(client) */
  142.  
  143. extern API32_FUNCTION
  144.  Net32GetRIPLMachineInfo (const unsigned char *,      /* server               */
  145.                           unsigned char       *,      /* machine name(client) */
  146.                           unsigned long,              /* level (0, 1, 2)      */
  147.                           unsigned char       *,      /* buffer (receive)     */
  148.                           unsigned long,              /* buffer length        */
  149.                           unsigned long       *);     /* bytes available      */
  150.  
  151. extern API32_FUNCTION
  152.  Net32SetRIPLMachineInfo (const unsigned char *,      /* server               */
  153.                           unsigned char       *,      /* machine name(client) */
  154.                           unsigned long,              /* level (1, 2)         */
  155.                           unsigned char       *,      /* buffer (send)        */
  156.                           unsigned long,              /* buffer length        */
  157.                           unsigned long);             /* parameter number     */
  158.  
  159. extern API32_FUNCTION
  160.  Net32EnumRIPLMachine (const unsigned char *,         /* server               */
  161.                        unsigned long,                 /* level (0, 1, 2)      */
  162.                        unsigned long,                 /* type                 */
  163.                        unsigned char        *,        /* buffer (receive)     */
  164.                        unsigned long,                 /* buffer length        */
  165.                        unsigned long        *,        /* entries returned     */
  166.                        unsigned long        *);       /* entries available    */
  167. #endif /* PURE_32 */
  168.  
  169.  
  170. /****************************************************************
  171.  *                                                              *
  172.  *              Special values and constants - RIPL             *
  173.  *                                                              *
  174.  ****************************************************************/
  175.  
  176. /*
  177.  * values for rmi1_machine_type
  178.  */
  179.  
  180. #define MTYPE_OS2_RIPL_REQ             0x0001
  181. #define MTYPE_DOS_RIPL_REQ             0x0002
  182.  
  183. /*
  184.  * values for Parmnum
  185.  */
  186.  
  187. #define RIPL_MACH_REMARK_PARMNUM                 2
  188. #define RIPL_MACH_ADAPTER_PARMNUM                3
  189. #define RIPL_MACH_OS2_BOOTDRIVE_PARMNUM          5
  190. #define RIPL_MACH_DOS_IMAGEID_PARMNUM            7
  191. #define RIPL_MACH_DOS_SRVRECID_PARMNUM           9
  192. #define RIPL_MACH_OS2_SRVRECID_PARMNUM          10
  193.  
  194. #define RI1_NUM_ELEMENTS            2
  195. #define RI2_NUM_ELEMENTS           10
  196.  
  197. /*
  198.  * values for rmi2_OS2_config_flags
  199.  */
  200.  
  201. #define OS2_SWAPPER_LOCAL          0x00000000L
  202. #define OS2_SWAPPER_SERVER         0x00000001L
  203. #define OS2_BUS_MCA                0x00000000L
  204. #define OS2_BUS_ISA                0x00000002L
  205. #define OS2_DISPLAY_IBMVGA32       0x00000000L
  206. #define OS2_DISPLAY_IBMXGA32       0x00000010L
  207. #define OS2_DISPLAY_IBM8514        0x00000020L
  208. #define OS2_DISPLAY_SVGA           0x00000040L
  209. #define OS2_DISPLAY_S3SVGA         0x00000080L
  210. #define OS2_DISPLAY_IBMEGA         0x00000100L
  211.  
  212. #ifdef ANY_32_BIT
  213. #pragma pack ()
  214. #endif
  215.  
  216. #endif
  217.  
  218.