📄 svrapi.h
字号:
struct session_info_0 {
char FAR * sesi0_cname;
}; /* session_info_0 */
struct session_info_1 {
char FAR * sesi1_cname;
char FAR * sesi1_username;
unsigned short sesi1_num_conns;
unsigned short sesi1_num_opens;
unsigned short sesi1_num_users;
unsigned long sesi1_time;
unsigned long sesi1_idle_time;
unsigned long sesi1_user_flags;
}; /* session_info_1 */
struct session_info_2 {
char FAR * sesi2_cname;
char FAR * sesi2_username;
unsigned short sesi2_num_conns;
unsigned short sesi2_num_opens;
unsigned short sesi2_num_users;
unsigned long sesi2_time;
unsigned long sesi2_idle_time;
unsigned long sesi2_user_flags;
char FAR * sesi2_cltype_name;
}; /* session_info_2 */
struct session_info_10 {
char FAR * sesi10_cname;
char FAR * sesi10_username;
unsigned long sesi10_time;
unsigned long sesi10_idle_time;
}; /* session_info_10 */
struct session_info_50 {
char FAR * sesi50_cname; //remote computer name (connection id in Netware)
char FAR * sesi50_username;
unsigned long sesi50_key; // used to delete session (not used in Netware)
unsigned short sesi50_num_conns;
unsigned short sesi50_num_opens; //not available in Netware
unsigned long sesi50_time;
unsigned long sesi50_idle_time; //not available in Netware
unsigned char sesi50_protocol;
unsigned char pad1;
}; /* session_info_50 */
/****************************************************************
* *
* Special values and constants - SESSION *
* *
****************************************************************/
/*
* Bits defined in sesi1_user_flags.
*/
#define SESS_GUEST 1 /* session is logged on as a guest */
#define SESS_NOENCRYPTION 2 /* session is not using encryption */
#define SESI1_NUM_ELEMENTS 8
#define SESI2_NUM_ELEMENTS 9
/****************************************************************
* *
* Connection Class *
* *
****************************************************************/
/****************************************************************
* *
* Function prototypes - CONNECTION *
* *
* Peer Server Support
* NetConnectionEnum -
* sLevel 50 on VSERVER and NWSERVER *
* On NWSERVER, this API doesnt provide more *
* information than NetSessionEnum
****************************************************************/
/*** NetConnectionEnum (Admin only)
*
* API_FUNCTION NetConnectionEnum( servername,
* qualifier,
* level,
* buf,
* buflen,
* totalavail )
*
* ENTRY
*
* servername; asciz remote srv name, NULL if local
* qualifier; netname or client computer name.
* computer name should be prefaced by '\\'.
* level; level of info requested
* buf; for returned entry
* buflen; size of buffer
* totalavail; total size needed for buffer
*
* EXIT
*
* 0 = success
* NERR_NetNotStarted
* NERR_ServerNotStarted
* ERROR_INVALID_LEVEL
* NERR_RemoteErr
* NERR_RemoteOnly (DOS)
* ERROR_MORE_DATA
* ERROR_ACCESS_DENIED
* NERR_ClientNameNotFound
* NERR_NetNameNotFound
*
* Buffer contents on response (format for a single entry):
* Level 50 contains a "struct connection_info_50".
***/
extern API_FUNCTION
NetConnectionEnum ( const char FAR * pszServer,
const char FAR * pszQualifier, /* upper case */
short sLevel,
char FAR * pbBuffer,
unsigned short cbBuffer,
unsigned short FAR * pcEntriesRead,
unsigned short FAR * pcTotalAvail );
/****************************************************************
* *
* Data structure templates - CONNECTION *
* *
****************************************************************/
struct connection_info_0 {
unsigned short coni0_id;
}; /* connection_info_0 */
struct connection_info_1 {
unsigned short coni1_id;
unsigned short coni1_type;
unsigned short coni1_num_opens;
unsigned short coni1_num_users;
unsigned long coni1_time;
char FAR * coni1_username;
char FAR * coni1_netname;
}; /* connection_info_1 */
struct connection_info_50 {
unsigned short coni50_type; // share type
unsigned short coni50_num_opens; //not used in Netware
unsigned long coni50_time;
char FAR * coni50_netname; // share name
char FAR * coni50_username; // user connected to share
}; /* connection_info_50 */
/****************************************************************
* *
* File Class *
* *
****************************************************************/
/****************************************************************
* *
* Function prototypes - FILE *
* *
* Peer Server Support
* NetFileEnum - sLevel 50 on VSERVER and NWSERVER *
* NetFileClose2 - VSERVER only
****************************************************************/
/*** NetFileClose2
*
* int FAR PASCAL NetFileClose2( servername, fileid )
*
* ENTRY
*
* servername; asciz remote srv name, NULL if local
* fileid; file id supplied by NetFileEnum
*
* EXIT
*
* 0 = success
* NERR_NetNotStarted
* NERR_ServerNotStarted
* NERR_RemoteErr
* ERROR_ACCESS_DENIED
* NERR_FileIdNotFound
*
***/
extern API_FUNCTION
NetFileClose2 ( const char FAR * pszServer,
unsigned long ulFileId );
/*** NetFileEnum (Admin Only)
*
* int FAR PASCAL NetFileEnum( servername,
* level,
* buf,
* buflen,
* entriesread,
* totalentries )
*
* ENTRY
*
* servername; asciz remote srv name, NULL if local
* basepath; path qualifier for file matching
* (not used for Win95 NWSERVER)
* level; level of detail requested; (50 for Win95 peer servers)
* buf; for returned entries
* buflen; size of buffer on call;
* entriesread; # of entries supplied on return
* totalentries; total # of entries available
*
* EXIT
*
* 0 = success
* NERR_RemoteOnly
* NERR_NetNotStarted
* NERR_ServerNotStarted
* ERROR_INVALID_LEVEL
* NERR_RemoteErr
* ERROR_MORE_DATA
* ERROR_ACCESS_DENIED
*
*
* Buffer contents on response (format for a single entry):
* Level 0 contains a "struct file_info_0".
* Level 50 contains a "struct file_info_50".
*
***/
extern API_FUNCTION
NetFileEnum ( const char FAR * pszServer,
const char FAR * pszBasePath,
short sLevel,
char FAR * pbBuffer,
unsigned short cbBuffer,
unsigned short FAR * pcEntriesRead,
unsigned short FAR * pcTotalAvail );
/****************************************************************
* *
* Data structure templates - FILE *
* *
****************************************************************/
struct file_info_0 {
unsigned short fi0_id;
}; /* file_info_0 */
struct file_info_1 {
unsigned short fi1_id;
unsigned short fi1_permissions;
unsigned short fi1_num_locks;
char FAR * fi1_pathname;
char FAR * fi1_username;
}; /* file_info_1 */
struct file_info_2 {
unsigned long fi2_id;
}; /* file_info_2 */
struct file_info_3 {
unsigned long fi3_id;
unsigned short fi3_permissions;
unsigned short fi3_num_locks;
char FAR * fi3_pathname;
char FAR * fi3_username;
}; /* file_info_3 */
struct file_info_50 {
unsigned long fi50_id; // not used on NWSERVER
unsigned short fi50_permissions; // not available on NWSERVER
unsigned short fi50_num_locks; // not available on NWSERVER
char FAR * fi50_pathname;
char FAR * fi50_username;
char FAR * fi50_sharename;
}; /* file_info_50 */
struct res_file_enum_2 {
unsigned short res_pad; /* not used now */
unsigned short res_fs; /* server type */
unsigned long res_pro; /* progressive */
}; /* res_file_enum_2 */
/****************************************************************
* *
* Special values and constants - FILE *
* *
****************************************************************/
/* bit values for permissions */
#define PERM_FILE_READ 0x1 /* user has read access */
#define PERM_FILE_WRITE 0x2 /* user has write access */
#define PERM_FILE_CREATE 0x4 /* user has create access */
typedef struct res_file_enum_2 FRK;
/*NOINC*/
#define FRK_INIT( f ) \
{ \
(f).res_pad = 0L; \
(f).res_fs = 0; \
(f).res_pro = 0; \
}
/*INC*/
/****************************************************************
* *
* Server Class *
* *
****************************************************************/
/****************************************************************
* *
* Function prototypes - SERVER *
* *
* Peer Server Support
* NetServerGetInfo - sLevel 1,50 on NWSERVER, VSERVER
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -