This file is indexed.

/usr/include/libpff/definitions.h is in libpff-dev 20120802-2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
/*
 * Definitions for libpff
 *
 * Copyright (c) 2008-2012, Joachim Metz <joachim.metz@gmail.com>
 *
 * Refer to AUTHORS for acknowledgements.
 *
 * This software is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * This software is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU Lesser General Public License
 * along with this software.  If not, see <http://www.gnu.org/licenses/>.
 */

#if !defined( _LIBPFF_DEFINITIONS_H )
#define _LIBPFF_DEFINITIONS_H

#include <libpff/types.h>

#define LIBPFF_VERSION					20120802

/* The version string
 */
#define LIBPFF_VERSION_STRING				"20120802"

/* The access flags definitions
 * bit 1        set to 1 for read access
 * bit 2        set to 1 for write access
 * bit 3-8      not used
 */
enum LIBPFF_ACCESS_FLAGS
{
	LIBPFF_ACCESS_FLAG_READ				= 0x01,
/* Reserved: not supported yet */
	LIBPFF_ACCESS_FLAG_WRITE			= 0x02
};

/* The file access macros
 */
#define LIBPFF_OPEN_READ				( LIBPFF_ACCESS_FLAG_READ )
/* Reserved: not supported yet */
#define LIBPFF_OPEN_WRITE				( LIBPFF_ACCESS_FLAG_WRITE )
/* Reserved: not supported yet */
#define LIBPFF_OPEN_READ_WRITE				( LIBPFF_ACCESS_FLAG_READ | LIBPFF_ACCESS_FLAG_WRITE )

/* TODO deprecated remove after a while */
#define LIBPFF_FLAG_READ				LIBPFF_ACCESS_FLAG_READ
#define LIBPFF_FLAG_WRITE				LIBPFF_ACCESS_FLAG_WRITE

/* The recovery flags
 */
enum LIBPFF_RECOVERY_FLAGS
{
	LIBPFF_RECOVERY_FLAG_IGNORE_ALLOCATION_DATA	= 0x01,
	LIBPFF_RECOVERY_FLAG_SCAN_FOR_FRAGMENTS		= 0x02
};

/* The file types
 */
enum LIBPFF_FILE_TYPES
{
	LIBPFF_FILE_TYPE_32BIT				= 32,
	LIBPFF_FILE_TYPE_64BIT				= 64
};

/* The file content types
 */
enum LIBPFF_FILE_CONTENT_TYPES
{
	LIBPFF_FILE_CONTENT_TYPE_PAB			= (int) 'a',
	LIBPFF_FILE_CONTENT_TYPE_PST			= (int) 'p',
	LIBPFF_FILE_CONTENT_TYPE_OST			= (int) 'o'
};

/* The encryption types
 */
enum LIBPFF_ENCRYPTION_TYPES
{
	LIBPFF_ENCRYPTION_TYPE_NONE			= 0,
	LIBPFF_ENCRYPTION_TYPE_COMPRESSIBLE		= 1,
	LIBPFF_ENCRYPTION_TYPE_HIGH			= 2
};

/* The item types
 * These item types partially map to the message classes
 * LIBPFF_ITEM_TYPE_UNDEFINED		(initialization value)
 * LIBPFF_ITEM_TYPE_ACTIVITY		IPM.Activity
 * LIBPFF_ITEM_TYPE_APPOINTMENT		IPM.Appointment
 * LIBPFF_ITEM_TYPE_ATTACHMENT		(attachment)
 * LIBPFF_ITEM_TYPE_ATTACHMENTS		(attachments)
 * LIBPFF_ITEM_TYPE_COMMON		IPM
 * LIBPFF_ITEM_TYPE_CONFIGURATION       IPM.Configuration.*
 * LIBPFF_ITEM_TYPE_CONFLICT_MESSAGE    IPM.Conflict.Message
 * LIBPFF_ITEM_TYPE_CONTACT		IPM.Contact
 * LIBPFF_ITEM_TYPE_DISTRIBUTION_LIST	IPM.DistList
 * LIBPFF_ITEM_TYPE_DOCUMENT		IPM.Document.*
 * LIBPFF_ITEM_TYPE_EMAIL		IPM.Note, REPORT.IPM.Note.*
 * LIBPFF_ITEM_TYPE_EMAIL_SMIME		IPM.Note.SMIME.*
 * LIBPFF_ITEM_TYPE_FAX			IPM.FAX, IPM.Note.Fax
 * LIBPFF_ITEM_TYPE_FOLDER		(folder/container)
 * LIBPFF_ITEM_TYPE_MEETING		IPM.Schedule.Meeting
 * LIBPFF_ITEM_TYPE_MMS			IPM.Note.Mobile.MMS
 * LIBPFF_ITEM_TYPE_NOTE		IPM.StickyNote
 * LIBPFF_ITEM_TYPE_POSTING_NOTE	IPM.Post
 * LIBPFF_ITEM_TYPE_RECIPIENTS          (recipients)
 * LIBPFF_ITEM_TYPE_RSS_FEED		IPM.Post.RSS
 * LIBPFF_ITEM_TYPE_SHARING		IPM.Sharing.*
 * LIBPFF_ITEM_TYPE_SMS			IPM.Note.Mobile.SMS
 * LIBPFF_ITEM_TYPE_TASK		IPM.Task
 * LIBPFF_ITEM_TYPE_TASK_REQUEST	IPM.TaskRequest.*
 * LIBPFF_ITEM_TYPE_VOICEMAIL		IPM.Note.Voicemail
 * LIBPFF_ITEM_TYPE_UNKNOWN		(unknown item type, used in folder content type)
 *
 * Unsupported:
 * IPM.Post
 */
