This file is indexed.

/usr/include/boinc/cert_sig.h is in libboinc-app-dev 7.2.42+dfsg-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
// This file is part of BOINC.
// http://boinc.berkeley.edu
// Copyright (C) 2008 University of California
//
// BOINC is free software; you can redistribute it and/or modify it
// under the terms of the GNU Lesser General Public License
// as published by the Free Software Foundation,
// either version 3 of the License, or (at your option) any later version.
//
// BOINC 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 Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with BOINC.  If not, see <http://www.gnu.org/licenses/>.

#ifndef __CERT_SIG_H_
#define __CERT_SIG_H_

#include <vector>
#include "parse.h"

#define MAX_CERT_SIG_LEN 4096
#define MAX_SUBJECT_LEN 256
#define MD5_HASH     0
#define SHA1_HASH    1

struct CERT_SIG {
    char signature[MAX_CERT_SIG_LEN];  // RSA signature expected.
    int type;                           // MD5_HASH or SHA1_HASH. Not used yet.
    char subject[MAX_SUBJECT_LEN];
    char hash[9];                       // 8 + '\0'...
    CERT_SIG();
    ~CERT_SIG();
    void clear();
};

struct CERT_SIGS {
    std::vector<CERT_SIG> signatures;
    CERT_SIGS();
    ~CERT_SIGS();
    //
    // Parses an .xml signature file with the following structure:
    //
    //<signatures>
    //	<entry>
    //		<signature>
    //%signature%
    //		</signature>
    //	    <subject>%certificate_subject%</subject>
    //      <type>%md5_or_sha1(_with_rsa)%</type>
    //      <hash>%certificate_hash%</hash>
    //	</entry>
    //	<entry>
    //	    ...
    //	</entry>
    //	...
    //</signatures>
    int parse_file(const char* filename);
    int parse_buffer(char* buf);
    int write(MIOFILE &f);
    int parse_buffer_embed(char* buf);
    void clear();
    int count();        // return the total number of signatures.
    int parse(XML_PARSER &xp);
};

#endif  //__CERT_SIG_H_