Blame debuginfod/ChangeLog

Packit Service 97d2fb
2020-10-31  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (scan_source_file, scan_archive_file): Add new scanned_bytes_total,
Packit Service 97d2fb
	scanned_files_total metrics.
Packit Service 97d2fb
	(archive_classify): Exit early if interrupted.
Packit Service 97d2fb
	(scan_source_paths): Perform realpath/regex checks only on FTS_F files.
Packit Service 97d2fb
	Tweak metrics.
Packit Service 97d2fb
Packit Service 97d2fb
2020-10-30  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	PR26775 cont'd.
Packit Service 97d2fb
	* debuginfod.cxx (thread_main_scanner): Ensure control doesn't
Packit Service 97d2fb
	leave infinite loop until program exit, even if SIGUSR2.
Packit Service 97d2fb
	(scan_source_paths): Have traverser clean scanq on
Packit Service 97d2fb
	SIGUSR2.  Emit additional traversed_total metrics.
Packit Service 97d2fb
	(groom): Emit additional groomed_total metrics.
Packit Service 97d2fb
	(thread_main_groom): Restore previous thread_work_total
Packit Service 97d2fb
	metric.
Packit Service 97d2fb
Packit Service 97d2fb
2020-10-29  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	PR26775
Packit Service 97d2fb
	* debuginfod.cxx (forced_*_count): Make these global.
Packit Service 97d2fb
	(runq::clear): New function.
Packit Service 97d2fb
	(thread_main_scanner): Check for pending SIGUSR2; interrupt.
Packit Service 97d2fb
	(scan_source_paths): Check for pending SIGUSR2; interrupt.
Packit Service 97d2fb
	(groom): Report prometheus stats before groom also.  Check for
Packit Service 97d2fb
	pending SIGUSR1; interrupt.  Increment thread_work_total for
Packit Service 97d2fb
	each file scanned, not the entire cycle.
Packit Service 97d2fb
Packit Service 97d2fb
2020-10-29  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	PR26810
Packit Service 97d2fb
	* debuginfod.cxx (handle_buildid_*_match): Throw exceptions for
Packit Service 97d2fb
	more lower level libc errors.
Packit Service 97d2fb
	(handle_buildid_match): Catch & report exceptions but return 0
Packit Service 97d2fb
	for continued iteration in the caller.
Packit Service 97d2fb
Packit Service 97d2fb
2020-10-25  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (debuginfod_query_server): Translate
Packit Service 97d2fb
	CURLE_PEER_FAILED_VERIFICATION to ECONNREFUSED.
Packit Service 97d2fb
Packit Service 97d2fb
2020-10-20  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	PR26756: more prometheus metrics
Packit Service 97d2fb
	* debuginfod.cxx (*_exception): Add counters for error occurrences.
Packit Service 97d2fb
	(fdcache::*): Add counters for fdcache operations and status.
Packit Service 97d2fb
	(fdcache::set_metric): New fn for overall stat counts.
Packit Service 97d2fb
	(fdcache::limit): ... allow metric-less use from dtors.
Packit Service 97d2fb
Packit Service 97d2fb
2020-10-20  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (handle_buildid*): Add a parameter for detecting
Packit Service 97d2fb
	internally-originated lookups for dwz resolution.
Packit Service 97d2fb
Packit Service 97d2fb
2020-09-18  Frank Ch. Eigler <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (scan_source_file, archive_classify): Store only
Packit Service 97d2fb
	canonicalized file names in sdef & sref records in the database.
Packit Service 97d2fb
Packit Service 97d2fb
2020-09-08  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* Makefile.am (BUILD_STATIC): Include libcurl_LIBS in libdebuginfod
Packit Service 97d2fb
	when NOT DUMMY_LIBDEBUGINFOD.
Packit Service 97d2fb
Packit Service 97d2fb
2020-09-16  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-find.c: Fix license block comment.
Packit Service 97d2fb
Packit Service 97d2fb
2020-09-15  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-find.c (main): Use dwelf_elf_begin.
Packit Service 97d2fb
Packit Service 97d2fb
2020-07-03  Alice Zhang <alizhang@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (debuginfod_query_server): Use strncasecmp
Packit Service 97d2fb
	to compare effective_url. Try CURLINFO_SCHEME as fallback.
Packit Service 97d2fb
Packit Service 97d2fb
2020-06-19  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* Makefile.am (bin_PROGRAMS): Guard with DEBUGINFOD and
Packit Service 97d2fb
	LIBDEBUGINFOD.
Packit Service 97d2fb
	(debuginfod_LDADD): Remove libcurl.
