Type:
Class
Constants:
NEXT : Document-const

NEXT

A predefined pseudo-handle of RTLD_NEXT

Which will find the next occurrence of a function in the search order after the current library.

DEFAULT : Document-const

DEFAULT

A predefined pseudo-handle of RTLD_DEFAULT

Which will find the first occurrence of the desired symbol using the default library search order

The DL::Handle is the manner to access the dynamic library

Example

Setup

1
2
3
4
libc_so = "/lib64/libc.so.6"
=> "/lib64/libc.so.6"
@handle = DL::Handle.new(libc_so)
=> #<DL::Handle:0x00000000d69ef8>

Setup, with flags

1
2
3
4
libc_so = "/lib64/libc.so.6"
=> "/lib64/libc.so.6"
@handle = DL::Handle.new(libc_so, DL::RTLD_LAZY | DL::RTLD_GLOBAL)
=> #<DL::Handle:0x00000000d69ef8>

Addresses to symbols

1
2
strcpy_addr = @handle['strcpy']
=> 140062278451968

or

1
2
strcpy_addr = @handle.sym('strcpy')
=> 140062278451968
new
  • References/Ruby on Rails/Ruby/Classes/DL/DL::Handle

initialize(lib = nil, flags = DL::RTLD_LAZY | DL::RTLD_GLOBAL) Class Public methods Create

2025-01-10 15:47:30
close_enabled?
  • References/Ruby on Rails/Ruby/Classes/DL/DL::Handle

close_enabled? Instance Public methods Returns true if dlclose()

2025-01-10 15:47:30
sym 2
  • References/Ruby on Rails/Ruby/Classes/DL/DL::Handle

sym(name) Instance Public methods Document-method:

2025-01-10 15:47:30
[]
  • References/Ruby on Rails/Ruby/Classes/DL/DL::Handle

sym(name) Class Public methods Get the address as an

2025-01-10 15:47:30
sym
  • References/Ruby on Rails/Ruby/Classes/DL/DL::Handle

sym(name) Class Public methods Document-method:

2025-01-10 15:47:30
enable_close
  • References/Ruby on Rails/Ruby/Classes/DL/DL::Handle

enable_close Instance Public methods Enable a call to dlclose() when this

2025-01-10 15:47:30
[] 2
  • References/Ruby on Rails/Ruby/Classes/DL/DL::Handle

sym(name) Instance Public methods Get the address as an

2025-01-10 15:47:30
to_i
  • References/Ruby on Rails/Ruby/Classes/DL/DL::Handle

to_i Instance Public methods Returns the memory address for this handle.

2025-01-10 15:47:30
close
  • References/Ruby on Rails/Ruby/Classes/DL/DL::Handle

close Instance Public methods Close this

2025-01-10 15:47:30
disable_close
  • References/Ruby on Rails/Ruby/Classes/DL/DL::Handle

disable_close Instance Public methods Disable a call to dlclose() when this

2025-01-10 15:47:30