Public Types | Public Member Functions
ioctl_driver Class Reference

Public Types

using status_type = ioctl::status_type
 
using registers_type = command_line_parser::registers_type
 

Public Member Functions

 ioctl_driver (gsl::not_null< file *> f, gsl::not_null< ioctl *> ctl, gsl::not_null< command_line_parser *> clp)
 
 ~ioctl_driver ()=default
 
void process ()
 

Detailed Description

IOCTL Driver

The IOCTL driver is the main work horse of the Bareflank Manager. The IOCTL driver takes the command line parser, and using a file class, and IOCTL class, tells the driver entry what to do based on input provided by the command line parser.

If certain conditions are not meet, the IOCTL driver will error out on it's attempt to process, and return an error.

Definition at line 39 of file ioctl_driver.h.

Member Typedef Documentation

◆ status_type

Definition at line 43 of file ioctl_driver.h.

◆ registers_type

Definition at line 44 of file ioctl_driver.h.

Constructor & Destructor Documentation

◆ ioctl_driver()

ioctl_driver::ioctl_driver ( gsl::not_null< file *>  f,
gsl::not_null< ioctl *>  ctl,
gsl::not_null< command_line_parser *>  clp 
)

Default Constructor

Precondition
expects: f != nullptr
expects: ctl != nullptr
expects: clp != nullptr
Postcondition
ensures: none
Parameters
ffile class used to read/write from/to the filesystem
ctlioctl class used to communicate with the driver entry
clpcommand line parser used to parse user input

Definition at line 31 of file ioctl_driver.cpp.

◆ ~ioctl_driver()

ioctl_driver::~ioctl_driver ( )
default

Destructor

Precondition
expects: none
Postcondition
ensures: none

Member Function Documentation

◆ process()

void ioctl_driver::process ( )

Process

Processes the IOCTL driver based on the information provided during construction. If the IOCTL driver has a problem during processing, this function will return with an error.

Precondition
expects: none
Postcondition
ensures: none

Definition at line 40 of file ioctl_driver.cpp.


The documentation for this class was generated from the following files: