in chef/cookbooks/cpe_anyconnect/resources/cpe_anyconnect.rb [403:423]
def anyconnect_vpn_connected?
return false unless windows? || macos?
client =
if windows?
::File.join(ENV['ProgramFiles(x86)'], 'Cisco/Cisco AnyConnect Secure Mobility Client/vpncli.exe')
elsif macos?
'/opt/cisco/anyconnect/bin/vpn'
end
return false unless ::File.exist?(client)
if windows?
exe = 'Cisco/Cisco AnyConnect Secure Mobility Client/vpncli.exe'
result = powershell_out("(& (Join-path -Path ${ENV:ProgramFiles(x86)} -ChildPath '#{exe}') state)").stdout.to_s
elsif macos?
result = `
end
result&.include?('state: Connected')
end