Package ghidra.pcode.emu.taint.lib

# Class TaintEmuUnixFileSystem

java.lang.Object
ghidra.pcode.emu.unix.AbstractEmuUnixFileSystem<org.apache.commons.lang3.tuple.Pair<byte[],TaintVec>>
ghidra.pcode.emu.taint.lib.TaintEmuUnixFileSystem

All Implemented Interfaces:
  `EmuUnixFileSystem<org.apache.commons.lang3.tuple.Pair<byte[],TaintVec>>`

public class TaintEmuUnixFileSystem extends AbstractEmuUnixFileSystem<org.apache.commons.lang3.tuple.Pair<byte[],TaintVec>>
A file system containing tainted files

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `TaintEmuUnixFileSystem.ReadOnlyTaintArrayFileContents`
  A taint-contents for a read-only file whose contents are completely tainted
  `static class`
  `TaintEmuUnixFileSystem.TaintEmuUnixFile`
  A file whose contents have a taint piece
  `static class`
  `TaintEmuUnixFileSystem.UntaintedFileContents`
  A taint-contents for a file whose contents are not tainted

  ## Nested classes/interfaces inherited from interface ghidra.pcode.emu.unix.EmuUnixFileSystem

  `EmuUnixFileSystem.OpenFlag`

- ## Field Summary

  ### Fields inherited from class ghidra.pcode.emu.unix.AbstractEmuUnixFileSystem

  `filesByPath`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `TaintEmuUnixFileSystem()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `AbstractEmuUnixFile<org.apache.commons.lang3.tuple.Pair<byte[],TaintVec>>`
  `newFile(String pathname, int mode)`
  A factory for constructing a new file (without adding it to the file system)
  `void`
  `putTaintedFile(String pathname, byte[] contents)`
  Place a tainted file into the file system with the given contents

  ### Methods inherited from class ghidra.pcode.emu.unix.AbstractEmuUnixFileSystem

  `createOrGetFile, getFile, open, putFile, unlink`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### TaintEmuUnixFileSystem

    public TaintEmuUnixFileSystem()

- ## Method Details

  - ### newFile

    public AbstractEmuUnixFile<org.apache.commons.lang3.tuple.Pair<byte[],TaintVec>> newFile(String pathname, int mode) throws EmuIOException
    Description copied from interface: `EmuUnixFileSystem`
    A factory for constructing a new file (without adding it to the file system)
    Specified by:
      `newFile` in interface `EmuUnixFileSystem<org.apache.commons.lang3.tuple.Pair<byte[],TaintVec>>`
    Specified by:
      `newFile` in class `AbstractEmuUnixFileSystem<org.apache.commons.lang3.tuple.Pair<byte[],TaintVec>>`
    Parameters:
      `pathname` - the path of the file
      `mode` - the mode of the new file
    Returns:
      the new file
    Throws:
      `EmuIOException` - if the file cannot be constructed

  - ### putTaintedFile

    public void putTaintedFile(String pathname, byte[] contents)
    Place a tainted file into the file system with the given contents
    Parameters:
      `pathname` - the pathname of the file
      `contents` - the concrete contents of the file