/*
 * Sets the default class for newly accepted sockets.  This is
 * legacy behavior, kgio_accept and kgio_tryaccept now take optional
 * class arguments to override this value.
 */
static VALUE set_accepted(VALUE klass, VALUE aclass)
{
        VALUE tmp;

        if (NIL_P(aclass))
                aclass = cKgio_Socket;

        tmp = rb_funcall(aclass, rb_intern("included_modules"), 0, 0);
        tmp = rb_funcall(tmp, rb_intern("include?"), 1, mSocketMethods);

        if (tmp != Qtrue)
                rb_raise(rb_eTypeError,
                         "class must include Kgio::SocketMethods");

        cClientSocket = aclass;

        return aclass;
}