Class: Shells::PfSenseSerialSession
- Inherits:
-
SerialSession
- Object
- ShellBase
- SerialSession
- Shells::PfSenseSerialSession
- Includes:
- PfSenseCommon
- Defined in:
- lib/shells/pf_sense_serial_session.rb
Overview
Executes a serial session with a pfSense host.
Valid options:
pathThe path to the serial device (e.g. - COM3 or /dev/tty2) This is a required option.
speedThe bitrate for the connection. The default is 115200.
data_bitsThe number of data bits for the connection. The default is 8.
parityThe parity for the connection. The default is :none.
silence_timeoutWhen a command is executing, this is the maximum amount of time to wait for any feedback from the shell. If set to 0 (or less) there is no timeout. Unlike
command_timeoutthis value resets every time we receive feedback. This option can be overridden by providing an alternate value to theexecmethod on a case-by-case basis.command_timeoutWhen a command is executing, this is the maximum amount of time to wait for the command to finish. If set to 0 (or less) there is no timeout. Unlike
silence_timeoutthis value does not reset when we receive feedback. This option can be overridden by providing an alternate value to theexecmethod on a case-by-case basis.
Shells::PfSenseSerialSession.new( path: 'COM3' ) do |shell| cfg = shell.get_config_section("aliases") cfg ||= [] cfg << { :name => "MY_NETWORK", :type => "network", :address => "192.168.1.0/24", :descr => "My home network", :details => "Created #Time.now.to_s" } shell.set_config_section("aliases", cfg, "Add home network") shell.apply_filter_config end
Constant Summary
Constants included from PfSenseCommon
Shells::PfSenseCommon::BASE_SHELL, Shells::PfSenseCommon::PF_PROMPT, Shells::PfSenseCommon::PF_SHELL
Instance Attribute Summary
Attributes included from PfSenseCommon
#pf_sense_host, #pf_sense_user, #pf_sense_version
Attributes inherited from ShellBase
Method Summary
Methods included from PfSenseCommon
#apply_filter_config, #apply_user_config, #config_parsed?, #enable_cert_auth, #exec_prompt, #exec_shell, #get_config_section, included, #line_ending, #parse_config, #pf_exec, #quit, #reboot, #set_config_section, #validate_options
Methods inherited from SerialSession
Methods included from BashCommon
#read_file, #sudo_exec, #sudo_exec_for_code, #sudo_exec_ignore_code, #write_file
Methods inherited from ShellBase
after_init, after_term, before_init, before_term, #combined_output, #exec, #exec_for_code, #exec_ignore_code, #initialize, #line_ending, on_debug, on_exception, #read_file, #session_complete?, #stderr, #stdout, #write_file
Constructor Details
This class inherits a constructor from Shells::ShellBase