📄 mms_pfil.h
字号:
/************************************************************************//* SISCO SOFTWARE MODULE HEADER *****************************************//************************************************************************//* (c) Copyright Systems Integration Specialists Company, Inc., *//* 1986 - 1997, All Rights Reserved. *//* *//* MODULE NAME : mms_pfil.h *//* PRODUCT(S) : MMSEASE, MMSEASE-LITE *//* *//* MODULE DESCRIPTION : *//* This file has the data structures and function definitions *//* required to interface with MMS file services at the primitive *//* level. *//* *//* Parameters : In general, the first parameter is the channel *//* that the request or response is to be sent over. *//* For Responses, the second parameter is the Invoke *//* ID to be used. The last parameter is used to pass *//* operation specific information by pointer. *//* *//* Return *//* Values : Request functions return a pointer to the pending *//* request tracking structure, of type MMSREQ_PEND. *//* In case of error, the pointer is returned == 0 *//* and mms_op_err is written with the err code. *//* Response functions return 0 if OK, else an error *//* code. *//* *//* MODIFICATION LOG : *//* Date Who Rev Comments *//* -------- --- ------ ------------------------------------------- *//* 08/14/97 RKR 01 Format changes *//* 04/02/97 DTL 7.00 MMSEASE 7.0 release. See MODL70.DOC for *//* history. *//************************************************************************/#ifndef MMS_PFIL_INCLUDED#define MMS_PFIL_INCLUDED#ifdef __cplusplusextern "C" {#endif#include "mms_mp.h"/************************************************************************//************************************************************************//* FILE MANAGEMENT SERVICES *//************************************************************************//* The structures below are used to pass FILE MANAGEMENT information *//* to/from the MMS primitives. *//************************************************************************/#define MFSTAT_NO_ACT 0#define MFSTAT_PEND_OPEN 1#define MFSTAT_OPENED 2#define MFSTAT_PEND_CLOSE 3/************************************************************************//* OBTAIN FILE, Conformance: FIL1 *//************************************************************************//* REQUEST : */struct obtfile_req_info { ST_BOOLEAN ar_title_pres; /* application title present */ ST_INT ar_len; /* length of app proc title */ ST_UCHAR *ar_title; /* application process title */ ST_INT num_of_src_fname; /* num of source fname elements */ ST_INT num_of_dest_fname; /* num of dest. fname elements *//* list of source file names *//* FILE_NAME src_fname_list[ num_of_src_fname ]; *//* list of dest. file names *//* FILE_NAME dest_fname_list[ num_of_dest_fname ]; */ SD_END_STRUCT };typedef struct obtfile_req_info OBTFILE_REQ_INFO;/* RESPONSE : NULL */#ifndef MMS_LITEMMSREQ_PEND *mp_obtfile (ST_INT chan, OBTFILE_REQ_INFO *info);ST_RET mp_obtfile_resp (MMSREQ_IND *ind);#elseST_RET mpl_obtfile (OBTFILE_REQ_INFO *info);ST_RET mpl_obtfile_resp (ST_UINT32 invoke);#endif/************************************************************************//* FILE OPEN, Conformance: FIL2 *//************************************************************************//* REQUEST : */struct fopen_req_info { ST_INT num_of_fname; /* num of fname elements */ ST_UINT32 init_pos; /* initial position *//* list of file names *//* FILE_NAME fname_list[ num_of_fname ]; */ SD_END_STRUCT };typedef struct fopen_req_info FOPEN_REQ_INFO;/* RESPONSE : */struct file_attr { ST_UINT32 fsize; /* file size (# bytes) */ ST_BOOLEAN mtimpres; /* last modified time present */ time_t mtime; /* last modified time */ };typedef struct file_attr FILE_ATTR;struct fopen_resp_info { ST_INT32 frsmid; /* file read state machine ID */ FILE_ATTR ent; /* file attributes */ };typedef struct fopen_resp_info FOPEN_RESP_INFO;#ifndef MMS_LITEMMSREQ_PEND *mp_fopen (ST_INT chan, FOPEN_REQ_INFO *info);ST_RET mp_fopen_resp (MMSREQ_IND *ind, FOPEN_RESP_INFO *info);#elseST_RET mpl_fopen (FOPEN_REQ_INFO *info);ST_RET mpl_fopen_resp (ST_UINT32 invoke, FOPEN_RESP_INFO *info);#endif/************************************************************************//* FILE READ, Conformance: FIL2 *//************************************************************************//* REQUEST : */struct fread_req_info { ST_INT32 frsmid; /* file read state maching ID */ };typedef struct fread_req_info FREAD_REQ_INFO;/* RESPONSE : */struct fread_resp_info { ST_INT fd_len; /* length of file data octets */ ST_UCHAR *filedata; /* pointer to file data octets */ ST_BOOLEAN more_follows; /* additional file content */ /* default: SD_TRUE */ SD_END_STRUCT };typedef struct fread_resp_info FREAD_RESP_INFO;#ifndef MMS_LITEMMSREQ_PEND *mp_fread (ST_INT chan,FREAD_REQ_INFO *info);ST_RET mp_fread_resp (MMSREQ_IND *ind, FREAD_RESP_INFO *info);#elseST_RET mpl_fread (FREAD_REQ_INFO *info);ST_RET mpl_fread_resp (ST_UINT32 invoke, FREAD_RESP_INFO *info);#endif/************************************************************************//* FILE CLOSE, Conformance: FIL2 *//************************************************************************//* REQUEST : */struct fclose_req_info { ST_INT32 frsmid; /* file read state maching ID */ };typedef struct fclose_req_info FCLOSE_REQ_INFO;/* RESPONSE : NULL */#ifndef MMS_LITEMMSREQ_PEND *mp_fclose (ST_INT chan, FCLOSE_REQ_INFO *info);ST_RET mp_fclose_resp (MMSREQ_IND *ind);#elseST_RET mpl_fclose (FCLOSE_REQ_INFO *info);ST_RET mpl_fclose_resp (ST_UINT32 invoke);#endif/************************************************************************//* FILE RENAME, Conformance: FIL3 *//************************************************************************//* REQUEST : */struct frename_req_info { ST_INT num_of_cur_fname; /* num of current fname elements*/ ST_INT num_of_new_fname; /* num of new fname elements *//* list of current file names *//* FILE_NAME cur_fname_list[ num_of_cur_fname ]; *//* list of new file names *//* FILE_NAME new_fname_list[ num_of_new_fname ]; */ SD_END_STRUCT };typedef struct frename_req_info FRENAME_REQ_INFO;/* RESPONSE : NULL */#ifndef MMS_LITEMMSREQ_PEND *mp_frename (ST_INT chan, FRENAME_REQ_INFO *info);ST_RET mp_frename_resp (MMSREQ_IND *ind);#elseST_RET mpl_frename (FRENAME_REQ_INFO *info);ST_RET mpl_frename_resp (ST_UINT32 invoke);#endif/************************************************************************//* FILE DELETE, Conformance: FIL3 *//************************************************************************//* REQUEST : */struct fdelete_req_info { ST_INT num_of_fname; /* num of fname elements *//* list of file names *//* FILE_NAME fname_list[ num_of_fname ]; */ SD_END_STRUCT };typedef struct fdelete_req_info FDELETE_REQ_INFO;/* RESPONSE : NULL */#ifndef MMS_LITEMMSREQ_PEND *mp_fdelete (ST_INT chan, FDELETE_REQ_INFO *info);ST_RET mp_fdelete_resp (MMSREQ_IND *info);#elseST_RET mpl_fdelete (FDELETE_REQ_INFO *info);ST_RET mpl_fdelete_resp (ST_UINT32 invoke);#endif/************************************************************************//* FILE DIRECTORY, Conformance: FIL3 *//************************************************************************//* REQUEST : */struct fdir_req_info { ST_BOOLEAN filespec_pres; /* file specification present */ ST_BOOLEAN cont_after_pres; /* continue after name present */ ST_INT num_of_fs_fname; /* num of fname elements */ ST_INT num_of_ca_fname; /* num of cont after elements *//* list of current file names *//* FILE_NAME fs_fname_list[ num_of_fs_fname ]; *//* list of new file names *//* FILE_NAME ca_fname_list[ num_of_ca_fname ]; */ SD_END_STRUCT };typedef struct fdir_req_info FDIR_REQ_INFO;/* RESPONSE : */struct fdir_dir_ent { ST_UINT32 fsize; /* file size (# bytes) */ ST_BOOLEAN mtimpres; /* last modified time present */ time_t mtime; /* last modified time */ ST_INT num_of_fname; /* num of fname elements *//* list of file names *//* FILE_NAME fname_list[ num_of_fname ]; */ SD_END_STRUCT };typedef struct fdir_dir_ent FDIR_DIR_ENT;struct fdir_resp_info { ST_INT num_dir_ent; /* number of directory entries */ ST_BOOLEAN more_follows; /* more dir entries follow */ /* default: SD_FALSE *//* list of directory entries *//* FDIR_DIR_ENT dir_ent_list [num_dir_ent] */ SD_END_STRUCT };typedef struct fdir_resp_info FDIR_RESP_INFO;#ifndef MMS_LITEMMSREQ_PEND *mp_fdir (ST_INT chan,FDIR_REQ_INFO *info);ST_RET mp_fdir_resp (MMSREQ_IND *ind, FDIR_RESP_INFO *info);#elseST_RET mpl_fdir (FDIR_REQ_INFO *info);ST_RET mpl_fdir_resp (ST_UINT32 invoke, FDIR_RESP_INFO *info);#endif#ifdef __cplusplus}#endif#endif /* #define MMS_PFIL_INCLUDED */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -