ext/socket/option.c File Reference

#include "rubysocket.h"

Include dependency graph for option.c:

Go to the source code of this file.

Functions

static VALUE constant_to_sym (int constant, ID(*intern_const)(int))
static VALUE optname_to_sym (int level, int optname)
static VALUE sockopt_initialize (VALUE self, VALUE vfamily, VALUE vlevel, VALUE voptname, VALUE data)
VALUE rsock_sockopt_new (int family, int level, int optname, VALUE data)
static VALUE sockopt_family_m (VALUE self)
static int sockopt_level (VALUE self)
static VALUE sockopt_level_m (VALUE self)
static int sockopt_optname (VALUE self)
static VALUE sockopt_optname_m (VALUE self)
static VALUE sockopt_data (VALUE self)
static VALUE sockopt_s_int (VALUE klass, VALUE vfamily, VALUE vlevel, VALUE voptname, VALUE vint)
static VALUE sockopt_int (VALUE self)
static VALUE sockopt_s_bool (VALUE klass, VALUE vfamily, VALUE vlevel, VALUE voptname, VALUE vbool)
static VALUE sockopt_bool (VALUE self)
static VALUE sockopt_s_linger (VALUE klass, VALUE vonoff, VALUE vsecs)
static VALUE sockopt_linger (VALUE self)
static int inspect_int (int level, int optname, VALUE data, VALUE ret)
static int inspect_errno (int level, int optname, VALUE data, VALUE ret)
static int inspect_timeval_as_interval (int level, int optname, VALUE data, VALUE ret)
static VALUE sockopt_inspect (VALUE self)
static VALUE sockopt_unpack (VALUE self, VALUE template)
void rsock_init_sockopt (void)

Variables

VALUE rb_cSockOpt


Function Documentation

static VALUE constant_to_sym ( int  constant,
ID(*)(int)  intern_const 
) [static]

Definition at line 6 of file option.c.

References ID2SYM, INT2NUM(), and name.

Referenced by optname_to_sym().

static int inspect_errno ( int  level,
int  optname,
VALUE  data,
VALUE  ret 
) [static]

Definition at line 312 of file option.c.

References err, rb_str_catf(), RSTRING_LEN, RSTRING_PTR, and strerror().

Referenced by sockopt_inspect().

static int inspect_int ( int  level,
int  optname,
VALUE  data,
VALUE  ret 
) [static]

Definition at line 298 of file option.c.

References rb_str_catf(), RSTRING_LEN, and RSTRING_PTR.

Referenced by sockopt_inspect().

static int inspect_timeval_as_interval ( int  level,
int  optname,
VALUE  data,
VALUE  ret 
) [static]

Definition at line 386 of file option.c.

References rb_str_catf(), RSTRING_LEN, and RSTRING_PTR.

Referenced by sockopt_inspect().

static VALUE optname_to_sym ( int  level,
int  optname 
) [static]

Definition at line 17 of file option.c.

References constant_to_sym(), INT2NUM(), IPPROTO_IP, IPPROTO_TCP, IPPROTO_UDP, rsock_intern_ip_optname(), rsock_intern_ipv6_optname(), rsock_intern_so_optname(), rsock_intern_tcp_optname(), and rsock_intern_udp_optname().

Referenced by sockopt_inspect().

void rsock_init_sockopt ( void   ) 

Definition at line 669 of file option.c.

References rb_cObject, rb_cSocket, rb_cSockOpt, rb_define_class_under(), rb_define_method(), rb_define_singleton_method(), sockopt_bool(), sockopt_data(), sockopt_family_m(), sockopt_initialize(), sockopt_inspect(), sockopt_int(), sockopt_level_m(), sockopt_linger(), sockopt_optname_m(), sockopt_s_bool(), sockopt_s_int(), sockopt_s_linger(), and sockopt_unpack().

Referenced by rsock_init_socket_init().

VALUE rsock_sockopt_new ( int  family,
int  level,
int  optname,
VALUE  data 
)

Definition at line 62 of file option.c.

References INT2NUM(), NEWOBJ, OBJSETUP, rb_cSockOpt, sockopt_initialize(), StringValue, and T_OBJECT.

Referenced by bsock_getsockopt(), sockopt_s_bool(), sockopt_s_int(), and sockopt_s_linger().

static VALUE sockopt_bool ( VALUE  self  )  [static]

Definition at line 224 of file option.c.

References Qfalse, Qtrue, rb_eTypeError, rb_raise(), RSTRING_LEN, RSTRING_PTR, sockopt_data(), and StringValue.

Referenced by rsock_init_sockopt().

static VALUE sockopt_data ( VALUE  self  )  [static]

Definition at line 138 of file option.c.

References rb_attr_get(), rb_intern, and StringValue.

