Useful Ruby FFI bindings for libc.
- Provides common Structs used in
libc:- {FFI::LibC::Ifaddrs}
- {FFI::LibC::In6Addr}
- {FFI::LibC::InAddr}
- {FFI::LibC::SockaddrDL}
- {FFI::LibC::SockaddrFamily}
- {FFI::LibC::SockaddrIn6}
- {FFI::LibC::SockaddrIn}
- {FFI::LibC::Sockaddr}
- {FFI::LibC::Timeval}
- {FFI::LibC::Timezone}
- {FFI::LibC::RUsage}
- Binds to common functions and global variables in
libc:errno.h:sys_errlist(BSD)sys_nerr(BSD)errno
unistd.h:brksbrkgetpidgetppidgetuidgeteuidgetgidgetegid
stdlib.h:callocmallocfreereallocgetenvputenvunsetenvclearenv
time.h:time
sys/time.h:gettimeofdaysettimeofday
sys/resource.h/bits/resource.h:getrusage
sys/mman.h:mmapmunmap
string.h:bzeromemsetmemcpymemcmpmemchrmemrchrstrcpystrncpystrlenindexrindexstrchrstrrchrstrstrstrerror
stdio.h:stdinstdoutstderrfopenfdopenfreopenfseekftellrewindfreadfwritefgetcfgetsfputcfputsfflushfcloseclearerrfeofferrorfilenoperror
netdb.h:getnameinfo
ifaddrs.h:getifaddrsfreeifaddrs
- ffi ~> 1.0
$ gem install ffi-libcgem.add_dependency 'ffi-libc', '~> 0.1'gem 'ffi-libc', '~> 0.1'Copyright (c) 2010-2021 Hal Brodigan
See {file:LICENSE.txt} for license information.