Packit Service 97d2fb
	(libdebuginfod): When static and DUMMY_LIBDEBUGINFO remove libcurl.
Packit Service 97d2fb
	(noinst_LIBRARIES): Guard with LIBDEBUGINFOD.
Packit Service 97d2fb
	(AM_CPPFLAGS): Add -Wno-unused-parameter when DUMMY_LIBDEBUGINFOD.
Packit Service 97d2fb
	(pkginclude_headers): Guard with LIBDEBUGINFOD
Packit Service 97d2fb
	(libdebuginfod_so_LIBS): Likewise.
Packit Service 97d2fb
	(+libdebuginfod_so_LDLIBS): Likewise.
Packit Service 97d2fb
	(install): Likewise.
Packit Service 97d2fb
	(uninstall): Likewise.
Packit Service 97d2fb
	* debuginfod-client.c: Include dummy functions when
Packit Service 97d2fb
	DUMMY_LIBDEBUGINFOD.
Packit Service 97d2fb
	* debuginfod.cxx: Remove curl.h include.
Packit Service 97d2fb
Packit Service 97d2fb
2020-06-16  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (debuginfod_query_server): Check malloc.
Packit Service 97d2fb
	Move curl_multi_init call before handle_data malloc call.
Packit Service 97d2fb
Packit Service 97d2fb
2020-06-16  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (debuginfod_query_server): Replace sizeof
Packit Service 97d2fb
	build_id_bytes check with strlen build_id check.
Packit Service 97d2fb
Packit Service 97d2fb
2020-06-16  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (debuginfod_query_server): Increase suffix
Packit Service 97d2fb
	array and prepare having to escape 1 character with 2.
Packit Service 97d2fb
Packit Service 97d2fb
2020-06-16  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (debuginfod_clean_cache): Handle failing
Packit Service 97d2fb
	fopen (interval_path).
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-29  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (debuginfod_add_http_header): Check header
Packit Service 97d2fb
	contains precisely one colon that isn't the first or last char.
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-29  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (struct debuginfod_client): Add a flag field
Packit Service 97d2fb
	for progressfn printing.
Packit Service 97d2fb
	(default_progressfn): Set it if printing \rsomething.
Packit Service 97d2fb
	(debuginfod_end): Terminate with \n if flag set, i.e., only if the
Packit Service 97d2fb
	default_progressfn was actually called.
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-27  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (parse_opt): Check port is not zero.
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-28  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (handle_buildid_r_match): During archive
Packit Service 97d2fb
	extraction / fdcache prefetching, set the mtime of each
Packit Service 97d2fb
	file in the cache.
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-27  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-find.c (main): Extract buildid from /binary/ if
Packit Service 97d2fb
	given instead of hex string.
Packit Service 97d2fb
	* Makefile.am: Add elfutils library prereqs for debuginfod-find.
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-24  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.h, libdebuginfod.map: New functions for _add_url_header.
Packit Service 97d2fb
	* debuginfod-client.c (struct debuginfod_client): Add headers fields.
Packit Service 97d2fb
	(debuginfod_add_http_header): New client api to add outgoing headers.
Packit Service 97d2fb
	(add_default_headers): Renamed from add_extra_headers, skip if flag.
Packit Service 97d2fb
	(debuginfod_query_server): Pass accumulated headers to libcurl.
Packit Service 97d2fb
	(debuginfod_end): Clean accumulated headers.
Packit Service 97d2fb
	(debuginfod_find_*): Add default headers at this point.
Packit Service 97d2fb
	* debuginfod.cxx (handle_buildid): Add conn pointer.  Use it to relay
Packit Service 97d2fb
	incoming UA and XFF headers to federated upstream debuginfods.
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-26  Frank Ch. Eigler <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (handler_cb): Export two families of metrics for
Packit Service 97d2fb
	prometheus traffic analysis: response times and data amounts.
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-26  Frank Ch. Eigler <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (parse_opt): For -U, prefer dpkg-deb
Packit Service 97d2fb
	after all if access(3)-able, fallback to bsdtar.
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-25  Frank Ch. Eigler <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (parse_opt): Associate a bsdtar subshell with
Packit Service 97d2fb
	the .deb & .ddeb extensions, instead of dpkg-deb.
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-26  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (debuginfod_query_server): Don't
Packit Service 97d2fb
	set CURLOPT_PATH_AS_IS on old curl.  Mostly harmless.
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-24  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (debuginfod_query_server): Set
Packit Service 97d2fb
	CURLOPT_PATH_AS_IS, to propagate file names verbatim.
