/*
**++
** MODULE: $RCSfile$
** $Revision: 69805 $
** $Date: 2006-06-13 07:02:41 -0700 (Tue, 13 Jun 2006) $
**
** DESCRIPTION: FIL - filename definitions
**
** ENVIRONMENT: UNIX/DOS
**
** COPYRIGHT: (c) 1990-1997 Staffware plc, All Rights Reserved.
**
** MODIFICATION HISTORY:
**
** $Log$
** Revision 7.8 2006/06/13 14:02:41 mbarnett
** CR18794 - Revert FNAMESIZE back to 28
**
** Revision 7.7 2006/01/30 11:26:45Z rhudson
** CR18121 Correct REQID and CASENUM types
** Revision 7.6 2005/10/21 10:15:10Z SteveC
** Automatically reintegrated (by autreint.ksh):
** Re-integration form PODSTR1361: 1.288 --> 1.288.1.5
** Revision 7.5.2.2 2005/08/30 07:48:08Z SteveC
** Integration from 1.283 --> 1.283.1.2
** Revision 7.5.2.1 2004/08/16 11:08:04Z SteveC
** Duplicate revision
** Revision 7.5 2004/08/16 11:08:04Z RobertH
** Automatically reintegrated (by autreint.ksh):
** CR14960 Reint of linux changes
** Revision 7.4.1.2 2004/08/13 14:46:59Z RobertH
** CR14960 Recorded that define is unsigned long
** Revision 7.4.1.1 2003/09/10 08:46:00Z RobertH
** Duplicate revision
** Revision 7.4 2003/09/10 08:46:00Z SidA
** CR14128 - FUNAMESIZE (46) not big enough for proc library XFR max size (70)
** Revision 7.3 2002/01/09 13:02:26 SteveC
** Automatically reintegrated (by autreint.ksh):
** Reintegration from REINT_630 1.141.1.4
** Revision 7.2.1.2 2002/01/03 11:56:49 SteveC
** Integration from 1.101 --> 1.101.1.27 (PART I)
** Revision 7.2.1.1 2001/07/06 15:23:33 SteveC
** Duplicate revision
** Revision 7.1.2.3 2001/06/08 09:25:55 AmolP
** CR10020 - Commented out FILF_TABLESPACE.
** Revision 7.1.2.2 2001/06/07 16:41:35 AmolP
** CR10020 - Commented out FILF_PROTRAN and FILF_RST_PROTRAN
** as these interfaces are removed.
** Revision 7.1.2.1 2001/03/09 18:45:49 AmolP
** Duplicate revision
** Revision 2.25 2001/03/09 08:54:13 nick
** Automated code tidying
** Revision 2.24 2001/03/08 10:45:06 nick
** Auto dead code removal
** Revision 2.23 2000/07/13 15:22:13 steve
** Automatically reintegrated (by autreint.ksh):
** Integration from POD_STR_040_server branch.
** Revision 2.22.2.2 2000/06/28 16:02:15 steve
** CR9171 : Modify the bld_/brk_ functions in FILNAME.C to cope
** with the NEW and OLD format PACK, MEMO and ATTACHMENT files.
** This has been done for the POD/STR/040 project.
** Revision 2.22.1.1 1998/12/22 11:36:40 steve
** Duplicate revision
** Revision 2.21 1998/10/19 10:26:08 steve
** I247 Reintegration
** Revision 2.20 1998/07/27 12:29:15 steve
** I265 : Re-integration from spruce branch
** Revision 2.19 1998/06/26 08:56:03 ian
** CR7036 - FIL Re-integration
** Revision 2.18.1.5 1998/05/30 09:01:16 ian
** CR7036 - FIL Integration
** Revision 2.18.1.4 1998/05/29 10:55:50 ian
** CR7036 - FIL Integration
** Revision 2.18.1.3 1998/05/08 14:58:42 ian
** CR7036 - FIl Integration swinc stuff
** Revision 2.18.1.2 1998/04/27 11:46:04 ben
** Revision 2.18.1.1 1998/01/30 15:38:56 ben
** Duplicate revision
** Revision 2.17.1.2 1998/01/09 18:56:35 martin
** CR6755 I225 Longnames integration from v2 Aspect work
** Revision 2.17.1.1 1997/07/10 12:53:23 martin
** Duplicate revision
** Revision 1.2 1997/06/19 16:09:55 bruce
** Revision 1.1 1997/06/13 11:42:29 joe
** Initial revision
**
** VER CH.REQ WHO WHEN WHY
** === ====== ==== ======== ===============================
** 1 KJT 05/12/90 Initial Version
** 2 IJD 18/05/93 Added FILF_UXREQS, FILF_SWERROR
** and FILF_SWWARN.
** 3 IJD 22/06/93 Added FILF_TABLESPACE.
** 4 CR3299 SID 12/07/93 Added FILF_S4WPERMSCHK
** 5 CR3300 CJED 12-07-93 Added FILF_GWDFILE
** 6 CR3337 GR 12-08-93 Added FILF_BGLOG, FILF_SHUTUSER
** 7 CR4008 CJED 07-07-94 Added FILF_TSWDIR, FILF_THOME
** 8 CR5823 IJD 04/07/97 Added FILF_ODBCERR.
** 9 CR5651 SAC 18-11-96 I225 LONG_USER_NODE_NAME
** 10 CR7287 SAC 14-07-98 PID file addition interfaces
** ============================================================
**--
*/
#ifndef __filname__
#define __filname__
/* @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ */
/* NB No Code Outside filname.c Should Refer to the fields */
/* within These Structures! */
/* @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ */
/* CR5651 SAC : LONG_USER_NODE_NAME - Increase */
#ifdef LONG_USER_NODE_NAME /* I225 */
/* SID CR14128 FUNAMESIZE utb 46 - nowhere big enouhg for possible 65 char library name.xfr files! */
#define FUNAMESIZE 70
/* CR18794 MAB 13/06/2006 - Undo CR16956 which increased this to 40 thus breaking existing products
* not build against the latest code. Found another solution for CR16956
*/
#define FNAMESIZE 28
#define FPATHSIZE 256
#else
#define FUNAMESIZE 30
#define FNAMESIZE 12
#define FPATHSIZE 128
#endif /* I225 */
typedef struct
{
char ufilename[FUNAMESIZE + 1];
} UFILNAME;
typedef UFILNAME SWFAR *LPUFILNAME;
typedef struct
{
char filename[FNAMESIZE + 1];
} SFILNAME;
typedef SFILNAME SWFAR *LPSFILNAME;
typedef struct
{
char filepath[FPATHSIZE + 1];
} FILNAME;
typedef FILNAME SWFAR *LPFILNAME;
typedef UCHR AUFILE[FUNAMESIZE + 1];
typedef UCHR AFILE[FNAMESIZE + 1];
typedef UCHR APATH[FPATHSIZE + 1];
typedef LPUCHR LPAUFILE;
typedef LPUCHR LPAFILE;
typedef LPUCHR LPAPATH;
/* SID 5.1.6 - Moved from prodata.c */
#define F_PACKTEMP "packtemp"
/* Literals for filename building: packfiles, memos, notepad files etc */
#define FIL_ALLPROCS 0
#define FIL_NOPROCS -1
#define FIL_ALLCASES 0L
#define FIL_ALLDIRS 0
#define FIL_NODIRS -1
#define FIL_ALLIDS 0
#define FIL_NOIDS -1
#define FIL_ALLVERS 0
/* Literals for fixed file names (use with file_name()) */
#define FILF_SWDEFS 0
#define FILF_STAFFNET 1
#define FILF_STAFFS 2
#define FILF_STAFFDBS 3
#define FILF_STAFFUSR 4
#define FILF_STAFFINF 5
#define FILF_STAFFROL 6
#define FILF_STAFFP 7
#define FILF_PRO 8
#define FILF_LST 9
#define FILF_CCF 10
#define FILF_CDF 11
#define FILF_ATF 12
#define FILF_STAFFO 13
#define FILF_LOKEXT 14
/* CR6946 SAC : Moved to the end
#define FILF_MBOX 15
#define FILF_IBOX 16
*/
#define FILF_LIBOX 17
#define FILF_LOGBOX 18
#define FILF_NOD 19
#define FILF_STAFFDBG 20
#define FILF_STAFFIDX 21
#define FILF_SDPRO 22
#define FILF_SHUTDOWN 23
#define FILF_SLEEP 24
#define FILF_PAUSE 25
#define FILF_STAFFPMS 26
#define FILF_SWDBGMES 27
#define FILF_PEXMAIL 28
#define FILF_STAFFMAN 29
#define FILF_LICENCE 30
#define FILF_TTBL 31
#define FILF_SPH 32
#define FILF_STAFFLCK 33
#define FILF_STAFFLOK 34
/*
* CR10020 amolp 05-05-2001
* Commented out following definition as these interfaces are removed
*/
/*#define FILF_PROTRAN 35*/
#define FILF_CMS 36
#define FILF_IFCMES 37
#define FILF_ABOX 38
#define FILF_PDB 39
#define FILF_SELLIST 40
/*
* CR10020 amolp 05-05-2001
* Commented out following definition as these interfaces are removed
*/
/*#define FILF_RST_PROTRAN 41*/
#define FILF_ERMES 42
#define FILF_XFR 43
#define FILF_SWMEN 44
#define FILF_TMPINF 45
#define FILF_TMPDBS 46
#define FILF_TMPS 47
#define FILF_UXREQS 48
#define FILF_SWERROR 49
#define FILF_SWWARN 50
/*
* CR10020 amolp 05-05-2001
* Commented out following definition as these interfaces are removed
*/
/*#define FILF_TABLESPACE 51*/
#define FILF_S4WPERMSCHK 52
#define FILF_GWDFILE 53
#define FILF_BGLOG 54
#define FILF_SHUTUSER 55
#define FILF_TSWDIR 56
#define FILF_THOME 57
#define FILF_INFERR 58
#define FILF_ORAERR 59
#define FILF_WARNFLG 60
/* CR5823 IJD 04/07/97 Added FILF_ODBCERR */
#define FILF_ODBCERR 61
#define FILF_PROCORD 62
#define FILF_CMDLOG 63
/* CR6946 SAC : New MBOX types */
/* standard priority MBOX */
#define FILF_MBOX 64
#define FILF_IBOX (FILF_MBOX + 1)
#define FILF_PBOX (FILF_MBOX + 2)
#define FILF_IBOX_CMT (FILF_MBOX + 3)
/* highest priority MBOX */
#define FILF_MBOX_INTERNAL 68
#define FILF_IBOX_INTERNAL (FILF_MBOX_INTERNAL + 1)
#define FILF_PBOX_INTERNAL (FILF_MBOX_INTERNAL + 2)
#define FILF_IBOX_INTERNAL_CMT (FILF_MBOX_INTERNAL + 3)
/* higher priority MBOX */
#define FILF_MBOX_H1 72
#define FILF_IBOX_H1 (FILF_MBOX_H1 + 1)
#define FILF_PBOX_H1 (FILF_MBOX_H1 + 2)
#define FILF_IBOX_H1_CMT (FILF_MBOX_H1 + 3)
/* lower priority MBOX */
#define FILF_MBOX_L1 76
#define FILF_IBOX_L1 (FILF_MBOX_L1 + 1)
#define FILF_PBOX_L1 (FILF_MBOX_L1 + 2)
#define FILF_IBOX_L1_CMT (FILF_MBOX_L1 + 3)
/* I245 ZJS Ben's Case Indexing stuff */
#define FILF_CIF 80
#define FILF_CIF_NEW 81
/* literal for seperate SWUSER IDX file on NT */
#define FILF_STAFFIDX_PI 82 /* CR7049 ZJS 15/04/98 */
/* CR7287 SAC 14-07-98 : File containing PID's */
#define FILF_SWPID 83
/* I247 SAC : File type for participation records */
#define FILF_PARTIC 84
/* I247 SAC : File type for redirection records */
#define FILF_REDIR 85
/* CR7712 IJD 13/11/98 Added FILF_RECOVERY */
#define FILF_RECOVERY 86
/* CR9983 ZJS 19/04/2001. Files required for CDQP POD/CUS/375 */
#define FILF_CDQPGLO 87
#define FILF_CDQPUSR 88
#define FILF_CDQPGRP 89
#define FILF_CDQPQ 90
#define FILF_CDQPCONFIG 91
/* CR9983 End */
/* CR10042 New file sw_notify for notification events */
#define FILF_SWNOTIFY 92
/* CR9171 SAC 27-06-00 : START */
/* structure to hold information extracted from the */
/* filename passed in. If no information could be found*/
/* then the entry will be '-1'. */
typedef struct
{
long pnum;
SWCASENUM cnum;
int id;
long orec;
int oreccount;
SWREQID reqid;
int version;
} FILNAME_INFO;
typedef FILNAME_INFO SWFAR *LPFILNAME_INFO;
/* returns from 'brk_name()' and 'brk_oldname()' to */
/* indicate the type of file processed. */
#define FILF_INVALID_FILE 0
#define FILF_START_MEMO_FILE 1
#define FILF_NORMAL_MEMO_FILE 2
#define FILF_CENTRAL_MEMO_FILE 3
#define FILF_START_PACK_FILE 4
#define FILF_NORMAL_PACK_FILE 5
#define FILF_CENTRAL_ATTACHMENT_FILE 6
#define FILF_NORMAL_ATTACHMENT_FILE 7
/* lengths for NEW and OLD format files */
#define FILF_OLD_FORMAT_FILE_LEN 8
#define FILF_NEW_FORMAT_FILE_LEN 10
/* lengths for NEW and OLD case numbers in files */
#define FILF_OLD_CNUM_LEN 4
#define FILF_NEW_CNUM_LEN 6
/* new size of base 40 for NEW format */
#define FILF_OLD_CNUM_BASE_40 2560000 /* 40^4 */
/* CR14960 Linux Port - record the fact that this is unsigned long */
/* Thats an LU (lu) after 4096000000 */
#define FILF_NEW_CNUM_BASE_40 4096000000lu /* 40^6 */
/* CR9171 SAC 27-06-00 : END */
#endif