]> arthur.barton.de Git - netatalk.git/blobdiff - libatalk/cnid/cnid.c
Merge branch 'branch-netatalk-3-0' into develop
[netatalk.git] / libatalk / cnid / cnid.c
index ab18f50c6baf4204aee05596a61916bf7f2428ea..7cf3af1618d19a6de2e0cecada09936aeab90508 100644 (file)
@@ -217,7 +217,10 @@ void cnid_close(struct _cnid_db *db)
 cnid_t cnid_add(struct _cnid_db *cdb, const struct stat *st, const cnid_t did, 
                 const char *name, const size_t len, cnid_t hint)
 {
-cnid_t ret;
+    cnid_t ret;
+
+    if (len == 0)
+        return CNID_INVALID;
 
     block_signal(cdb->flags);
     ret = valide(cdb->cnid_add(cdb, st, did, name, len, hint));
@@ -335,3 +338,15 @@ cnid_t ret;
     unblock_signal(cdb->flags);
     return ret;
 }
+
+/* --------------- */
+int cnid_wipe(struct _cnid_db *cdb)
+{
+    int ret = 0;
+
+    block_signal(cdb->flags);
+    if (cdb->cnid_wipe)
+        ret = cdb->cnid_wipe(cdb);
+    unblock_signal(cdb->flags);
+    return ret;
+}