Packit Service 97d2fb
	* debuginfod.cxx (canon_pathname): Implement RFC3986
Packit Service 97d2fb
	style pathname canonicalization.
Packit Service 97d2fb
	(handle_buildid): Canonicalize incoming webapi source
Packit Service 97d2fb
	paths, accept either one.
Packit Service 97d2fb
	(scan_source_file, archive_classify): Store both
Packit Service 97d2fb
	original and canonicalized dwarf-source file names.
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-24  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (handle_buildid): In case of federated fallback
Packit Service 97d2fb
	queries, handle errors analogously to local ENOENT/404.
Packit Service 97d2fb
	(handle_metrics): Return a size-of-response value.
Packit Service 97d2fb
	(handler_cb): Add code to time entire application-side processing
Packit Service 97d2fb
	stage + response sizes + http codes, so as to emit a complete
Packit Service 97d2fb
	httpd-flavoured log line for each webapi request.
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-24  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (debuginfod_query_server): Print the
Packit Service 97d2fb
	default_progressfn terminating \n message only if that progressfn
Packit Service 97d2fb
	is actually set.
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-24  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-find.c (main): Correct /source full-pathness check for
Packit Service 97d2fb
	"debuginfod-find -v source deadbeef /pathname" case.
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-22  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (struct debuginfod_client): Add url field.
Packit Service 97d2fb
	(struct handle_data): Add client field as backpointer.
Packit Service 97d2fb
	(debuginfod_write_callback): Compute & save URL.
Packit Service 97d2fb
	(default_progressfn): Print front pieces of the URL.
Packit Service 97d2fb
	(debuginfod_query_server): Clear URL and cleanup after progressfn.
Packit Service 97d2fb
	* debuginfod-find.c (main): Print URL at transfer conclusion.
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-22  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.h, libdebuginfod.map: New functions for _get/set_user().
Packit Service 97d2fb
	* debuginfod-client.c: Implement them.
Packit Service 97d2fb
	* debuginfod-find.c: Include a token call just for testing them.
Packit Service 97d2fb
Packit Service 97d2fb
2020-03-03  Aaron Merey  <amerey@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (debuginfod_query_server): Update
Packit Service 97d2fb
	cache_path even when new default path already exists.
Packit Service 97d2fb
Packit Service 97d2fb
2020-02-27  Aaron Merey  <amerey@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (xalloc_str): New macro. Call
Packit Service 97d2fb
	asprintf with error checking.
Packit Service 97d2fb
	(debuginfod_query_server): Use XDG_CACHE_HOME as a default
Packit Service 97d2fb
	cache location if it is set. Replace snprintf with xalloc_str.
Packit Service 97d2fb
Packit Service 97d2fb
2020-02-26  Konrad Kleine <kkleine@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (debuginfod_query_server): Handle curl's
Packit Service 97d2fb
	response code correctly when DEBUGINFOD_URLS begin with file://
Packit Service 97d2fb
Packit Service 97d2fb
2020-02-25  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (parse_opt): Treat -R as if -Z.rpm .
Packit Service 97d2fb
Packit Service 97d2fb
2020-02-25  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (fdcache_prefetch): New parameter.
Packit Service 97d2fb
	(parse_opt): Parse it.
Packit Service 97d2fb
	(main): Default it.
Packit Service 97d2fb
	(fdcache::fd_size_mb): Change to double for accuracy.
Packit Service 97d2fb
	(fdcache::probe): New function.
Packit Service 97d2fb
	(fdcache::intern): New option to intern at end of LRU.
Packit Service 97d2fb
	(fdcache::lookup): Clean fdcache.
Packit Service 97d2fb
	(handle_buildid_r_match): Implement multi-stage archive
Packit Service 97d2fb
	parsing, with optional prefetching of extracted contents
Packit Service 97d2fb
	into the fdcache.
Packit Service 97d2fb
Packit Service 97d2fb
2020-02-19  Aaron Merey  <amerey@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (debuginfod_clean_cache): Restrict
Packit Service 97d2fb
	cleanup to client-pattern files.
Packit Service 97d2fb
Packit Service 97d2fb
2020-02-05  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (argp options): Add -Z option.
Packit Service 97d2fb
	(canonicalized_archive_entry_pathname): New function for
Packit Service 97d2fb
	distro-agnostic file name matching/storage.
Packit Service 97d2fb
Packit Service 97d2fb
2020-01-22  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (dwarf_extract_source_paths): Don't print
Packit Service 97d2fb
	"skipping hat" messages at verbosity <=3, too noisy.
