vfs_util.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2021 ML!PA Consulting GmbH
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser General
5  * Public License v2.1. See the file LICENSE in the top level directory for more
6  * details.
7  */
8 
9 #pragma once
10 
22 #include <stdbool.h>
23 #include <stddef.h>
24 
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28 
40 int vfs_file_from_buffer(const char *file, const void *buf, size_t len);
41 
54 int vfs_file_to_buffer(const char* file, void* buf, size_t len);
55 
56 #if MODULE_HASHES || DOXYGEN
70 int vfs_file_md5(const char* file, void *digest,
71  void *work_buf, size_t work_buf_len);
72 
86 int vfs_file_sha1(const char* file, void *digest,
87  void *work_buf, size_t work_buf_len);
88 
102 int vfs_file_sha256(const char* file, void *digest,
103  void *work_buf, size_t work_buf_len);
104 #endif
105 
118 int vfs_is_dir(const char *path);
119 
127 bool vfs_file_exists(const char *path);
128 
140 int vfs_unlink_recursive(const char *root, char *path_buf, size_t max_size);
141 
142 #ifdef __cplusplus
143 }
144 #endif
145 
int vfs_is_dir(const char *path)
Checks if path is a file or a directory.
int vfs_file_sha1(const char *file, void *digest, void *work_buf, size_t work_buf_len)
Compute the SHA1 message digest of a file.
int vfs_file_from_buffer(const char *file, const void *buf, size_t len)
Writes the content of a buffer to a file If the file already exists, it will be overwritten.
bool vfs_file_exists(const char *path)
Checks if path is a file and can be read.
int vfs_file_to_buffer(const char *file, void *buf, size_t len)
Reads the content of a file to a buffer.
int vfs_file_sha256(const char *file, void *digest, void *work_buf, size_t work_buf_len)
Compute the SHA256 message digest of a file.
int vfs_unlink_recursive(const char *root, char *path_buf, size_t max_size)
Behaves like rm -r @p root.
int vfs_file_md5(const char *file, void *digest, void *work_buf, size_t work_buf_len)
Compute the MD5 message digest of a file.