Fix struct kernel_dirent::d_namlen being called d_namelen.

This commit is contained in:
Jonas 'Sortie' Termansen 2014-01-03 22:09:36 +01:00
parent ffff20be35
commit 021256ad8e
6 changed files with 11 additions and 11 deletions

View File

@ -229,9 +229,9 @@ bool RespondReadDir(int svr, int chl, struct kernel_dirent* dirent)
struct fsm_resp_readdirents body;
body.ino = dirent->d_ino;
body.type = dirent->d_type;
body.namelen = dirent->d_namelen;
body.namelen = dirent->d_namlen;
return RespondMessage(svr, chl, FSM_RESP_READDIRENTS, &body, sizeof(body)) &&
RespondData(svr, chl, dirent->d_name, dirent->d_namelen);
RespondData(svr, chl, dirent->d_name, dirent->d_namlen);
}
void HandleRefer(int svr, int chl, struct fsm_req_refer* msg, Filesystem* fs)
@ -466,10 +466,10 @@ void HandleReadDir(int svr, int chl, struct fsm_req_readdirents* msg, Filesystem
kernel_entry.d_ino = entry->inode;
kernel_entry.d_dev = 0;
kernel_entry.d_type = 0; // TODO: Support this!
kernel_entry.d_namelen = entry->name_len;
kernel_entry.d_namlen = entry->name_len;
memcpy(kernel_entry.d_name, entry->name, entry->name_len);
size_t dname_offset = offsetof(struct kernel_dirent, d_name);
padding[dname_offset + kernel_entry.d_namelen] = '\0';
padding[dname_offset + kernel_entry.d_namlen] = '\0';
block->Unref();
inode->Unref();
RespondReadDir(svr, chl, &kernel_entry);

View File

@ -57,7 +57,7 @@ static int fddir_sortix_readents(fddir_sortix_t* info)
{
if ( errno != ERANGE )
return -1;
size_t newdirentsize = sizeof(struct kernel_dirent) + info->dirent->d_namelen + 1;
size_t newdirentsize = sizeof(struct kernel_dirent) + info->dirent->d_namlen + 1;
if ( newdirentsize < info->direntsize )
newdirentsize *= 2;
struct kernel_dirent* newdirent = (struct kernel_dirent*) malloc(newdirentsize);
@ -83,7 +83,7 @@ static int fddir_sortix_read(void* user, struct dirent* dirent, size_t* size)
}
size_t provided = (user) ? *size : 0;
size_t needed = sizeof(struct dirent) + info->current->d_namelen + 1;
size_t needed = sizeof(struct dirent) + info->current->d_namlen + 1;
*size = needed;
if ( provided < needed )
return 1;

View File

@ -323,7 +323,7 @@ ssize_t Descriptor::readdirents(ioctx_t* ctx, struct kernel_dirent* dirent,
memset(&retdirent, 0, sizeof(retdirent));
retdirent.d_reclen = needed;
retdirent.d_off = 0;
retdirent.d_namelen = namelen;
retdirent.d_namlen = namelen;
if ( !ctx->copy_to_dest(dirent, &retdirent, sizeof(retdirent)) )
return -1;
if ( size < needed )

View File

@ -150,7 +150,7 @@ ssize_t Dir::readdirents(ioctx_t* ctx, struct kernel_dirent* dirent,
if ( size < needed )
{
errno = ERANGE;
retdirent.d_namelen = namelen;
retdirent.d_namlen = namelen;
}
else
{
@ -158,7 +158,7 @@ ssize_t Dir::readdirents(ioctx_t* ctx, struct kernel_dirent* dirent,
ret = needed;
retdirent.d_reclen = needed;
retdirent.d_off = 0;
retdirent.d_namelen = namelen;
retdirent.d_namlen = namelen;
retdirent.d_ino = inode->ino;
retdirent.d_dev = inode->dev;
retdirent.d_type = ModeToDT(inode->type);

View File

@ -921,7 +921,7 @@ ssize_t Unode::readdirents(ioctx_t* ctx, struct kernel_dirent* dirent,
struct kernel_dirent entry;
entry.d_reclen = sizeof(entry) + resp.namelen + 1;
entry.d_off = 0;
entry.d_namelen = resp.namelen;
entry.d_namlen = resp.namelen;
entry.d_dev = (dev_t) server;
entry.d_ino = resp.ino;
entry.d_type = resp.type;

View File

@ -42,7 +42,7 @@ struct kernel_dirent
{
size_t d_reclen;
size_t d_off;
size_t d_namelen;
size_t d_namlen;
ino_t d_ino;
dev_t d_dev;
unsigned char d_type;