enum LIBPFF_ITEM_TYPES
{
	LIBPFF_ITEM_TYPE_UNDEFINED,
	LIBPFF_ITEM_TYPE_ACTIVITY,
	LIBPFF_ITEM_TYPE_APPOINTMENT,
	LIBPFF_ITEM_TYPE_ATTACHMENT,
	LIBPFF_ITEM_TYPE_ATTACHMENTS,
	LIBPFF_ITEM_TYPE_COMMON,
	LIBPFF_ITEM_TYPE_CONFIGURATION,
	LIBPFF_ITEM_TYPE_CONFLICT_MESSAGE,
	LIBPFF_ITEM_TYPE_CONTACT,
	LIBPFF_ITEM_TYPE_DISTRIBUTION_LIST,
	LIBPFF_ITEM_TYPE_DOCUMENT,
	LIBPFF_ITEM_TYPE_EMAIL,
	LIBPFF_ITEM_TYPE_EMAIL_SMIME,
	LIBPFF_ITEM_TYPE_FAX,
	LIBPFF_ITEM_TYPE_FOLDER,
	LIBPFF_ITEM_TYPE_MEETING,
	LIBPFF_ITEM_TYPE_MMS,
	LIBPFF_ITEM_TYPE_NOTE,
	LIBPFF_ITEM_TYPE_POSTING_NOTE,
	LIBPFF_ITEM_TYPE_RECIPIENTS,
	LIBPFF_ITEM_TYPE_RSS_FEED,
	LIBPFF_ITEM_TYPE_SHARING,
	LIBPFF_ITEM_TYPE_SMS,
	LIBPFF_ITEM_TYPE_SUB_ASSOCIATED_CONTENTS,
	LIBPFF_ITEM_TYPE_SUB_FOLDERS,
	LIBPFF_ITEM_TYPE_SUB_MESSAGES,
	LIBPFF_ITEM_TYPE_TASK,
	LIBPFF_ITEM_TYPE_TASK_REQUEST,
	LIBPFF_ITEM_TYPE_VOICEMAIL,
	LIBPFF_ITEM_TYPE_UNKNOWN
};

/* The attachment types
 */
enum LIBPFF_ATTACHMENT_TYPES
{
	LIBPFF_ATTACHMENT_TYPE_UNDEFINED		= 0,
	LIBPFF_ATTACHMENT_TYPE_DATA			= (int) 'd',
	LIBPFF_ATTACHMENT_TYPE_ITEM			= (int) 'i',
	LIBPFF_ATTACHMENT_TYPE_REFERENCE		= (int) 'r'
};

/* The unallocated block type
 */
enum LIBPFF_UNALLOCATED_BLOCK_TYPES
{
	LIBPFF_UNALLOCATED_BLOCK_TYPE_DATA		= (int) 'd',
	LIBPFF_UNALLOCATED_BLOCK_TYPE_PAGE		= (int) 'p'
};

/* The name to id map entry types
 */
enum LIBPFF_NAME_TO_ID_MAP_ENTRY_TYPES
{
        LIBPFF_NAME_TO_ID_MAP_ENTRY_TYPE_NUMERIC	= (int) 'n',
        LIBPFF_NAME_TO_ID_MAP_ENTRY_TYPE_STRING		= (int) 's'
};

/* The entry value flags
 */
enum LIBPFF_ENTRY_VALUE_FLAGS
{
	LIBPFF_ENTRY_VALUE_FLAG_MATCH_ANY_VALUE_TYPE	= 0x01,
	LIBPFF_ENTRY_VALUE_FLAG_IGNORE_NAME_TO_ID_MAP	= 0x02
};

#endif