]> arthur.barton.de Git - netatalk.git/blobdiff - libatalk/vfs/vfs.c
Seperate Netatalk special dirs from adouble:v2 dirs, compare case sensitive and check...
[netatalk.git] / libatalk / vfs / vfs.c
index 49590af6d9fe8ba2617d0ad6be390226ed67fd3f..738e3b837851abc278296f05ebe6d038559dcbc6 100644 (file)
@@ -89,17 +89,15 @@ for_each_adouble(const char *from, const char *name, rf_loop fn, void *data, int
     return ret;
 }
 
-/*******************************************************************************
- * classic adouble format 
- *******************************************************************************/
-
 static int netatalk_name(const char *name)
 {
-    return strcasecmp(name,".AppleDouble") &&
-        strcasecmp(name,".AppleDB") &&
-        strcasecmp(name,".AppleDesktop");
+    return strcmp(name,".AppleDB") && strcmp(name,".AppleDesktop");        
 }
 
+/*******************************************************************************
+ * classic adouble format 
+ *******************************************************************************/
+
 static int validupath_adouble(VFS_FUNC_ARGS_VALIDUPATH)
 {
     if (name[0] != '.')
@@ -108,7 +106,7 @@ static int validupath_adouble(VFS_FUNC_ARGS_VALIDUPATH)
     if (!(vol->v_flags & AFPVOL_USEDOTS))
         return 0;
         
-    return netatalk_name(name) && strcasecmp(name,".Parent");
+    return netatalk_name(name) && strcmp(name,".AppleDouble") && strcasecmp(name,".Parent");
 }                                           
 
 /* ----------------- */
@@ -476,7 +474,7 @@ static int validupath_ea(VFS_FUNC_ARGS_VALIDUPATH)
     if (name[1] == '_')
         return ad_valid_header_osx(name);
 #endif
-    return 1;
+    return netatalk_name(name);
 }
 
 /* ----------------- */