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

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