utils_disk.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. /* Header file for utils_disk */
  2. #include "mountlist.h"
  3. #include "utils_base.h"
  4. #include "regex.h"
  5. struct name_list
  6. {
  7. char *name;
  8. struct name_list *next;
  9. };
  10. struct parameter_list
  11. {
  12. char *name;
  13. thresholds *freespace_bytes;
  14. thresholds *freespace_units;
  15. thresholds *freespace_percent;
  16. thresholds *usedspace_bytes;
  17. thresholds *usedspace_units;
  18. thresholds *usedspace_percent;
  19. thresholds *usedinodes_percent;
  20. thresholds *freeinodes_percent;
  21. char *group;
  22. struct mount_entry *best_match;
  23. struct parameter_list *name_next;
  24. uintmax_t total, available, available_to_root, used, inodes_free, inodes_total;
  25. double dfree_pct, dused_pct;
  26. uintmax_t dused_units, dfree_units, dtotal_units;
  27. double dused_inodes_percent, dfree_inodes_percent;
  28. };
  29. void np_add_name (struct name_list **list, const char *name);
  30. int np_find_name (struct name_list *list, const char *name);
  31. int np_seen_name (struct name_list *list, const char *name);
  32. struct parameter_list *np_add_parameter(struct parameter_list **list, const char *name);
  33. struct parameter_list *np_find_parameter(struct parameter_list *list, const char *name);
  34. struct parameter_list *np_del_parameter(struct parameter_list *item, struct parameter_list *prev);
  35. int search_parameter_list (struct parameter_list *list, const char *name);
  36. void np_set_best_match(struct parameter_list *desired, struct mount_entry *mount_list, int exact);
  37. int np_regex_match_mount_entry (struct mount_entry* me, regex_t* re);