This file is indexed.

/usr/include/dar/compile_time_features.hpp is in libdar-dev 2.5.3-1ubuntu1.

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
/*********************************************************************/
// dar - disk archive - a backup/restoration program
// Copyright (C) 2002-2052 Denis Corbin
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
//
// to contact the author : http://dar.linux.free.fr/email.html
/*********************************************************************/

    /// \file compile_time_features.hpp
    /// \brief nested namespace containing routines that give features activated at compile time
    /// \ingroup API


#ifndef COMPILE_TIME_FEATURES_HPP
#define COMPILE_TIME_FEATURES_HPP

#include "/usr/include/dar/libdar_my_config.h"


    /// \addtogroup API
    /// @{


namespace libdar
{

	/// nested namespace inside libdar

	/// it contains one routine per feature that can be activated or disabled at compile time
	/// this is to replace the "libdar::get_compile_time_feature" function
	/// that cannot be updates without breaking backward compatibility

    namespace compile_time
    {
	    /// returns whether EA support has been activated at compilation time
	bool ea();

	    /// returns whether largefile (>2GiB) support has been activated at compilation time
	bool largefile();

	    /// returns whether nodump flag support has been activated at compilation time
	bool nodump();

	    /// returns whether special allocation support has been activated at compilation time
	    ///
	    /// special allocation support brings from a tiny to an important improvement in
	    /// execution time, depending on the number of small files involved in the operation
	bool special_alloc();

	    /// returns the internal integer type used

	    /// \note zero is returned if infinint type is used
	U_I bits();

	    /// returns whether the current libdar is thread safe
	bool thread_safe();

	    /// returns whether libdar is dependent on libz and if so has gzip compression/decompression available
	bool libz();

	    /// returns whether libdar is dependent on libbz2 and if so has bzip2 compression/decompression available
	bool libbz2();

	    /// returns whether libdar is dependent on liblzo and if so has lzo compression/decompression available
	bool liblzo();

	    /// returns whether libdar is dependent on liblxz/liblzma and if so has xz compression/decompression available
	bool libxz();

	    /// returns whether libdar is dependent on libgcrypt and if so has strong encryption and hashing features available
	bool libgcrypt();

	    /// returns whether libdar can support furtive read mode when run by privileged user
	bool furtive_read();

	    /// type used to return the endian nature of the current system
	enum endian
	{
	    big = 'B',    //< big endian
	    little = 'L', //< little endian
	    error = 'E'   //< neither big nor little endian! (libdar cannot run on such system)
	};

	    /// returns the detected integer endian of the system
	endian system_endian();

	    /// returns true if libdar has support for posix_fadvise activated available
	bool posix_fadvise();

	    /// returns whether libdar has been built with speed optimization for last directory
	bool fast_dir();

	    /// returns whether libdar has been built with support for linux ext2/3/4 FSA
	bool FSA_linux_extX();

	    /// returns whether libdar has been built with support for HFS+ FSA
	bool FSA_birthtime();

	    /// returns whether libdar is able to read timestamps at a microsecond accuracy
	bool microsecond_read();

	    /// returns whether libdar is able to write timestamps at a microsecond accuracy
	bool microsecond_write();

	    /// returns whether libdar is able to restore dates of symlinks
	bool symlink_restore_dates();

	    /// returns whether public key cipher (relying on gpgme) are available
	bool public_key_cipher();

	    /// returns whether libthreadar linking will be done, allowing libdar to span several threads
	bool libthreadar();


    }

} // end of namespace

    /// @}


#endif