Referenced by rsock_init_sockopt(), sockopt_bool(), sockopt_inspect(), sockopt_int(), sockopt_linger(), and sockopt_unpack().

static VALUE sockopt_family_m ( VALUE  self  )  [static]

Definition at line 81 of file option.c.

References rb_attr_get(), and rb_intern.

Referenced by rsock_init_sockopt(), and sockopt_inspect().

static VALUE sockopt_initialize ( VALUE  self,
VALUE  vfamily,
VALUE  vlevel,
VALUE  voptname,
VALUE  data 
) [static]

Definition at line 48 of file option.c.

References INT2NUM(), rb_intern, rb_ivar_set(), rsock_family_arg(), rsock_level_arg(), rsock_optname_arg(), and StringValue.

Referenced by rsock_init_sockopt(), and rsock_sockopt_new().

static VALUE sockopt_inspect ( VALUE  self  )  [static]

Definition at line 457 of file option.c.

References AF_UNSPEC, inspect_errno(), inspect_int(), inspect_timeval_as_interval(), IPPROTO_TCP, IS_IP_FAMILY, NUM2INT, optname_to_sym(), rb_id2name(), rb_obj_classname(), rb_sprintf(), rb_str_append(), rb_str_cat2(), rb_str_catf(), rb_str_dump(), rsock_intern_family_noprefix(), rsock_intern_iplevel(), rsock_intern_local_optname(), rsock_intern_so_optname(), sockopt_data(), sockopt_family_m(), sockopt_level_m(), sockopt_optname_m(), StringValue, SYM2ID, and SYMBOL_P.

Referenced by rsock_init_sockopt().

static VALUE sockopt_int ( VALUE  self  )  [static]

Definition at line 178 of file option.c.

References INT2NUM(), rb_eTypeError, rb_raise(), RSTRING_LEN, RSTRING_PTR, sockopt_data(), and StringValue.

Referenced by rsock_init_sockopt().

static int sockopt_level ( VALUE  self  )  [static]

Definition at line 87 of file option.c.

References NUM2INT, rb_attr_get(), and rb_intern.

Referenced by sockopt_level_m(), and sockopt_linger().

static VALUE sockopt_level_m ( VALUE  self  )  [static]

Definition at line 102 of file option.c.

References INT2NUM(), and sockopt_level().

Referenced by rsock_init_sockopt(), and sockopt_inspect().

static VALUE sockopt_linger ( VALUE  self  )  [static]

Definition at line 274 of file option.c.

References INT2NUM(), Qfalse, Qtrue, rb_assoc_new(), rb_eTypeError, rb_raise(), RSTRING_LEN, RSTRING_PTR, sockopt_data(), sockopt_level(), and sockopt_optname().

Referenced by rsock_init_sockopt().

static int sockopt_optname ( VALUE  self  )  [static]

Definition at line 108 of file option.c.

References NUM2INT, rb_attr_get(), and rb_intern.

Referenced by sockopt_linger(), and sockopt_optname_m().

static VALUE sockopt_optname_m ( VALUE  self  )  [static]

Definition at line 123 of file option.c.

References INT2NUM(), and sockopt_optname().

Referenced by rsock_init_sockopt(), and sockopt_inspect().

static VALUE sockopt_s_bool ( VALUE  klass,
VALUE  vfamily,
VALUE  vlevel,
VALUE  voptname,
VALUE  vbool 
) [static]

Definition at line 205 of file option.c.

References rb_str_new(), rsock_family_arg(), rsock_level_arg(), rsock_optname_arg(), rsock_sockopt_new(), and RTEST.

Referenced by rsock_init_sockopt().

static VALUE sockopt_s_int ( VALUE  klass,
VALUE  vfamily,
VALUE  vlevel,
VALUE  voptname,
VALUE  vint 
) [static]

Definition at line 157 of file option.c.

References NUM2INT, rb_str_new(), rsock_family_arg(), rsock_level_arg(), rsock_optname_arg(), and rsock_sockopt_new().

Referenced by rsock_init_sockopt().

static VALUE sockopt_s_linger ( VALUE  klass,
VALUE  vonoff,
VALUE  vsecs 
) [static]

Definition at line 251 of file option.c.

References AF_UNSPEC, NIL_P, NUM2INT, rb_check_to_integer(), rb_str_new(), rsock_sockopt_new(), and RTEST.

Referenced by rsock_init_sockopt().

static VALUE sockopt_unpack ( VALUE  self,
VALUE  template 
) [static]

Definition at line 656 of file option.c.

References rb_funcall(), rb_intern, and sockopt_data().

Referenced by rsock_init_sockopt().


Variable Documentation

VALUE rb_cSockOpt

Definition at line 3 of file option.c.

Referenced by rsock_init_sockopt(), and rsock_sockopt_new().


Generated on Wed Aug 10 09:18:23 2011 for Ruby by  doxygen 1.4.7