This file is indexed.

/usr/include/duo.h is in libduo-dev 1.7-3.

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
/*
 * duo.h
 *
 * Copyright (c) 2010 Duo Security
 * All rights reserved, all wrongs reversed.
 */

#ifndef DUO_H
#define DUO_H

typedef enum {
	DUO_OK = 0,			/* great success! */
	DUO_FAIL,			/* nice try */
	DUO_ABORT,			/* give up */
	DUO_LIB_ERROR,			/* unexpected library error */
	DUO_CONN_ERROR,			/* problem connecting */
	DUO_CLIENT_ERROR,		/* you screwed up */
	DUO_SERVER_ERROR,		/* we screwed up */
} duo_code_t;

#define DUO_FLAG_SYNC	(1 << 0)	/* no incremental status reporting */
#define DUO_FLAG_AUTO	(1 << 1)	/* use default factor without prompt */

typedef struct duo_ctx duo_t;

/* Parse INI config file */
int	    duo_parse_config(const char *filename, 
	    	int (*callback)(void *arg, const char *section,
		    const char *name, const char *val),
	    	void *arg);

/* Open Duo API handle */
duo_t	   *duo_open(const char *host, const char *ikey, const char *skey,
	    	const char *progname, const char *cafile);

/* Override conversation prompt/status functions */
void	    duo_set_conv_funcs(duo_t *d,
	    	char *(*conv_prompt)(void *conv_arg, const char *prompt,
		    char *buf, size_t bufsz),
	    	void (*conv_status)(void *conv_arg, const char *msg),
	    	void *conv_arg);

/* Perform Duo authentication */
duo_code_t  duo_login(duo_t *d, const char *username,
    		const char *client_ip, int flags, const char *command);

/* Return error message from last API call */
const char *duo_geterr(duo_t *d);

/* Close API handle. */
duo_t	   *duo_close(duo_t *d);


#endif /* DUO_H */