summaryrefslogtreecommitdiffstats
path: root/private/nw/nwscript/inc/nwlibs.h
diff options
context:
space:
mode:
authorAdam <you@example.com>2020-05-17 05:51:50 +0200
committerAdam <you@example.com>2020-05-17 05:51:50 +0200
commite611b132f9b8abe35b362e5870b74bce94a1e58e (patch)
treea5781d2ec0e085eeca33cf350cf878f2efea6fe5 /private/nw/nwscript/inc/nwlibs.h
downloadNT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.gz
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.bz2
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.lz
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.xz
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.zst
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.zip
Diffstat (limited to 'private/nw/nwscript/inc/nwlibs.h')
-rw-r--r--private/nw/nwscript/inc/nwlibs.h371
1 files changed, 371 insertions, 0 deletions
diff --git a/private/nw/nwscript/inc/nwlibs.h b/private/nw/nwscript/inc/nwlibs.h
new file mode 100644
index 000000000..64a187e52
--- /dev/null
+++ b/private/nw/nwscript/inc/nwlibs.h
@@ -0,0 +1,371 @@
+
+/*************************************************************************
+*
+* NWLIBS.H
+*
+* Prototypes
+*
+* Copyright (c) 1995 Microsoft Corporation
+*
+* $Log: N:\NT\PRIVATE\NW4\NWSCRIPT\INC\VCS\NWLIBS.H $
+*
+* Rev 1.1 22 Dec 1995 14:20:28 terryt
+* Add Microsoft headers
+*
+* Rev 1.0 15 Nov 1995 18:05:36 terryt
+* Initial revision.
+*
+* Rev 1.1 25 Aug 1995 17:03:46 terryt
+* CAPTURE support
+*
+* Rev 1.0 15 May 1995 19:09:40 terryt
+* Initial revision.
+*
+*************************************************************************/
+
+/*++
+
+Copyright (c) 1994 Micro Computer Systems, Inc.
+
+Module Name:
+
+ nwlibs\nwlibs.h
+
+Abstract:
+
+ NW Libs prototypes.
+
+Author:
+
+ Shawn Walker (v-swalk) 10-10-1994
+
+Revision History:
+
+--*/
+
+#ifndef _NWLIBS_H_
+#define _NWLIBS_H_
+
+
+/*++
+*******************************************************************
+ NetWare defaults
+*******************************************************************
+--*/
+#define NCP_BINDERY_OBJECT_NAME_LENGTH 48
+#define NCP_SERVER_NAME_LENGTH NCP_BINDERY_OBJECT_NAME_LENGTH
+
+#define NCP_MAX_PATH_LENGTH 255
+#define NCP_VOLUME_LENGTH 256 // 16 in 3X
+
+
+/*++
+*******************************************************************
+ Defines for GetDrive Status
+*******************************************************************
+--*/
+
+#define NETWARE_UNMAPPED_DRIVE 0x0000
+#define NETWARE_FREE_DRIVE 0x0000
+#define NETWARE_LOCAL_FREE_DRIVE 0x0800
+#define NETWARE_LOCAL_DRIVE 0x1000
+#define NETWARE_NETWORK_DRIVE 0x2000
+#define NETWARE_LITE_DRIVE 0x4000
+#define NETWARE_PNW_DRIVE 0x4000
+#define NETWARE_NETWARE_DRIVE 0x8000
+
+#define NETWARE_FORMAT_NETWARE 0
+#define NETWARE_FORMAT_SERVER_VOLUME 1
+#define NETWARE_FORMAT_DRIVE 2
+#define NETWARE_FORMAT_UNC 3
+
+#define NCP_JOB_DESCRIPTION_LENGTH 50
+#define NCP_BANNER_TEXT_LENGTH 13
+#define NCP_FORM_NAME_LENGTH 13
+#define NCP_QUEUE_NAME_LENGTH 65
+
+#define CAPTURE_FLAG_PRINT_BANNER 0x80
+#define CAPTURE_FLAG_EXPAND_TABS 0x40
+#define CAPTURE_FLAG_NOTIFY 0x10
+#define CAPTURE_FLAG_NO_FORMFEED 0x08
+#define CAPTURE_FLAG_KEEP 0x04
+#define DEFAULT_PRINT_FLAGS 0xC0
+#define DEFAULT_BANNER_TEXT "LPT:"
+
+typedef struct _NETWARE_CAPTURE_FLAGS_RW {
+ unsigned char JobDescription[NCP_JOB_DESCRIPTION_LENGTH];
+ unsigned char JobControlFlags;
+ unsigned char TabSize;
+ unsigned short NumCopies;
+ unsigned short PrintFlags;
+ unsigned short MaxLines;
+ unsigned short MaxChars;
+ unsigned char FormName[NCP_FORM_NAME_LENGTH];
+ unsigned char Reserved1[9];
+ unsigned short FormType;
+ unsigned char BannerText[NCP_BANNER_TEXT_LENGTH];
+ unsigned char Reserved2;
+ unsigned short FlushCaptureTimeout;
+ unsigned char FlushCaptureOnClose;
+} NETWARE_CAPTURE_FLAGS_RW, *PNETWARE_CAPTURE_FLAGS_RW, *LPNETWARE_CAPTURE_FLAGS_RW;
+
+typedef struct _NETWARE_CAPTURE_FLAGS_RO {
+ unsigned short ConnectionID;
+ unsigned short SetupStringMaxLen;
+ unsigned short ResetStringMaxLen;
+ unsigned char LPTCaptureFlag;
+ unsigned char FileCaptureFlag;
+ unsigned char TimingOutFlag;
+ unsigned char InProgress;
+ unsigned char PrintQueueFlag;
+ unsigned char PrintJobValid;
+ unsigned char QueueName[NCP_QUEUE_NAME_LENGTH];
+ unsigned char ServerName[NCP_SERVER_NAME_LENGTH];
+} NETWARE_CAPTURE_FLAGS_RO, *PNETWARE_CAPTURE_FLAGS_RO, *LPNETWARE_CAPTURE_FLAGS_RO;
+
+#define NETWARE_CAPTURE_FLAGS_RO_SIZE sizeof(NETWARE_CAPTURE_FLAGS_RO)
+#define NETWARE_CAPTURE_FLAGS_RW_SIZE sizeof(NETWARE_CAPTURE_FLAGS_RW)
+
+#define PS_FORM_NAME_SIZE 12
+#define PS_BANNER_NAME_SIZE 12
+#define PS_BANNER_FILE_SIZE 12
+#define PS_DEVICE_NAME_SIZE 32
+#define PS_MODE_NAME_SIZE 32
+
+#define PS_BIND_NAME_SIZE NCP_BINDERY_OBJECT_NAME_LENGTH
+#define PS_MAX_NAME_SIZE 514
+
+/** Flags for the PS_JOB_REC structure PrintJobFlag field **/
+
+#define PS_JOB_EXPAND_TABS 0x00000001 /* File type:0=Stream 1=Tab */
+#define PS_JOB_NO_FORMFEED 0x00000002 /* Formfeed tail:0=Yes 1=No */
+#define PS_JOB_NOTIFY 0x00000004 /* Notify:0=No 1=Yes */
+#define PS_JOB_PRINT_BANNER 0x00000008 /* Banner:0=No 1=Yes */
+#define PS_JOB_AUTO_END 0x00000010 /* Auto endcap:0=No 1=Yes */
+#define PS_JOB_TIMEOUT 0x00000020 /* Enable T.O.:0=No 1=Yes */
+
+#define PS_JOB_ENV_DS 0x00000040 /* Use D.S. Environment */
+#define PS_JOB_ENV_MASK 0x000001C0 /* Bindery vs. D.S. Mask */
+
+#define PS_JOB_DS_PRINTER 0x00000200 /* D.S. Printer not Queue */
+#define PS_JOB_PRINTER_MASK 0x00000E00 /* D.S. Printer vs. Queue */
+
+/** Default Flags **/
+
+#define PS_JOB_DEFAULT (NWPS_JOB_PRINT_BANNER | NWPS_JOB_AUTO_END)
+#define PS_JOB_DEFAULT_COPIES 1 /* Default Number of Copies */
+#define PS_JOB_DEFAULT_TAB 8 /* Default Tab Expansion */
+
+typedef struct _PS_JOB_RECORD {
+ DWORD PrintJobFlag;
+ SHORT Copies;
+ SHORT TimeOutCount;
+ UCHAR TabSize;
+ UCHAR LocalPrinter;
+ CHAR FormName[PS_FORM_NAME_SIZE + 2];
+ CHAR Name[PS_BANNER_NAME_SIZE + 2];
+ CHAR BannerName[PS_BANNER_FILE_SIZE + 2];
+ CHAR Device[PS_DEVICE_NAME_SIZE + 2];
+ CHAR Mode[PS_MODE_NAME_SIZE + 2];
+ union {
+ struct {
+ /** Pad structures on even boundries **/
+
+ CHAR FileServer[PS_BIND_NAME_SIZE + 2];
+ CHAR PrintQueue[PS_BIND_NAME_SIZE + 2];
+ CHAR PrintServer[PS_BIND_NAME_SIZE + 2];
+ } NonDS;
+ CHAR DSObjectName[PS_MAX_NAME_SIZE];
+ } u;
+ UCHAR Reserved[392];
+} PS_JOB_RECORD, *PPS_JOB_RECORD;
+
+#define PS_JOB_RECORD_SIZE sizeof(PS_JOB_RECORD)
+
+
+/*++
+*******************************************************************
+ FUCNTION PROTOTYPES
+*******************************************************************
+--*/
+
+/** ATTACH.C **/
+
+unsigned int
+AttachToFileServer(
+ unsigned char *pServerName,
+ unsigned int *pNewConnectionId
+ );
+
+unsigned int
+DetachFromFileServer(
+ unsigned int ConnectionId
+ );
+
+/** NCP.C **/
+
+unsigned int
+GetBinderyObjectID(
+ unsigned int ConnectionHandle,
+ char *pObjectName,
+ unsigned short ObjectType,
+ unsigned long *pObjectId
+ );
+
+
+/** CONNECT.C **/
+
+unsigned int
+GetDefaultConnectionID(
+ unsigned int *pConnectionHandle
+ );
+
+unsigned int
+GetConnectionHandle(
+ unsigned char *pServerName,
+ unsigned int *pConnectionHandle
+ );
+
+unsigned int
+GetConnectionNumber(
+ unsigned int ConnectionHandle,
+ unsigned int *pConnectionNumber
+ );
+
+unsigned int
+GetFileServerName(
+ unsigned int ConnectionHandle,
+ char *pServerName
+ );
+
+unsigned int
+GetInternetAddress(
+ unsigned int ConnectionHandle,
+ unsigned int ConnectionNumber,
+ unsigned char *pInternetAddress
+ );
+
+/** DRIVE.C **/
+
+unsigned int
+GetDriveStatus(
+ unsigned short DriveNumber,
+ unsigned short PathFormat,
+ unsigned short *pStatus,
+ unsigned int *pConnectionHandle,
+ unsigned char *pRootPath,
+ unsigned char *pRelativePath,
+ unsigned char *pFullPath
+ );
+
+unsigned int
+GetFirstDrive(
+ unsigned short *pFirstDrive
+ );
+
+unsigned int
+ParsePath(
+ unsigned char *pPath,
+ unsigned char *pServerName, //OPTIONAL
+ unsigned char *pVolumeName, //OPTIONAL
+ unsigned char *pDirPath //OPTIONAL
+ );
+
+unsigned int
+SetDriveBase(
+ unsigned short DriveNumber,
+ unsigned char *ServerName,
+ unsigned int DirHandle,
+ unsigned char *pDirPath
+ );
+
+unsigned int
+DeleteDriveBase(
+ unsigned short DriveNumber
+ );
+
+unsigned int
+GetDirectoryPath(
+ unsigned char ConnectionHandle,
+ unsigned char Handle,
+ unsigned char *pPath
+ );
+
+unsigned int
+IsDriveRemote(
+ unsigned char DriveNumber,
+ unsigned int *pRemote
+ );
+
+/** CAPTURE.C **/
+
+unsigned int
+EndCapture(
+ unsigned char LPTDevice
+ );
+
+#define PS_ERR_BAD_VERSION 0x7770
+#define PS_ERR_GETTING_DEFAULT 0x7773
+#define PS_ERR_OPENING_DB 0x7774
+#define PS_ERR_READING_DB 0x7775
+#define PS_ERR_READING_RECORD 0x7776
+#define PS_ERR_INTERNAL_ERROR 0x7779
+#define PS_ERR_NO_DEFAULT_SPECIFIED 0x777B
+
+unsigned int
+PSJobGetDefault(
+ unsigned int ConnectionHandle,
+ unsigned short SearchFlag,
+ unsigned char *pOwner,
+ unsigned char *pJobName,
+ PPS_JOB_RECORD pJobRecord
+ );
+
+unsigned int
+PSJobRead(
+ unsigned int ConnectionHandle,
+ unsigned char *pOwner,
+ unsigned char *pJobName,
+ PPS_JOB_RECORD pJobRecord
+ );
+
+unsigned int
+PS40JobGetDefault(
+ unsigned int NDSCaptureFlag,
+ unsigned short SearchFlag,
+ unsigned char *pOwner,
+ unsigned char *pJobName,
+ PPS_JOB_RECORD pJobRecord
+ );
+
+unsigned int
+PS40JobRead(
+ unsigned int NDSCaptureFlag,
+ unsigned char *pOwner,
+ unsigned char *pJobName,
+ PPS_JOB_RECORD pJobRecord
+ );
+
+unsigned int
+GetCaptureFlags(
+ unsigned char LPTDevice,
+ PNETWARE_CAPTURE_FLAGS_RW pCaptureFlagsRW,
+ PNETWARE_CAPTURE_FLAGS_RO pCaptureFlagsRO
+ );
+
+unsigned int
+StartQueueCapture(
+ unsigned int ConnectionHandle,
+ unsigned char LPTDevice,
+ unsigned char *pServerName,
+ unsigned char *pQueueName
+ );
+
+unsigned int
+GetDefaultPrinterQueue (
+ unsigned int ConnectionHandle,
+ unsigned char *pServerName,
+ unsigned char *pQueueName
+ );
+
+#endif /* _NWLIBS_H_ */