This file is indexed.

/usr/include/arc/security/ArcPDP/Source.h is in nordugrid-arc-dev 5.0.5-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
#ifndef __ARC_SEC_SOURCE_H__
#define __ARC_SEC_SOURCE_H__

#include <fstream>
#include <arc/XMLNode.h>
#include <arc/URL.h>

namespace ArcSec {

/// Acquires and parses XML document from specified source.
/** This class is to be used to provide easy way to specify 
  different sources for XML Authorization Policies and Requests. */
class Source {
 private:
  Arc::XMLNode node;
  Source(void) { };
 public:
  /// Copy constructor.
  /** Use this constructor only for temporary objects.
    Parsed XML document is still owned by copied source and hence 
    lifetime of created object should not exceed that of copied one. */
  Source(const Source& s):node(s.node) { };
  /// Use XML subtree refered by xml.
  /** There is no copy of xml made. Hence lifetime of this object
    should not exceed that of xml. */
  Source(Arc::XMLNode xml);
  /// Read XML document from stream and parse it.
  Source(std::istream& stream);
  /// Fetch XML document from specified url and parse it.
  /** This constructor is not implemented yet. */
  Source(Arc::URL& url);
  /// Read XML document from string.
  Source(const std::string& str);
  /// Get reference to parsed document
  Arc::XMLNode Get(void) const { return node; };
  /// Returns true if valid document is available
  operator bool(void) { return (bool)node; };
  operator Arc::XMLNode(void) { return node; };
};

/// Convenience class for obtaining XML document from file
class SourceFile: public Source {
 private:
  std::ifstream* stream;
  SourceFile(void):Source(std::string("")),stream(NULL) {};
 public:
  /// See corresponding constructor of Source class
  SourceFile(const SourceFile& s):Source(s),stream(NULL) {};
  /// Read XML document from file named name and store it 
  SourceFile(const char* name);
  /// Read XML document from file named name and store it 
  SourceFile(const std::string& name);
  ~SourceFile(void);
};

/// Convenience class for obtaining XML document from remote URL 
class SourceURL: public Source {
 private:
  Arc::URL* url;
  SourceURL(void):Source(std::string("")),url(NULL) {};
 public:
  /// See corresponding constructor of Source class
  SourceURL(const SourceURL& s):Source(s),url(NULL) {};
  /// Read XML document from URL url and store it 
  SourceURL(const char* url);
  /// Read XML document from URL url and store it 
  SourceURL(const std::string& url);
  ~SourceURL(void);
};

}

#endif