This file is indexed.

/usr/include/CLAM/JACKNetworkPlayer.hxx is in libclam-dev 1.4.0-7.

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
#ifndef JACKNetworkPlayer_hxx
#define JACKNetworkPlayer_hxx

#include <iostream>
#include <string>
#include <vector>
#include "NetworkPlayer.hxx"
#include "Network.hxx"
#include <jack/jack.h>

namespace CLAM
{

class JACKNetworkPlayer : public NetworkPlayer
{
private:
	typedef std::vector<jack_port_t*> JackPorts;
	const char * PortName(jack_port_t * port)
	{
		return jack_port_name(port);
	}
	/** Memento to restore jack connection status */
	struct JackConnection
	{
		std::string processingName;
		const char ** outsideConnections;
	};
	typedef std::list<JackConnection> JackConnections;

private:
	int _jackSampleRate;
	int _jackBufferSize;
	bool _autoConnect;

	JackPorts _sourceJackPorts;
	JackPorts _sinkJackPorts;

	JackConnections _incomingJackConnections;
	JackConnections _outgoingJackConnections;

	std::string _jackOutPortAutoConnectList;
	std::string _jackInPortAutoConnectList;
	
	//JACK CODE
	jack_client_t * _jackClient;
	std::string _jackClientName;

public:
	JACKNetworkPlayer(const std::string & name="CLAM network player");
	virtual ~JACKNetworkPlayer();

	void InitClient();
	bool IsWorking();

	virtual bool IsRealTime() const { return true; }

	std::string NonWorkingReason();
	
	//JACK sever (un)registration methods
	void RegisterPorts();
	void RegisterInputPorts(const Network& net);
	void RegisterOutputPorts(const Network& net);
	void UnRegisterPorts();
	void OnShutdown();

	//Buffer copying methods
	void CopyJackBuffersToSources(const jack_nframes_t nframes);
	void CopySinksToJackBuffers(const jack_nframes_t nframes);
	void BlankJackBuffers(const jack_nframes_t nframes);
	
	virtual void Start();
	virtual void Stop();
	virtual void Init();
	
	virtual unsigned BackendBufferSize() 
	{
		return _jackBufferSize; 
	}

	virtual unsigned BackendSampleRate() { return _jackSampleRate; }
	
	void Do(const jack_nframes_t nframes);

	//Saves/loads the connections made to our local in/out jack ports
	void StoreConnections();
	void RestoreConnections();
	
	
	void AutoConnectPorts();
};
} //namespace CLAM

#endif