Module: KeyControl

Defined in:
lib/key_control.rb,
lib/key_control/system.rb,
lib/key_control/version.rb,
lib/key_control/key_ring.rb

Defined Under Namespace

Classes: KeyRing, System

Constant Summary collapse

THREAD =

Constants for special keyring identifiers. For more information, see: manpages.ubuntu.com/manpages/oneiric/man1/keyctl.1.html

-1
PROCESS =
-2
SESSION =
-3
USER =
-4
DEFAULT =
-5
GROUP =
-6
LIBRARIES =

A list of potential library paths. Currently looks for the default shared libraries on CentOS installations.

%w(
libkeyutils.so
libkeyutils.so.1 )
VERSION =
"0.0.7"

Class Method Summary collapse

Class Method Details

.available?Boolean

Public: Is a libkeyutils shared library detected on this system?

Returns a boolean.

Returns:

  • (Boolean)


32
33
34
35
36
37
38
39
40
# File 'lib/key_control.rb', line 32

def self.available?
  library_names.any? do |library_name|
    begin
      Fiddle::Handle.new(library_name)
    rescue Fiddle::DLError
      false
    end
  end
end

.library_namesObject

Public: Shared library names.

Returns an Array.



25
26
27
# File 'lib/key_control.rb', line 25

def self.library_names
  LIBRARIES
end