dir.h
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:1k
源码类别:

Linux/Unix编程

开发平台:

Unix_Linux

  1. /*
  2.  * dir.h - Header file for dir.c
  3.  *
  4.  * Copyright (C) 1997 R間is Duchesne
  5.  */
  6. #define ITERATE_SPLIT_DONE      1
  7. enum ntfs_iterate_e {
  8.     BY_POSITION,
  9.     BY_NAME,
  10.     DIR_INSERT
  11. };
  12. /* not all fields are used for all operations */
  13. typedef struct ntfs_iterate_s {
  14. enum ntfs_iterate_e type;
  15. ntfs_inode *dir;
  16. union{
  17. ntfs_u64 pos;
  18. int flags;
  19. }u;
  20. char *result;      /* pointer to entry if found */
  21. ntfs_u16* name;
  22. int namelen;
  23. int block;         /* current index record */
  24. int newblock;      /* index record created in a split */
  25. char *new_entry;
  26. int new_entry_size;
  27. /*ntfs_inode* new;*/
  28. } ntfs_iterate_s;
  29. int ntfs_getdir_unsorted(ntfs_inode *ino, ntfs_u32 *p_high, ntfs_u32* p_low,
  30.  int (*cb)(ntfs_u8*, void*), void *param);
  31. int ntfs_getdir_byname(ntfs_iterate_s *walk);
  32. int ntfs_dir_add(ntfs_inode *dir, ntfs_inode *new, ntfs_attribute *name);
  33. int ntfs_check_index_record(ntfs_inode *ino, char *record);
  34. int ntfs_getdir_byposition(ntfs_iterate_s *walk);
  35. int ntfs_mkdir(ntfs_inode* dir,const char* name,int namelen, ntfs_inode *ino);
  36. int ntfs_split_indexroot(ntfs_inode *ino);
  37. int ntfs_add_index_root(ntfs_inode *ino, int type);