This file is indexed.

/usr/include/ncbi-vdb/kapp/loader-file.h is in libncbi-vdb-dev 2.8.1+dfsg-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
/*===========================================================================
*
*                            PUBLIC DOMAIN NOTICE
*               National Center for Biotechnology Information
*
*  This software/database is a "United States Government Work" under the
*  terms of the United States Copyright Act.  It was written as part of
*  the author's official duties as a United States Government employee and
*  thus cannot be copyrighted.  This software/database is freely available
*  to the public for use. The National Library of Medicine and the U.S.
*  Government have not placed any restriction on its use or reproduction.
*
*  Although all reasonable efforts have been taken to ensure the accuracy
*  and reliability of the software and data, the NLM and the U.S.
*  Government do not and cannot warrant the performance or results that
*  may be obtained by using this software or data. The NLM and the U.S.
*  Government disclaim all warranties, express or implied, including
*  warranties of performance, merchantability or fitness for any particular
*  purpose.
*
*  Please cite the author in any work or product based on this material.
*
* ===========================================================================
*
*/
#ifndef _h_kapp_loader_file_
#define _h_kapp_loader_file_

#ifndef _h_kapp_extern_
#include <kapp/extern.h>
#endif

#ifndef _h_klib_defs_
#include <klib/defs.h>
#endif

#include <stdarg.h>

#include <klib/log.h>

#ifdef __cplusplus
extern "C" {
#endif

struct KDirectory;

/*--------------------------------------------------------------------------
* SRA reader buffered input file
*/
typedef struct KLoaderFile KLoaderFile;

/*
    md5_digest - not null forces MD5 verification for the file content
    read_ahead - force reading of the file in a diff thread, ahead of time,
                 usefull on compressed file, speeds up MD5 verify too
*/
KAPP_EXTERN rc_t CC KLoaderFile_Make(const KLoaderFile **file, struct KDirectory const* dir, const char* filename,
                                     const uint8_t* md5_digest, bool read_ahead);

KAPP_EXTERN rc_t CC KLoaderFile_Release(const KLoaderFile* cself, bool exclude_from_progress);

/* temporary close the file to avoid too many open files, but stay on position */
KAPP_EXTERN rc_t CC KLoaderFile_Close(const KLoaderFile* cself);

/* restart reading from beginning of the file */
KAPP_EXTERN rc_t CC KLoaderFile_Reset(const KLoaderFile* cself);

KAPP_EXTERN rc_t CC KLoaderFile_SetReadAhead(const KLoaderFile* cself, bool read_ahead);

/* print error msg file file info and return original!! rc
   if msg is NULL fmt is not used so call with NULL, NULL if no msg needs to be printed */
KAPP_EXTERN rc_t CC KLoaderFile_LOG(const KLoaderFile* cself, KLogLevel lvl, rc_t rc, const char *msg, const char *fmt, ...);
KAPP_EXTERN rc_t CC KLoaderFile_VLOG(const KLoaderFile* cself, KLogLevel lvl, rc_t rc, const char *msg, const char *fmt, va_list args);

/* returns true if eof is reached and buffer is empty */
KAPP_EXTERN rc_t CC KLoaderFile_IsEof(const KLoaderFile* cself, bool* eof);

/* returns current buffer position in file */
KAPP_EXTERN rc_t CC KLoaderFile_Offset(const KLoaderFile* cself, uint64_t* offset);

/* returns current line number in file */
KAPP_EXTERN rc_t CC KLoaderFile_Line(const KLoaderFile* cself, uint64_t* line);

/* file name */
KAPP_EXTERN rc_t CC KLoaderFile_Name(const KLoaderFile *self, const char **name);

/* real file name */
KAPP_EXTERN rc_t CC KLoaderFile_FullName(const KLoaderFile *self, const char **name);

/* file name completly resolved */
KAPP_EXTERN rc_t CC KLoaderFile_ResolveName(const KLoaderFile *self, char *resolved, size_t rsize);

/* Readline
 *  makes next line from a file available in buffer.
 *  eligable EOL symbols are: \n (unix), \r (older mac), \r\n (win)
 *  EOL symbol(s) never included in buffer length.
 *  if there is no EOL at EOF - not an error.
 *  fails if internal buffer is insufficient.
 *  buffer is NULL on EOF
 *  rc state of (rcString rcTooLong) means line was too long
 *              you may copy line and readline again for the tail of the line
 *
 *  "buffer" [ OUT ] and "length" [ OUT ] - returned line and it's length
 */
KAPP_EXTERN rc_t CC KLoaderFile_Readline(const KLoaderFile* self, const void** buffer, size_t* length);

/* Read
*  reads "size" bytes from file and makes them available through "buffer"
*  if "advance" is > 0 than before reading skips "advance" bytes in file
*  if "size" == 0 then nothing is read and available "length" bytes is returned in "buffer"
*
*  "buffer" [ OUT ] - pointer to read bytes, "buffer" NULL means EOF
*  "length" [ OUT ] - number of read bytes, normally == size,
                      if less than requested size, rc is [rcBuffer,rcInsufficient], advance and read more!
*/
KAPP_EXTERN rc_t CC KLoaderFile_Read(const KLoaderFile* self, size_t advance, size_t size, const void** buffer, size_t* length);

#ifdef __cplusplus
}
#endif

#endif /* _h_kapp_loader_file_ */