[EMAIL PROTECTED] said:
| The next step was to recompile the venus. Now the clients get crashed
| on each coda's rename call. Using the gdb I found that Venus
| crashes with a sig 11 inside a glibs calls that manipulates strings.
It might be solved if you apply this patch.
Jan
---------------------------------------------------------------
Index: coda/coda-src/venus/vproc_pathname.cc
diff -c coda/coda-src/venus/vproc_pathname.cc:4.13
coda/coda-src/venus/vproc_pathname.cc:4.14
*** coda/coda-src/venus/vproc_pathname.cc:4.13 Thu Mar 4 22:52:57 1999
--- coda/coda-src/venus/vproc_pathname.cc Thu Mar 25 21:16:37 1999
***************
*** 412,419 ****
void vproc::verifyname(char *name, int flags)
{
! char *ptr;
! int length = strlen(name);
/* Disallow '.', '..', and '/' */
if (flags & NAME_NO_DOTS)
--- 412,418 ----
void vproc::verifyname(char *name, int flags)
{
! int length = strlen(name);
/* Disallow '.', '..', and '/' */
if (flags & NAME_NO_DOTS)
***************
*** 444,450 ****
}
/* Disallow names ending in anything like "@sys/@cpu" (@???). */
! if ((flags & NAME_NO_EXPANSION) && (length >= 4) && (ptr[length-4] == '@'))
{
u.u_error = EINVAL;
return;
--- 443,449 ----
}
/* Disallow names ending in anything like "@sys/@cpu" (@???). */
! if ((flags & NAME_NO_EXPANSION) && (length >= 4) && (name[length-4] == '@'))
{
u.u_error = EINVAL;
return;