This file is indexed.

/usr/include/libdvbv5/dvb-sat.h is in libdvbv5-dev 1.10.0-1.

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
/*
 * Copyright (c) 2011-2014 - Mauro Carvalho Chehab
 *
 * 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 version 2
 * of the License.
 *
 * 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 * Or, point your browser to http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
 */
#ifndef _LIBSAT_H
#define _LIBSAT_H

#include "dvb-v5-std.h"

/**
 * @file dvb-sat.h
 * @ingroup satellite
 * @brief Provides interfaces to deal with DVB Satellite systems.
 * @copyright GNU General Public License version 2 (GPLv2)
 * @author Mauro Carvalho Chehab
 *
 * @par Bug Report
 * Please submit bug reports and patches to linux-media@vger.kernel.org
 */

/*
 * Satellite handling functions
 */

/**
 * @struct dvbsat_freqrange
 * @brief Defines a frequency range used by Satellite
 * @ingroup satellite
 *
 * @param low	low frequency, in kHz
 * @param high	high frequency, in kHz
 */
struct dvbsat_freqrange {
	unsigned low, high;
};

/**
 * @struct dvb_sat_lnb
 * @brief Stores the information of a LNBf
 * @ingroup satellite
 *
 * @param name		long name of the LNBf type
 * @param alias		short name for the LNBf type
 * @param lowfreq	Low frequency Intermediate Frequency of the LNBf, in kHz
 * @param highfreq	High frequency Intermediate frequency of the LNBf,
 *			in kHz
 * @param rangeswitch	For LNBf that has multiple frequency ranges controlled
 *			by a voltage change, specify the start frequency where
 *			the second range will be applied.
 * @param freqrange	Contains the range(s) of frequencies supported by a
 *			given LNBf.
 *
 * The LNBf (low-noise block downconverter) is a type of amplifier that is
 * installed inside the parabolic dishes. It converts the antenna signal to
 * an Intermediate Frequency. Several Ku-band LNBf have more than one IF.
 * The lower IF is stored at lowfreq, the higher IF at highfreq.
 * The exact setup for those structs actually depend on the model of the LNBf,
 * and its usage.
 */
struct dvb_sat_lnb {
	const char *name;
	const char *alias;
	unsigned lowfreq, highfreq;

	unsigned rangeswitch;

	struct dvbsat_freqrange freqrange[2];
};

struct dvb_v5_fe_parms;

#ifdef __cplusplus
extern "C" {
#endif

/* From libsat.c */

/**
 * @brief search for a LNBf entry
 * @ingroup satellite
 *
 * @param name	name of the LNBf entry to seek.
 *
 * On sucess, it returns a non-negative number with corresponds to the LNBf
 * entry inside the LNBf structure at dvb-sat.c.
 *
 * @return A -1 return code indicates that the LNBf was not found.
 */
int dvb_sat_search_lnb(const char *name);

/**
 * @brief prints the contents of a LNBf entry at STDOUT.
 * @ingroup satellite
 *
 * @param index		index for the entry
 *
 * @return returns -1 if the index is out of range, zero otherwise.
 */
int dvb_print_lnb(int index);

/**
 * @brief Prints all LNBf entries at STDOUT.
 * @ingroup satellite
 *
 * This function doesn't return anything. Internally, it calls dvb_print_lnb()
 * for all entries inside its LNBf database.
 */
void dvb_print_all_lnb(void);

/**
 * @brief gets a LNBf entry at its internal database
 * @ingroup satellite
 *
 * @param index		index for the entry.
 *
 * @return returns NULL if not found, of a struct dvb_sat_lnb pointer otherwise.
 */
const struct dvb_sat_lnb *dvb_sat_get_lnb(int index);

/**
 * @brief sets the satellite parameters
 * @ingroup satellite
 *
 * @param parms	struct dvb_v5_fe_parms pointer.
 *
 * This function is called internally by the library to set the LNBf
 * parameters, if the dvb_v5_fe_parms::lnb field is filled.
 *
 * @return 0 on success.
 */
int dvb_sat_set_parms(struct dvb_v5_fe_parms *parms);

#ifdef __cplusplus
}
#endif

#endif // _LIBSAT_H