Packit Service 97d2fb
Packit Service 97d2fb
2020-01-19  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (scanq): Rework to let groomer/fts threads
Packit Service 97d2fb
	synchronize with an empty workqueue, and lock out workqueue
Packit Service 97d2fb
	consumers.
Packit Service 97d2fb
	(thread_groom): Adopt new scanq idle APIs to lock out scanners.
Packit Service 97d2fb
	(thread_main_fts_source_paths): Adopt new scanq idler API to
Packit Service 97d2fb
	avoid being restarted while scanners haven't even finished yet.
Packit Service 97d2fb
	(thread_main_*): Increment thread_work_total metric only after
Packit Service 97d2fb
	a work cycle is completed, not when it begins.
Packit Service 97d2fb
Packit Service 97d2fb
2020-01-18  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (thread_main_scanner): Handle empty source_paths[].
Packit Service 97d2fb
Packit Service 97d2fb
2020-01-11  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (libarchive_fdcache): New class/facility to own a
Packit Service 97d2fb
	cache of temporary files that were previously extracted from an
Packit Service 97d2fb
	archive.  If only it could store just unlinked fd's instead of
Packit Service 97d2fb
	filenames.
Packit Service 97d2fb
	(handle_buildid_r_match): Use it to answer dwz/altdebug and webapi
Packit Service 97d2fb
	requests.
Packit Service 97d2fb
	(groom): Clean it.
Packit Service 97d2fb
	(main): Initialize the cache control parameters from heuristics.
Packit Service 97d2fb
	Use a consistent tmpdir for these and tmp files elsewhere.
Packit Service 97d2fb
Packit Service 97d2fb
2020-01-11  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (conninfo): Print User-Agent and X-Forwarded-For
Packit Service 97d2fb
	request headers, after mild safety-censorship (for easier machine
Packit Service 97d2fb
	processing).
Packit Service 97d2fb
Packit Service 97d2fb
2020-01-11  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx: Rework threading model.
Packit Service 97d2fb
	(workq): New class for concurrent work-queue.
Packit Service 97d2fb
	(semaphore): Removed class, now unused.
Packit Service 97d2fb
	(scan_source_file_path): Rework into ...
Packit Service 97d2fb
	(scan_source_file): New function.
Packit Service 97d2fb
	(thread_main_scan_source_file_path): Nuke.
Packit Service 97d2fb
	(scan_source_archive_path): Rework into ...
Packit Service 97d2fb
	(scan_archive_file): New function.
Packit Service 97d2fb
	(thread_main_scanner): New function for scanner threads.
Packit Service 97d2fb
	(thread_main_fts_source_paths): New function for traversal thread.
Packit Service 97d2fb
	(scan_source_paths): ... doing this.
Packit Service 97d2fb
	(thread_groom): Tweak metrics for consistency.
Packit Service 97d2fb
	(main): Start 1 traversal and N scanner threads if needed.
Packit Service 97d2fb
Packit Service 97d2fb
2019-01-02  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (default_connect_timeout): Removed.
Packit Service 97d2fb
	(default_transfer_timeout): Removed.
Packit Service 97d2fb
	(default_timeout): New. Default to 90 seconds.
Packit Service 97d2fb
	(debuginfod_query_server): Parse server_timeout_envvar as one number.
Packit Service 97d2fb
	Set as CURLOPT_LOW_SPEED_TIME, with CURL_OPT_LOW_SPEED_LIMITE as 100K.
Packit Service 97d2fb
Packit Service 97d2fb
2020-01-09  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (add_extra_headers): New function,
Packit Service 97d2fb
	based on mjw's draft.
Packit Service 97d2fb
	(debuginfod_query_server): Call it.
Packit Service 97d2fb
Packit Service 97d2fb
2019-12-22  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (*_rpm_*): Rename to *_archive_* throughout.
Packit Service 97d2fb
	(scan_archives): New read-mostly global to identify archive
Packit Service 97d2fb
	file extensions and corresponding extractor commands.
Packit Service 97d2fb
	(parse_opt): Handle new -U flag.
Packit Service 97d2fb
Packit Service 97d2fb
2019-12-19  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (default_progressfn): New function.
Packit Service 97d2fb
	(debuginfod_begin): Use it if $DEBUGINFOD_PROGRESS set.
Packit Service 97d2fb
	(server_timeout): Bump to 30 seconds.
Packit Service 97d2fb
	(debuginfod_query_server): Call progressfn -after- rather than
Packit Service 97d2fb
	before curl ops, to make it likely that a successful transfer
Packit Service 97d2fb
	results in final a=b call.  Tweak cleanup sequence.
