source: trunk/dll/makelist.h@ 1194

Last change on this file since 1194 was 1077, checked in by Steven Levine, 17 years ago

Enhance Fortify infrastructure
Add Fortify_SetOwner Fortify_ChangeOwner Fortify_ChangeScope
Add FORTIFY_VERBOSE_SCOPE_ENTER_EXIT support
Add more fm/2 Fortify tooling and rework existing tooling for correct nesting
Still lots to do for cross-thread allocations
Add misc.h
Add walkem.h

File size: 2.0 KB
Line 
1
2/***********************************************************************
3
4 $Id: $
5
6 makelist common definitions
7
8 Copyright (c) 1993-98 M. Kimes
9 Copyright (c) 2001, 2008 Steven H. Levine
10
11 05 Jan 08 SHL Move makelist.c definitions here
12 22 Jun 08 GKY Change variable type to fix compiler warning
13 17 Jul 08 SHL Add SetListOwner for Fortify support
14
15***********************************************************************/
16
17#if !defined(MAKELIST_H)
18#define MAKELIST_H
19
20#if defined(__IBMC__)
21#if __IBMC__ != 430
22#error VAC365 required for long long support
23#endif
24#if !defined(_LONG_LONG)
25#error Long long support not enabled
26#endif
27#endif
28
29#if !defined(OS2_INCLUDED)
30#define INCL_WINSTDCNR // avl.h
31#define INCL_LONGLONG
32#include <os2.h>
33#else
34#if !defined(INCL_WINSTDCNR)
35#error INCL_WINSTDCNR required
36#endif
37#if !defined(INCL_LONGLONG)
38#error INCL_LONGLONG required by makelist.h
39#endif
40#endif
41
42#include "avl.h" // ARC_TYPE
43
44typedef struct
45{
46 ULONG attrFile;
47 ULONGLONG cbFile;
48 ULONGLONG easize;
49 FDATE date;
50 FTIME time;
51 FDATE ladate;
52 FTIME latime;
53 FDATE crdate;
54 FTIME crtime;
55 CHAR fname[1];
56}
57FILELIST;
58
59typedef struct
60{
61 HWND hwnd;
62 HWND hwndS;
63 ULONG type;
64 USHORT id;
65 INT flags;
66 struct __arc_type__ *info;
67 CHAR **list;
68 ULONG *ulitemID;
69 ULONGLONG *cbFile;
70 CHAR targetpath[CCHMAXPATH + 6];
71 CHAR arcname[CCHMAXPATH];
72 CHAR runfile[CCHMAXPATH];
73}
74LISTINFO;
75
76INT AddToList(CHAR *string, CHAR ***list, UINT *pnumfiles, UINT *pnumalloced);
77INT AddToFileList(CHAR *string, FILEFINDBUF4L *ffb4, FILELIST ***list,
78 UINT *pnumfiles, UINT *numalloced);
79CHAR **BuildList(HWND hwndCnr);
80VOID FreeListInfo(LISTINFO *li);
81VOID FreeList(CHAR **list);
82VOID SortList(LISTINFO *li);
83CHAR **BuildArcList(HWND hwndCnr);
84CHAR **RemoveFromList(CHAR **list, CHAR *item);
85CHAR **CombineLists(CHAR **prime, CHAR **add);
86
87#ifdef FORTIFY
88VOID SetListOwner(LISTINFO *li);
89#endif // FORTIFY
90
91#endif // MAKELIST_H
Note: See TracBrowser for help on using the repository browser.