#ifndef lint
static const char rcsid[] =
- "$Id: dirs.c,v 1.25 2004/03/29 13:57:29 stelian Exp $";
+ "$Id: dirs.c,v 1.27 2004/04/21 09:15:22 stelian Exp $";
#endif /* not lint */
#include <config.h>
struct direct *dp;
long loc, i;
- if (cvtflag) {
+ if (cvtflag && !ufs2flag) {
eodp = (struct odirect *)&buf[size];
for (odp = (struct odirect *)buf; odp < eodp; odp++)
if (odp->d_ino != 0) {
i = DIRBLKSIZ - (loc & (DIRBLKSIZ - 1));
if ((dp->d_reclen & 0x3) != 0 ||
dp->d_reclen > i ||
- dp->d_reclen < DIRSIZ(0, dp) ||
- dp->d_namlen > MAXNAMLEN) {
+ dp->d_reclen < DIRSIZ(0, dp)
+#if MAXNAMLEN < 255
+ || dp->d_namlen > MAXNAMLEN
+#endif
+ ) {
Vprintf(stdout, "Mangled directory: ");
if ((dp->d_reclen & 0x3) != 0)
Vprintf(stdout,
Vprintf(stdout,
"reclen less than DIRSIZ (%d < %d) ",
dp->d_reclen, DIRSIZ(0, dp));
+#if MAXNAMLEN < 255
if (dp->d_namlen > MAXNAMLEN)
Vprintf(stdout,
"reclen name too big (%d > %d) ",
dp->d_namlen, MAXNAMLEN);
+#endif
Vprintf(stdout, "\n");
loc += i;
continue;