Verify that name lengths are at most AFSNAMEMAX and symlink
[openafs.git] / src / afs / VNOPS / afs_vnop_remove.c
index f946b3d..2438301 100644 (file)
@@ -257,6 +257,13 @@ afs_remove(OSI_VC_ARG(adp), aname, acred)
 #endif
       return code;
     }
+    if (strlen(aname) > AFSNAMEMAX) {
+#ifdef  AFS_OSF_ENV
+       afs_PutVCache(adp, 0);
+       afs_PutVCache(tvc, 0);
+#endif
+       return ENAMETOOLONG;
+    }
 tagain:
     code = afs_VerifyVCache(adp, &treq);
 #ifdef AFS_OSF_ENV