diff options
author | default <nobody@localhost> | 2022-11-25 13:33:13 +0100 |
---|---|---|
committer | default <nobody@localhost> | 2022-11-25 13:33:13 +0100 |
commit | 2d7c327cbf08a7ebc12df2818289af5d923c48de (patch) | |
tree | 600f9ea61567e392fa8fde749a98c58b94af963e | |
parent | afeec970a38ad91fc00ab50efaf42723c38cefbf (diff) |
New function mtime_nl().
-rw-r--r-- | data.c | 14 | ||||
-rw-r--r-- | snac.h | 3 |
2 files changed, 12 insertions, 5 deletions
@@ -185,14 +185,20 @@ d_char *user_list(void) } -double mtime(const char *fn) -/* returns the mtime of a file or directory, or 0.0 */ +double mtime_nl(const char *fn, int *n_link) +/* returns the mtime and number of links of a file or directory, or 0.0 */ { struct stat st; double r = 0.0; + int n = 0; + + if (fn && stat(fn, &st) != -1) { + r = (double) st.st_mtim.tv_sec; + n = st.st_nlink; + } - if (fn && stat(fn, &st) != -1) - r = (double)st.st_mtim.tv_sec; + if (*n_link) + *n_link = n; return r; } @@ -50,7 +50,8 @@ int check_password(char *uid, char *passwd, char *hash); void srv_archive(char *direction, char *req, char *payload, int p_size, int status, char *headers, char *body, int b_size); -double mtime(const char *fn); +double mtime_nl(const char *fn, int *n_link); +#define mtime(fn) mtime_nl(fn, NULL) int index_add(const char *fn, const char *md5); int index_del(const char *fn, const char *md5); |