ICFS/CONTENTS.md

1.4 KiB

The source code is available in src directory:

  • main.c - main function.
  • cc.h - Convenient Containers library.
  • fuse_operations.c, fuse_operations.h - Implementation of FUSE operations.
  • perm_permissions_table.c, perm_permissions_table.h - implementation of permanent permissions table.
  • proc_operations.c, proc_operations.c - different utility functions that interface with procfs.
  • temp_permissions_table.c temp_permissions_table.h - implementation of temporary permission table.
  • sourcefs.c, sourcefs.h, real_filename.h - operations used to access the underlying filesystem.
  • ui-socket.c ui-socket.h - permission logic and interaction with access dialogues.
  • gui/ directory - source code of the access dialogue.
  • Other files are dedicated to special data type definitions.

LICENSE is the text of GPLv2 source code license.

Makefile is code for the make build system.

Tests are located in the test directory:

  • test.bash - script that tests ICFS correctness (see README for usage instructions)
  • stress.bash - helper script that loads ICFS with open operations.
  • opener/ directory - source code for a scpecial program that tests whether file can be opened.
  • mock/ directory - bash script that mocks behaviour of access dialogue.

After building the program, make is going to create build directory where icfs and access dialogue executables will be located.