aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Compile with -fno-strict-aliasingGravatar Benjamin Barenblat2016-04-03
| | | | | | | Turns out I’ve misused reinterpret_cast in a few places. Fixing it would be challenging and not worth the slight performance boost from strict aliasing optimizations, so mark violations and disable strict aliasing.
* Implement truncateGravatar Benjamin Barenblat2016-02-22
|
* Use -o nonempty by defaultGravatar Benjamin Barenblat2016-02-22
|
* Harden compiler and linker flagsGravatar Benjamin Barenblat2016-02-22
|
* Mangle namesGravatar Benjamin Barenblat2016-02-22
|
* Implement statfsGravatar Benjamin Barenblat2016-02-21
|
* Implement creatGravatar Benjamin Barenblat2016-02-21
| | | | Turns out FUSE needs it after all (for operations with O_EXCL).
* Implement ftruncateGravatar Benjamin Barenblat2016-02-21
|
* Implement symlink/readlinkGravatar Benjamin Barenblat2016-02-21
|
* posix_extras: Abstract out common syscall handlingGravatar Benjamin Barenblat2016-02-21
|
* posix_extras: Abstract out path validationGravatar Benjamin Barenblat2016-02-21
|
* operations: Abstract away common exception-handlingGravatar Benjamin Barenblat2016-02-21
|
* Implement chmodGravatar Benjamin Barenblat2016-02-21
|
* Implement renameGravatar Benjamin Barenblat2016-02-21
|
* Implement mkdir/rmdirGravatar Benjamin Barenblat2016-02-21
|
* Implement writeGravatar Benjamin Barenblat2016-02-21
|
* Factor out common path manipulationGravatar Benjamin Barenblat2016-02-21
|
* Implement fgetattr and readGravatar Benjamin Barenblat2016-02-21
|
* Implement utimensGravatar Benjamin Barenblat2016-02-21
|
* Replace creat with mknod+openGravatar Benjamin Barenblat2016-02-21
| | | | | Performance is not an immediate concern, so replace creat with mknod to compact code.
* Properly initialize fuse_operations structGravatar Benjamin Barenblat2016-02-21
| | | | | Prevent crashes on unimplemented functions by nulling out all function pointers in the struct.
* Unify File::OpenAt functionsGravatar Benjamin Barenblat2016-02-21
|
* Implement unlinkGravatar Benjamin Barenblat2016-02-21
|
* Deduplicate resource release functionsGravatar Benjamin Barenblat2016-02-20
|
* Remove some redundant declarationsGravatar Benjamin Barenblat2016-02-20
|
* Delete redundant logging; normalize other log statementsGravatar Benjamin Barenblat2016-02-20
|
* Ensure Create passes correct flags to emulate creat(2)Gravatar Benjamin Barenblat2016-02-20
|
* Deduplicate resource creation functionsGravatar Benjamin Barenblat2016-02-20
|
* Make more exception-safeGravatar Benjamin Barenblat2016-02-20
| | | | | Ensure that FUSE callbacks will never throw exceptions. Log unexpected exceptions as errors.
* Cleanup: Use std:: where appropriateGravatar Benjamin Barenblat2016-02-20
|
* Replace hand-rolled IoError class with std::system_errorGravatar Benjamin Barenblat2016-02-20
|
* Use DTTOIF instead of implementing DirectoryTypeToFileTypeGravatar Benjamin Barenblat2016-02-20
|
* Only define FUSE_USE_VERSION onceGravatar Benjamin Barenblat2016-02-20
|
* Unify constructors for FileGravatar Benjamin Barenblat2016-02-20
|
* Include what you useGravatar Benjamin Barenblat2016-02-20
|
* Implement open, creat, and closeGravatar Benjamin Barenblat2016-02-18
|
* Create and use RAII directory abstractionGravatar Benjamin Barenblat2016-02-18
|
* Clean up deleted copy and move constructors for FileGravatar Benjamin Barenblat2016-02-18
|
* Add nullary constructor to IoErrorGravatar Benjamin Barenblat2016-02-18
| | | | The constructor constructs an IoError based on the current errno.
* Create and use RAII file abstractionGravatar Benjamin Barenblat2016-02-18
|
* Rewrite getattr to query underlying file systemGravatar Benjamin Barenblat2016-02-13
|
* Save root file descriptor when starting upGravatar Benjamin Barenblat2016-02-13
| | | | | | Allow access to underlying file system by saving a file descriptor to the underlying directory when starting. Close the FD during FUSE’s destroy routine, though it won’t matter much.
* Update copyright noticesGravatar Benjamin Barenblat2016-02-13
| | | | | Now that all FUSE operations are in their own file, there’s no code in scoville.cc from the FUSE distribution.
* Implement enough to get ls to workGravatar Benjamin Barenblat2016-02-13
|
* Make FUSE and glog be system includesGravatar Benjamin Barenblat2016-02-13
| | | | | Prevent obnoxious error messages by making FUSE and glog be included with -isystem instead of -I.
* Link in FUSEGravatar Benjamin Barenblat2016-02-12
| | | | | Start linking FUSE and jumping into FUSE on boot. Also define a couple of trivial operations, but don’t actually do filename encoding yet.
* Initial commitGravatar Benjamin Barenblat2016-02-12
Create a utility to demonstrate scoville’s escaping scheme.