fs/dirent/fs_rewinddir.c
void rewinddir(DIR *dirp)
{
  struct fs_dirent_s *idir = (struct fs_dirent_s *)dirp;
  struct Vnode *vnode_ptr = NULL;

  if (!idir || !idir->fd_root || idir->fd_status != DIRENT_MAGIC)
    {
      set_errno(EBADF);
      return;
    }

  /* The way we handle the readdir depends on the type of vnode
   * that we are dealing with.
   */

  vnode_ptr = idir->fd_root;
  if (vnode_ptr->vop != NULL && vnode_ptr->vop->Rewinddir != NULL)
    {
      /* Perform the rewinddir() operation */

      vnode_ptr->vop->Rewinddir(vnode_ptr, idir);
    }
  else
    {
      set_errno(ENOSYS);
    }

  /* Reset position for telldir() */

  idir->fd_position = 0;
}
/****************************************************************************
 * Name: rewinddir
 *
 * Description:
 *   The  rewinddir() function resets the position of the
 *   directory stream dir to the beginning of the directory.
 *
 * Input Parameters:
 *   dirp -- An instance of type DIR created by a previous
 *     call to opendir();
 *
 * Returned Value:
 *   None
 *
 ****************************************************************************/
rewinddir
Description:
The  rewinddir() function resets the position of the
directory stream dir to the beginning of the directory.

Input Parameters:
dirp -- An instance of type DIR created by a previous
call to opendir().

Returned Value:
None
rewinddir Description : The rewinddir () function resets the position of the directory stream dir to the beginning of the directory . Input Parameters : dirp -- An instance of type DIR created by a previous call to opendir () . Returned Value : None
void rewinddir(DIR *dirp)
{
  struct fs_dirent_s *idir = (struct fs_dirent_s *)dirp;
  struct Vnode *vnode_ptr = NULL;
  if (!idir || !idir->fd_root || idir->fd_status != DIRENT_MAGIC)
    {
      set_errno(EBADF);
      return;
    }
  vnode_ptr = idir->fd_root;
  if (vnode_ptr->vop != NULL && vnode_ptr->vop->Rewinddir != NULL)
    {
      vnode_ptr->vop->Rewinddir(vnode_ptr, idir);
    }
  else
    {
      set_errno(ENOSYS);
    }
  idir->fd_position = 0;
}
void rewinddir ( DIR * dirp ) { struct fs_dirent_s * idir = ( struct fs_dirent_s * ) dirp ; struct Vnode * vnode_ptr = NULL ; if ( ! idir || ! idir -> fd_root || idir -> fd_status != DIRENT_MAGIC ) { set_errno ( EBADF ) ; return ; } vnode_ptr = idir -> fd_root ; if ( vnode_ptr -> vop != NULL && vnode_ptr -> vop -> Rewinddir != NULL ) { vnode_ptr -> vop -> Rewinddir ( vnode_ptr , idir ) ; } else { set_errno ( ENOSYS ) ; } idir -> fd_position = 0 ; }
Name: rewinddir
 Description:
   The  rewinddir() function resets the position of the
   directory stream dir to the beginning of the directory.
Name : rewinddir Description : The rewinddir () function resets the position of the directory stream dir to the beginning of the directory .
/* The way we handle the readdir depends on the type of vnode
   * that we are dealing with.
   */ /* Perform the rewinddir() operation */ /* Reset position for telldir() */