mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
mrb_intern API change.
This commit is contained in:
+9
-9
@@ -75,17 +75,17 @@ mrb_addrinfo_getaddrinfo(mrb_state *mrb, mrb_value klass)
|
||||
hints.ai_socktype = mrb_fixnum(socktype);
|
||||
}
|
||||
|
||||
lastai = mrb_cv_get(mrb, klass, mrb_intern_cstr(mrb, "_lastai"));
|
||||
lastai = mrb_cv_get(mrb, klass, mrb_intern_lit(mrb, "_lastai"));
|
||||
if (mrb_voidp_p(lastai)) {
|
||||
freeaddrinfo(mrb_voidp(lastai));
|
||||
mrb_cv_set(mrb, klass, mrb_intern_cstr(mrb, "_lastai"), mrb_nil_value());
|
||||
mrb_cv_set(mrb, klass, mrb_intern_lit(mrb, "_lastai"), mrb_nil_value());
|
||||
}
|
||||
|
||||
error = getaddrinfo(hostname, servname, &hints, &res0);
|
||||
if (error) {
|
||||
mrb_raisef(mrb, E_SOCKET_ERROR, "getaddrinfo: %S", mrb_str_new_cstr(mrb, gai_strerror(error)));
|
||||
}
|
||||
mrb_cv_set(mrb, klass, mrb_intern_cstr(mrb, "_lastai"), mrb_voidp_value(mrb, res0));
|
||||
mrb_cv_set(mrb, klass, mrb_intern_lit(mrb, "_lastai"), mrb_voidp_value(mrb, res0));
|
||||
|
||||
for (res = res0; res != NULL; res = res->ai_next) {
|
||||
sa = mrb_str_new(mrb, (void *)res->ai_addr, res->ai_addrlen);
|
||||
@@ -95,7 +95,7 @@ mrb_addrinfo_getaddrinfo(mrb_state *mrb, mrb_value klass)
|
||||
}
|
||||
|
||||
freeaddrinfo(res0);
|
||||
mrb_cv_set(mrb, klass, mrb_intern_cstr(mrb, "_lastai"), mrb_nil_value());
|
||||
mrb_cv_set(mrb, klass, mrb_intern_lit(mrb, "_lastai"), mrb_nil_value());
|
||||
|
||||
return ary;
|
||||
}
|
||||
@@ -112,7 +112,7 @@ mrb_addrinfo_getnameinfo(mrb_state *mrb, mrb_value self)
|
||||
host = mrb_str_buf_new(mrb, NI_MAXHOST);
|
||||
serv = mrb_str_buf_new(mrb, NI_MAXSERV);
|
||||
|
||||
sastr = mrb_iv_get(mrb, self, mrb_intern(mrb, "@sockaddr"));
|
||||
sastr = mrb_iv_get(mrb, self, mrb_intern_lit(mrb, "@sockaddr"));
|
||||
if (!mrb_string_p(sastr)) {
|
||||
mrb_raise(mrb, E_SOCKET_ERROR, "invalid sockaddr");
|
||||
}
|
||||
@@ -133,7 +133,7 @@ mrb_addrinfo_unix_path(mrb_state *mrb, mrb_value self)
|
||||
{
|
||||
mrb_value sastr;
|
||||
|
||||
sastr = mrb_iv_get(mrb, self, mrb_intern(mrb, "@sockaddr"));
|
||||
sastr = mrb_iv_get(mrb, self, mrb_intern_lit(mrb, "@sockaddr"));
|
||||
if (((struct sockaddr *)RSTRING_PTR(sastr))->sa_family != AF_UNIX)
|
||||
mrb_raise(mrb, E_SOCKET_ERROR, "need AF_UNIX address");
|
||||
return mrb_str_new_cstr(mrb, ((struct sockaddr_un *)RSTRING_PTR(sastr))->sun_path);
|
||||
@@ -252,7 +252,7 @@ mrb_basicsocket_getsockopt(mrb_state *mrb, mrb_value self)
|
||||
optlen = sizeof(opt);
|
||||
if (getsockopt(s, level, optname, &opt, &optlen) == -1)
|
||||
mrb_sys_fail(mrb, "getsockopt");
|
||||
c = mrb_const_get(mrb, mrb_obj_value(mrb_class_get(mrb, "Socket")), mrb_intern(mrb, "Option"));
|
||||
c = mrb_const_get(mrb, mrb_obj_value(mrb_class_get(mrb, "Socket")), mrb_intern_lit(mrb, "Option"));
|
||||
family = socket_family(s);
|
||||
data = mrb_str_new(mrb, (char *)&opt, sizeof(int));
|
||||
return mrb_funcall(mrb, c, "new", 4, mrb_fixnum_value(family), mrb_fixnum_value(level), mrb_fixnum_value(optname), data);
|
||||
@@ -607,7 +607,7 @@ mrb_mruby_socket_gem_init(mrb_state* mrb)
|
||||
struct RClass *constants;
|
||||
|
||||
ai = mrb_define_class(mrb, "Addrinfo", mrb->object_class);
|
||||
mrb_mod_cv_set(mrb, ai, mrb_intern_cstr(mrb, "_lastai"), mrb_nil_value());
|
||||
mrb_mod_cv_set(mrb, ai, mrb_intern_lit(mrb, "_lastai"), mrb_nil_value());
|
||||
mrb_define_class_method(mrb, ai, "getaddrinfo", mrb_addrinfo_getaddrinfo, MRB_ARGS_REQ(2)|MRB_ARGS_OPT(4));
|
||||
mrb_define_method(mrb, ai, "getnameinfo", mrb_addrinfo_getnameinfo, MRB_ARGS_OPT(1));
|
||||
mrb_define_method(mrb, ai, "unix_path", mrb_addrinfo_unix_path, MRB_ARGS_NONE());
|
||||
@@ -680,7 +680,7 @@ void
|
||||
mrb_mruby_socket_gem_final(mrb_state* mrb)
|
||||
{
|
||||
mrb_value ai;
|
||||
ai = mrb_mod_cv_get(mrb, mrb_class_get(mrb, "Addrinfo"), mrb_intern_cstr(mrb, "_lastai"));
|
||||
ai = mrb_mod_cv_get(mrb, mrb_class_get(mrb, "Addrinfo"), mrb_intern_lit(mrb, "_lastai"));
|
||||
if (mrb_voidp_p(ai)) {
|
||||
freeaddrinfo(mrb_voidp(ai));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user