home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / warphead.zip / H / RIPL.H < prev    next >
C/C++ Source or Header  |  1997-09-05  |  11KB  |  220 lines

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