micro-utils/libmu/get_stat.c

35 lines
776 B
C
Raw Normal View History

2024-07-01 10:23:00 +00:00
#include <stdio.h>
#include <string.h>
2024-07-09 19:33:45 +00:00
#include <errno.h>
#include "get_stat.h"
2024-07-01 10:23:00 +00:00
2024-07-09 19:33:45 +00:00
int mu_get_stat(const char *prog_name, const char *path, struct stat *stat_path) {
2024-07-01 10:23:00 +00:00
if (stat(path, stat_path)) {
if (prog_name != NULL)
fprintf(stderr, "%s: %s: %s\n", prog_name, path, strerror(errno));
return 1;
}
return 0;
}
2024-07-09 19:33:45 +00:00
int mu_get_lstat(const char *prog_name, const char *path, struct stat *stat_path) {
2024-07-01 10:23:00 +00:00
if (lstat(path, stat_path)) {
if (prog_name != NULL)
fprintf(stderr, "%s: %s: %s\n", prog_name, path, strerror(errno));
return 1;
}
return 0;
}
2024-07-09 19:33:45 +00:00
int mu_get_stats(const char *prog_name, int flag, const char *path, struct stat *stat_path) {
2024-07-01 10:23:00 +00:00
if (flag)
return mu_get_lstat(prog_name, path, stat_path);
else
return mu_get_stat(prog_name, path, stat_path);
}