This file is indexed.

/usr/lib/x86_64-linux-gnu/ejabberd-18.01/include/ejabberd_acme.hrl is in ejabberd 18.01-2.

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
-record(challenge, {
	  type  = <<"http-01">> :: bitstring(),
	  status = pending :: pending | valid | invalid,
	  uri = "" :: url(),
	  token = <<"">> :: bitstring()
	 }).

-record(data_acc, {
	  id     :: list(),
	  ca_url :: url(),
	  key    :: jose_jwk:key()
	 }).
-type data_acc() :: #data_acc{}.

-record(data_cert, {
	  domain  :: bitstring(),
	  pem     :: pem(),
	  path    :: string()
	 }).
-type data_cert() :: #data_cert{}.

%%
%% Types
%%

%% Acme configuration
-type acme_config() :: [{ca_url, url()} | {contact, bitstring()}].

%% The main data type that ejabberd_acme keeps
-type acme_data() :: proplist().

%% The list of certificates kept in data
-type data_certs() :: proplist(bitstring(), data_cert()).

%% The certificate saved in pem format
-type pem() :: bitstring().

-type nonce() :: string().
-type url() :: string().
-type proplist() :: [{_, _}].
-type proplist(X,Y) :: [{X,Y}].
-type dirs() :: #{string() => url()}.
-type jws() :: map().
-type handle_resp_fun() :: fun(({ok, proplist(), proplist()}) -> {ok, _, nonce()}).

-type acme_challenge() :: #challenge{}.

%% Options
-type account_opt() :: string().
-type verbose_opt() :: string().
-type domains_opt() :: string().