class Aptible::CLI::Helpers::SecurityKey::DeviceMapper
Attributes
pid[R]
Public Class Methods
new(pid, out_read, err_read)
click to toggle source
# File lib/aptible/cli/helpers/security_key.rb, line 71 def initialize(pid, out_read, err_read) @pid = pid @out_read = out_read @err_read = err_read end
spawn()
click to toggle source
# File lib/aptible/cli/helpers/security_key.rb, line 91 def self.spawn out_read, out_write = IO.pipe err_read, err_write = IO.pipe pid = Process.spawn( 'fido2-token -L', out: out_write, err: err_write, close_others: true ) U2F_LOGGER.debug("#{self}: spawned #{pid}") [out_write, err_write].each(&:close) new(pid, out_read, err_read) end
Public Instance Methods
exited(status)
click to toggle source
# File lib/aptible/cli/helpers/security_key.rb, line 77 def exited(status) out, err = [@out_read, @err_read].map(&:read).map(&:chomp) if status.exitstatus == 0 U2F_LOGGER.info("#{self.class}: ok: #{out}") [nil, out] else U2F_LOGGER.warn("#{self.class}: err: #{err}") [nil, nil] end ensure [@out_read, @err_read].each(&:close) end