Packit Service 97d2fb
	* debuginfod.h: Document $DEBUGINFOD_PROGRESS name.
Packit Service 97d2fb
Packit Service 97d2fb
2019-12-09  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (debuginfod_query_server): Check
Packit Service 97d2fb
	server_urls_envvar early.
Packit Service 97d2fb
Packit Service 97d2fb
2019-12-03  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c (debuginfod_query_server): Use separate
Packit Service 97d2fb
	local variables for CURLcode curl_res and CURLMcode curlm_res.
Packit Service 97d2fb
Packit Service 97d2fb
2019-11-26  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* Makefile.am (BUILD_STATIC): Add needed libraries for libdw and
Packit Service 97d2fb
	libdebuginfod.
Packit Service 97d2fb
Packit Service 97d2fb
2019-11-25  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (groom): Add a sqlite3_db_release_memory()
Packit Service 97d2fb
	at the end of periodic grooming to try to shrink the process.
Packit Service 97d2fb
Packit Service 97d2fb
2019-11-24  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (test_webapi_sleep): Removed.
Packit Service 97d2fb
	(handler_cb): Don't check test_webapi_sleep and sleep.
Packit Service 97d2fb
	(main): Don't set test_webapi_sleep.
Packit Service 97d2fb
Packit Service 97d2fb
2019-11-24  Mark Wielaard  <mark@klomp.org>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx (add_metric): New function.
Packit Service 97d2fb
	(scan_source_file_path): Record metrics for
Packit Service 97d2fb
	found_executable_total, found_debuginfo_total and
Packit Service 97d2fb
	found_sourcerefs_total.
Packit Service 97d2fb
	(scan_source_rpm_path): Likewise.
Packit Service 97d2fb
Packit Service 97d2fb
2019-11-07  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx: Add /metrics endpoint.  Add numerous
Packit Service 97d2fb
	calls to new functions inc_metric/set_metric to populate
Packit Service 97d2fb
	threadsafe map containing stats.  Add http content-type
Packit Service 97d2fb
	response headers throughout.
Packit Service 97d2fb
	(thread_main_*): Simplify counter/timer flow.
Packit Service 97d2fb
	(main): Reorder web service shutdown to leave http running
Packit Service 97d2fb
	as long as possible.
Packit Service 97d2fb
	* debuginfod.8: Document it, add security caution.
Packit Service 97d2fb
Packit Service 97d2fb
2019-11-06  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx: Add new -L (symlink-following) mode.
Packit Service 97d2fb
	* debuginfod.8: Document it.
Packit Service 97d2fb
Packit Service 97d2fb
2019-11-04  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfo-client.c (debuginfod_set_progressfn): New function
Packit Service 97d2fb
	for progress/interrupt callback.
Packit Service 97d2fb
	(debuginfod_clean_cache, debuginfod_query_server): Call it.
Packit Service 97d2fb
	* debuginfo.h: Declare it.
Packit Service 97d2fb
	* debuginfod_set_progressfn.3, *_find_debuginfo.3: Document it.
Packit Service 97d2fb
	* Makefile.am: Install it.
Packit Service 97d2fb
	* libdebuginfod.map: Export it all under ELFUTILS_0.178 symversion.
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-find.c: Add -v option to activate progress cb.
Packit Service 97d2fb
	* debuginfod-find.1: Document it.
Packit Service 97d2fb
	* debuginfod.cxx: Add $DEBUGINFOD_TEST_WEBAPI_SLEEP env var
Packit Service 97d2fb
	to insert sleep in webapi callbacks, to help manual testing.
Packit Service 97d2fb
Packit Service 97d2fb
2019-10-28  Frank Ch. Eigler  <fche@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod.cxx: New file: debuginfod server.
Packit Service 97d2fb
	* debuginfod.8: New file: man page.
Packit Service 97d2fb
	* Makefile.am: Build it.
Packit Service 97d2fb
Packit Service 97d2fb
2019-10-28  Aaron Merey  <amerey@redhat.com>
Packit Service 97d2fb
Packit Service 97d2fb
	* debuginfod-client.c: New file: debuginfod client library.
Packit Service 97d2fb
	* debuginfod.h: New file: header for same.
Packit Service 97d2fb
	* libdebuginfod.map: New file: govern its solib exports.
Packit Service 97d2fb
	* debuginfod-find.c: New file: command line frontend.
Packit Service 97d2fb
	* debuginfod-find.1, debuginfod_find_source.3,
Packit Service 97d2fb
	debuginfod_find_executable.3, debuginfod_find_debuginfo.3:
Packit Service 97d2fb
	New man pages.