Warning, file /include/elfutils/debuginfod.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029 #ifndef _DEBUGINFOD_CLIENT_H
0030 #define _DEBUGINFOD_CLIENT_H 1
0031
0032
0033 #define DEBUGINFOD_URLS_ENV_VAR "DEBUGINFOD_URLS"
0034 #define DEBUGINFOD_CACHE_PATH_ENV_VAR "DEBUGINFOD_CACHE_PATH"
0035 #define DEBUGINFOD_TIMEOUT_ENV_VAR "DEBUGINFOD_TIMEOUT"
0036 #define DEBUGINFOD_PROGRESS_ENV_VAR "DEBUGINFOD_PROGRESS"
0037 #define DEBUGINFOD_VERBOSE_ENV_VAR "DEBUGINFOD_VERBOSE"
0038 #define DEBUGINFOD_RETRY_LIMIT_ENV_VAR "DEBUGINFOD_RETRY_LIMIT"
0039 #define DEBUGINFOD_MAXSIZE_ENV_VAR "DEBUGINFOD_MAXSIZE"
0040 #define DEBUGINFOD_MAXTIME_ENV_VAR "DEBUGINFOD_MAXTIME"
0041 #define DEBUGINFOD_HEADERS_FILE_ENV_VAR "DEBUGINFOD_HEADERS_FILE"
0042 #define DEBUGINFOD_IMA_CERT_PATH_ENV_VAR "DEBUGINFOD_IMA_CERT_PATH"
0043
0044
0045 #define DEBUGINFOD_SONAME "libdebuginfod.so.1"
0046
0047
0048 #ifndef _ELFUTILS_DEBUGINFOD_CLIENT_TYPEDEF
0049 typedef struct debuginfod_client debuginfod_client;
0050 #define _ELFUTILS_DEBUGINFOD_CLIENT_TYPEDEF 1
0051 #endif
0052
0053 #ifdef __cplusplus
0054 extern "C" {
0055 #endif
0056
0057
0058 debuginfod_client *debuginfod_begin (void);
0059
0060
0061
0062
0063
0064
0065
0066
0067
0068
0069
0070 int debuginfod_find_debuginfo (debuginfod_client *client,
0071 const unsigned char *build_id,
0072 int build_id_len,
0073 char **path);
0074
0075 int debuginfod_find_executable (debuginfod_client *client,
0076 const unsigned char *build_id,
0077 int build_id_len,
0078 char **path);
0079
0080 int debuginfod_find_source (debuginfod_client *client,
0081 const unsigned char *build_id,
0082 int build_id_len,
0083 const char *filename,
0084 char **path);
0085
0086 int debuginfod_find_section (debuginfod_client *client,
0087 const unsigned char *build_id,
0088 int build_id_len,
0089 const char *section,
0090 char **path);
0091
0092
0093
0094
0095
0096
0097
0098
0099
0100
0101
0102
0103 int debuginfod_find_metadata (debuginfod_client *client,
0104 const char *key,
0105 const char* value,
0106 char **path);
0107
0108 typedef int (*debuginfod_progressfn_t)(debuginfod_client *c, long a, long b);
0109 void debuginfod_set_progressfn(debuginfod_client *c,
0110 debuginfod_progressfn_t fn);
0111
0112 void debuginfod_set_verbose_fd(debuginfod_client *c, int fd);
0113
0114
0115 void debuginfod_set_user_data (debuginfod_client *client, void *value);
0116
0117
0118 void* debuginfod_get_user_data (debuginfod_client *client);
0119
0120
0121 const char* debuginfod_get_url (debuginfod_client *client);
0122
0123
0124
0125 const char* debuginfod_get_headers(debuginfod_client *client);
0126
0127
0128 int debuginfod_add_http_header (debuginfod_client *client, const char* header);
0129
0130
0131 void debuginfod_end (debuginfod_client *client);
0132
0133 #ifdef __cplusplus
0134 }
0135 #endif
0136
0137
0138 #endif