This file is indexed.

/usr/include/roaraudio/acl.h is in libroar-dev 1.0~beta11-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
//acl.h:

/*
 *      Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2008-2014
 *
 *  This file is part of RoarAudio,
 *  a cross-platform sound system for both, home and professional use.
 *  See README for details.
 *
 *  This file is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU Lesser General Public License version 3
 *  as published by the Free Software Foundation.
 *
 *  RoarAudio 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 this software; see the file COPYING.  If not, write to
 *  the Free Software Foundation, 51 Franklin Street, Fifth Floor,
 *  Boston, MA 02110-1301, USA.
 *
 *  NOTE: Even though this file is LGPLed it (may) include GPLed files
 *  so the license of this file is/may therefore downgraded to GPL.
 *  See HACKING for details.
 */

#ifndef _ROARAUDIO_ACL_H_
#define _ROARAUDIO_ACL_H_

// basic rule constants
#define ROAR_ACL_DENY      0
#define ROAR_ACL_REJECT    ROAR_ACL_DENY
#define ROAR_ACL_ALLOW     1
#define ROAR_ACL_ALLOW_OWN 2

struct roar_acl_target {
 int connect;
 int stream;
 int connect_to;
 int exit;
 int standby;
 int kick;
 int list;
 int meta;
 int volume;
 int get_client;
 int get_stream;
 int beep;
};

#define ROAR_ACL_CHK(r,w,o) (( ((r)->w) == ROAR_ACL_ALLOW || (((r)->w) == ROAR_ACL_ALLOW_OWN && (o)) ) ? 1 : 0)

#define ROAR_ACL_CMP_NOT     0x10
#define ROAR_ACL_CMP_EQ      0x01

#define ROAR_ACL_TYPE_ID     1
#define ROAR_ACL_TYPE_INT    1
#define ROAR_ACL_TYPE_VOID   1

struct roar_acl_cmp {
 int op;
 int type;
 union {
  id_t   id;
  int    i;
  void * p;
 } data;
 int datalen;
};

// A rule.
// All entrys may be NULL to indicate not to compare them.
// The only option is addr_use_inet_port which is used to disable checking of
// the remote IP.
struct roar_acl_rule {
 pid_t           * pid;
 uid_t           * uid;
 gid_t           * gid;
 char            * username;
 int             * cookie;
 struct sockaddr * addr;
 socklen_t         addrlen;
 int               addr_use_inet_port;
};

#endif

//ll