/* GNU Guix --- Functional package management for GNU Copyright (C) 2012, 2013 Ludovic Courtès This file is part of GNU Guix. GNU Guix is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. GNU Guix 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 General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Guix. If not, see . */ #include #include #include extern "C" { void guix_hash_init (struct guix_hash_context *ctx, int algo) { gcry_error_t err; err = gcry_md_open (&ctx->md_handle, algo, 0); assert (err == GPG_ERR_NO_ERROR); } void guix_hash_update (struct guix_hash_context *ctx, const void *buffer, size_t len) { gcry_md_write (ctx->md_handle, buffer, len); } void guix_hash_final (void *resbuf, struct guix_hash_context *ctx, int algo) { memcpy (resbuf, gcry_md_read (ctx->md_handle, algo), gcry_md_get_algo_dlen (algo)); gcry_md_close (ctx->md_handle); ctx->md_handle = NULL; } } f30f901cd83e8ab26f4d280109'>commitdiff
AgeCommit message (Expand)Author
2023-08-18tests: store-roots: Remove bogus test....This test was added in 1261ce15233cbf7e24de9959df86a23b46314a28 but it proved to be bogus: <https://issues.guix.gnu.org/64760>. * tests/store-roots.scm ("gc-roots, initial"): Remove. Ludovic Courtès
2023-06-18store: Tolerate non-existent GC root directories....* guix/store/roots.scm (gc-roots): Wrap 'scandir*' call in 'catch'. * tests/store-roots.scm ("gc-roots, initial"): New test. Move 'open-connection' call below. Ludovic Courtès
2019-04-10Add (guix store roots)....* guix/store/roots.scm, tests/store-roots.scm: New files. * Makefile.am (STORE_MODULES): Add guix/store/roots.scm. (SCM_TESTS): Add tests/store-roots.scm. Ludovic Courtès