* SCCSID(@(#)curdir.c 4.5);
static struct stat d
, dd
;
static struct direct
*dir
;
static int cat(), prexit();
if (d
.st_ino
==rino
&& d
.st_dev
==rdev
)
if ((dirp
= opendir(dotdot
)) == 0)
prexit("curdir: cannot open ..\n");
if(d
.st_dev
== dd
.st_dev
) {
if(d
.st_ino
== dd
.st_ino
)
if ((dir
= readdir(dirp
)) == 0)
prexit("curdir: read error in ..\n");
while (dir
->d_ino
!= d
.st_ino
);
if ((dir
= readdir(dirp
)) == 0)
prexit("curdir: read error in ..\n");
} while(dd
.st_ino
!= d
.st_ino
|| dd
.st_dev
!= d
.st_dev
);
write(2, name
, strlen(name
));
prexit(": can't change back\n");
name
[i
] = dir
->d_name
[i
];
write(2, cp
, strlen(cp
));