busybox/e2fsprogs/e2fs_lib.h
<<
>>
Prefs
   1/* vi: set sw=4 ts=4: */
   2/*
   3 * See README for additional information
   4 *
   5 * This file can be redistributed under the terms of the GNU Library General
   6 * Public License
   7 */
   8
   9/* Constants and structures */
  10#include "bb_e2fs_defs.h"
  11
  12PUSH_AND_SET_FUNCTION_VISIBILITY_TO_HIDDEN
  13
  14/* Iterate a function on each entry of a directory */
  15int iterate_on_dir(const char *dir_name,
  16                int FAST_FUNC (*func)(const char *, struct dirent *, void *),
  17                void *private);
  18
  19/* Get/set a file version on an ext2 file system */
  20int fgetsetversion(const char *name, unsigned long *get_version, unsigned long set_version);
  21#define fgetversion(name, version) fgetsetversion(name, version, 0)
  22#define fsetversion(name, version) fgetsetversion(name, NULL, version)
  23
  24/* Get/set a file flags on an ext2 file system */
  25int fgetsetflags(const char *name, unsigned long *get_flags, unsigned long set_flags);
  26#define fgetflags(name, flags) fgetsetflags(name, flags, 0)
  27#define fsetflags(name, flags) fgetsetflags(name, NULL, flags)
  28
  29/* Must be 1 for compatibility with 'int long_format'. */
  30#define PFOPT_LONG  1
  31/* Print file attributes on an ext2 file system */
  32void print_e2flags(FILE *f, unsigned long flags, unsigned options);
  33
  34extern const uint32_t e2attr_flags_value[];
  35extern const char e2attr_flags_sname[];
  36
  37/* If you plan to ENABLE_COMPRESSION, see e2fs_lib.c and chattr.c - */
  38/* make sure that chattr doesn't accept bad options! */
  39#ifdef ENABLE_COMPRESSION
  40#define e2attr_flags_value_chattr (&e2attr_flags_value[5])
  41#define e2attr_flags_sname_chattr (&e2attr_flags_sname[5])
  42#else
  43#define e2attr_flags_value_chattr (&e2attr_flags_value[1])
  44#define e2attr_flags_sname_chattr (&e2attr_flags_sname[1])
  45#endif
  46
  47POP_SAVED_FUNCTION_VISIBILITY
  48